@semcore/radio 17.0.0-prerelease.31 → 17.0.0-prerelease.34
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 +5 -1
- package/lib/cjs/Radio.js +59 -59
- package/lib/cjs/Radio.js.map +1 -1
- package/lib/cjs/Radio.type.js +2 -0
- package/lib/cjs/Radio.type.js.map +1 -0
- package/lib/cjs/index.js +20 -4
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/style/radio.shadow.css +0 -10
- package/lib/es6/Radio.js +61 -61
- package/lib/es6/Radio.js.map +1 -1
- package/lib/es6/Radio.type.js +2 -0
- package/lib/es6/Radio.type.js.map +1 -0
- package/lib/es6/index.js +2 -2
- package/lib/es6/index.js.map +1 -1
- package/lib/es6/style/radio.shadow.css +0 -10
- package/lib/esm/Radio.mjs +61 -59
- package/lib/esm/index.mjs +0 -2
- package/lib/esm/style/radio.shadow.css +0 -10
- package/lib/types/Radio.d.ts +9 -0
- package/lib/types/Radio.type.d.ts +69 -0
- package/lib/types/index.d.ts +2 -98
- package/package.json +6 -6
- package/lib/cjs/index.d.js +0 -2
- package/lib/cjs/index.d.js.map +0 -1
- package/lib/es6/index.d.js +0 -2
- package/lib/es6/index.d.js.map +0 -1
package/lib/es6/Radio.js
CHANGED
|
@@ -6,8 +6,8 @@ import { assignProps as _assignProps3 } from "@semcore/core";
|
|
|
6
6
|
import { assignProps as _assignProps2 } from "@semcore/core";
|
|
7
7
|
import { assignProps as _assignProps } from "@semcore/core";
|
|
8
8
|
import { Flex, Box, InvalidStateBox } from '@semcore/base-components';
|
|
9
|
-
import { createComponent, Component,
|
|
10
|
-
import
|
|
9
|
+
import { createComponent, Component, sstyled, Root } from '@semcore/core';
|
|
10
|
+
import { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';
|
|
11
11
|
import resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';
|
|
12
12
|
import getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';
|
|
13
13
|
import logger from '@semcore/core/lib/utils/logger';
|
|
@@ -15,24 +15,25 @@ import { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';
|
|
|
15
15
|
import { Text as TypographyText } from '@semcore/typography';
|
|
16
16
|
import React from 'react';
|
|
17
17
|
/*!__reshadow-styles__:"./style/radio.shadow.css"*/
|
|
18
|
-
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".
|
|
18
|
+
const style = (/*__reshadow_css_start__*/_sstyled.insert(/*__inner_css_start__*/".___SRadio_1ifzo_gg_{display:inline-flex;align-items:flex-start;cursor:pointer}.___SRadio_1ifzo_gg_ .___SText_1ifzo_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);color:var(--intergalactic-text-primary, #191b23)}.___SRadio_1ifzo_gg_ .___SText_1ifzo_gg_.__color_1ifzo_gg_{color:var(--color_1ifzo)}.___SRadio_1ifzo_gg_.__disabled_1ifzo_gg_{pointer-events:none}.___SValue_1ifzo_gg_{position:relative;flex-shrink:0;padding:0;outline:0;z-index:0;margin-top:var(--intergalactic-spacing-05x, 2px)}.___SValue_1ifzo_gg_::after,.___SValue_1ifzo_gg_::before{content:\"\";position:absolute;right:0;bottom:0;border-radius:50%;background:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SValue_1ifzo_gg_::before{top:0;left:0;border:1px solid;transition:calc(var(--intergalactic-duration-control, 200)*1ms) all ease-in-out}.___SValue_1ifzo_gg_::after{top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0}.___SValue_1ifzo_gg_.__disabled_1ifzo_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.___SValue_1ifzo_gg_._size_m_1ifzo_gg_{width:16px;height:16px}.___SValue_1ifzo_gg_._size_m_1ifzo_gg_ .___SInvalidPattern_1ifzo_gg_:before{width:14px;height:14px}.___SValue_1ifzo_gg_._size_l_1ifzo_gg_{width:20px;height:20px}.___SValue_1ifzo_gg_._size_l_1ifzo_gg_ .___SInvalidPattern_1ifzo_gg_:before{width:18px;height:18px}.___SValue_1ifzo_gg_._state_normal_1ifzo_gg_::before{border-color:var(--intergalactic-border-primary, #c4c7cf)}.___SValue_1ifzo_gg_._state_invalid_1ifzo_gg_::before{border-color:var(--intergalactic-border-critical-active, #d1002f)}.___SControl_1ifzo_gg_{position:absolute;clip:rect(1px,1px,1px,1px)}.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_._size_m_1ifzo_gg_::after{width:6px;height:6px}.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_._size_l_1ifzo_gg_::after{width:8px;height:8px}.___SControl_1ifzo_gg_:focus-visible+.___SValue_1ifzo_gg_._state_normal_1ifzo_gg_::before{border-color:var(--intergalactic-border-info-active, #006dca);outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset}.___SControl_1ifzo_gg_:checked:focus-visible~.___SValue_1ifzo_gg_::before,.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_::before{border-color:var(--intergalactic-control-primary-info, #008ff8);background-color:var(--intergalactic-control-primary-info, #008ff8)}.___SControl_1ifzo_gg_:focus-visible+.___SValue_1ifzo_gg_._state_invalid_1ifzo_gg_::before{border-color:var(--intergalactic-border-critical-active, #d1002f);outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset;outline-color:var(--intergalactic-keyboard-focus-invalid-outline, #ff4953)}.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_.__theme_1ifzo_gg_::before{border-color:var(--theme_1ifzo);background-color:var(--theme_1ifzo)}.___SValue_1ifzo_gg_._state_normal_1ifzo_gg_.__theme_1ifzo_gg_::before{border-color:var(--theme_1ifzo)}.___SInvalidPattern_1ifzo_gg_{background:0 0;overflow:hidden}.___SInvalidPattern_1ifzo_gg_:before{content:\"\";position:absolute;top:1px;left:1px;border-radius:50%;background-image:var(--intergalactic-border-critical-pattern, repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%));background-size:6px 6px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}", /*__inner_css_end__*/"1ifzo_gg_"),
|
|
19
19
|
/*__reshadow_css_end__*/
|
|
20
20
|
{
|
|
21
|
-
"__SRadio": "
|
|
22
|
-
"_disabled": "
|
|
23
|
-
"
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"_color": "
|
|
33
|
-
"--color": "--
|
|
34
|
-
"__SInvalidPattern": "
|
|
21
|
+
"__SRadio": "___SRadio_1ifzo_gg_",
|
|
22
|
+
"_disabled": "__disabled_1ifzo_gg_",
|
|
23
|
+
"__SValue": "___SValue_1ifzo_gg_",
|
|
24
|
+
"_state_normal": "_state_normal_1ifzo_gg_",
|
|
25
|
+
"_state_invalid": "_state_invalid_1ifzo_gg_",
|
|
26
|
+
"__SControl": "___SControl_1ifzo_gg_",
|
|
27
|
+
"_size_m": "_size_m_1ifzo_gg_",
|
|
28
|
+
"_size_l": "_size_l_1ifzo_gg_",
|
|
29
|
+
"_theme": "__theme_1ifzo_gg_",
|
|
30
|
+
"--theme": "--theme_1ifzo",
|
|
31
|
+
"__SText": "___SText_1ifzo_gg_",
|
|
32
|
+
"_color": "__color_1ifzo_gg_",
|
|
33
|
+
"--color": "--color_1ifzo",
|
|
34
|
+
"__SInvalidPattern": "___SInvalidPattern_1ifzo_gg_"
|
|
35
35
|
});
|
|
36
|
+
const RadioContext = /*#__PURE__*/React.createContext({});
|
|
36
37
|
class RadioGroupRoot extends Component {
|
|
37
38
|
uncontrolledProps() {
|
|
38
39
|
return {
|
|
@@ -73,10 +74,13 @@ _defineProperty(RadioGroupRoot, "displayName", 'RadioGroup');
|
|
|
73
74
|
_defineProperty(RadioGroupRoot, "defaultProps", {
|
|
74
75
|
defaultValue: null
|
|
75
76
|
});
|
|
76
|
-
const RadioGroup = createComponent(RadioGroupRoot
|
|
77
|
+
const RadioGroup = createComponent(RadioGroupRoot, {}, {
|
|
78
|
+
context: RadioContext
|
|
79
|
+
});
|
|
77
80
|
class RadioRoot extends Component {
|
|
78
81
|
constructor(...args) {
|
|
79
82
|
super(...args);
|
|
83
|
+
_defineProperty(this, "context", {});
|
|
80
84
|
_defineProperty(this, "state", {
|
|
81
85
|
hoistedDisabled: undefined
|
|
82
86
|
});
|
|
@@ -88,17 +92,16 @@ class RadioRoot extends Component {
|
|
|
88
92
|
});
|
|
89
93
|
}
|
|
90
94
|
getTextProps() {
|
|
91
|
-
// The default values are here, since you cannot rewrite out of context
|
|
92
95
|
const {
|
|
93
|
-
size = 'm',
|
|
94
|
-
disabled,
|
|
96
|
+
size = this.context.size ?? 'm',
|
|
97
|
+
disabled = this.context.disabled,
|
|
95
98
|
label
|
|
96
|
-
} =
|
|
99
|
+
} = this.asProps;
|
|
97
100
|
const {
|
|
98
101
|
hoistedDisabled
|
|
99
102
|
} = this.state;
|
|
100
103
|
const textProps = {
|
|
101
|
-
size,
|
|
104
|
+
size: size === 'm' ? 200 : 300,
|
|
102
105
|
children: label,
|
|
103
106
|
disabled: disabled ?? hoistedDisabled,
|
|
104
107
|
hoistDisabled: this.hoistDisabled,
|
|
@@ -107,14 +110,13 @@ class RadioRoot extends Component {
|
|
|
107
110
|
return textProps;
|
|
108
111
|
}
|
|
109
112
|
getValueProps() {
|
|
110
|
-
// The default values are here, since you cannot rewrite out of context
|
|
111
113
|
const {
|
|
112
|
-
size = 'm',
|
|
113
114
|
state = 'normal',
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
115
|
+
size = this.context.size ?? 'm',
|
|
116
|
+
theme = this.context.theme,
|
|
117
|
+
disabled = this.context.disabled,
|
|
118
|
+
name = this.context.name
|
|
119
|
+
} = this.asProps;
|
|
118
120
|
const {
|
|
119
121
|
value,
|
|
120
122
|
checked
|
|
@@ -153,12 +155,13 @@ class RadioRoot extends Component {
|
|
|
153
155
|
}
|
|
154
156
|
_defineProperty(RadioRoot, "displayName", 'Radio');
|
|
155
157
|
_defineProperty(RadioRoot, "style", style);
|
|
156
|
-
_defineProperty(RadioRoot, "contextType",
|
|
158
|
+
_defineProperty(RadioRoot, "contextType", RadioContext);
|
|
157
159
|
class ValueRoot extends Component {
|
|
158
160
|
constructor(...args) {
|
|
159
161
|
super(...args);
|
|
162
|
+
_defineProperty(this, "context", {});
|
|
160
163
|
_defineProperty(this, "bindHandlerChange", value => e => {
|
|
161
|
-
if (typeof this.context.onChange === 'function') {
|
|
164
|
+
if (typeof this.context.onChange === 'function' && value !== undefined) {
|
|
162
165
|
this.context.onChange(value, e);
|
|
163
166
|
}
|
|
164
167
|
});
|
|
@@ -169,32 +172,35 @@ class ValueRoot extends Component {
|
|
|
169
172
|
};
|
|
170
173
|
}
|
|
171
174
|
getControlProps() {
|
|
172
|
-
const
|
|
175
|
+
const {
|
|
176
|
+
value: currentValue
|
|
177
|
+
} = this.context;
|
|
173
178
|
const {
|
|
174
179
|
forwardRef,
|
|
175
180
|
includeInputProps,
|
|
176
181
|
state,
|
|
177
182
|
value
|
|
178
183
|
} = this.asProps;
|
|
184
|
+
const {
|
|
185
|
+
onChange
|
|
186
|
+
} = this.props;
|
|
179
187
|
const [commonControlProps] = getInputProps(this.asProps, includeInputProps);
|
|
180
188
|
const inputValue = value ?? '';
|
|
181
|
-
|
|
189
|
+
return {
|
|
182
190
|
ref: forwardRef,
|
|
183
191
|
state,
|
|
184
192
|
...commonControlProps,
|
|
185
|
-
value: inputValue
|
|
193
|
+
value: inputValue,
|
|
194
|
+
...(currentValue !== undefined ? {
|
|
195
|
+
checked: currentValue === inputValue,
|
|
196
|
+
onChange: callAllEventHandlers(onChange, this.bindHandlerChange(inputValue))
|
|
197
|
+
} : {})
|
|
186
198
|
};
|
|
187
|
-
if (currentValue !== undefined) {
|
|
188
|
-
const {
|
|
189
|
-
onChange
|
|
190
|
-
} = this.props;
|
|
191
|
-
controlProps.checked = currentValue === inputValue;
|
|
192
|
-
controlProps.onChange = callAllEventHandlers(onChange, this.bindHandlerChange(inputValue));
|
|
193
|
-
}
|
|
194
|
-
return controlProps;
|
|
195
199
|
}
|
|
196
200
|
getRadioMarkProps() {
|
|
197
|
-
const
|
|
201
|
+
const {
|
|
202
|
+
value: currentValue
|
|
203
|
+
} = this.context;
|
|
198
204
|
const {
|
|
199
205
|
size,
|
|
200
206
|
state,
|
|
@@ -205,16 +211,16 @@ class ValueRoot extends Component {
|
|
|
205
211
|
disabled,
|
|
206
212
|
includeInputProps,
|
|
207
213
|
resolveColor,
|
|
214
|
+
children,
|
|
215
|
+
Children,
|
|
208
216
|
...other
|
|
209
217
|
} = this.asProps;
|
|
210
|
-
const [commonControlProps, radioMarkProps] = getInputProps(other, includeInputProps);
|
|
211
218
|
const {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
} = radioMarkProps;
|
|
219
|
+
onClick
|
|
220
|
+
} = this.props;
|
|
221
|
+
const [commonControlProps, radioMarkProps] = getInputProps(other, includeInputProps);
|
|
216
222
|
const inputValue = value ?? '';
|
|
217
|
-
|
|
223
|
+
return {
|
|
218
224
|
theme,
|
|
219
225
|
size,
|
|
220
226
|
state,
|
|
@@ -222,17 +228,11 @@ class ValueRoot extends Component {
|
|
|
222
228
|
disabled,
|
|
223
229
|
resolveColor,
|
|
224
230
|
checked: commonControlProps.checked,
|
|
225
|
-
...
|
|
231
|
+
...radioMarkProps,
|
|
232
|
+
...(currentValue !== undefined && tag !== 'label' ? {
|
|
233
|
+
onClick: callAllEventHandlers(onClick, this.bindHandlerChange(inputValue))
|
|
234
|
+
} : {})
|
|
226
235
|
};
|
|
227
|
-
if (currentValue !== undefined) {
|
|
228
|
-
const {
|
|
229
|
-
onClick
|
|
230
|
-
} = this.props;
|
|
231
|
-
if (tag !== 'label') {
|
|
232
|
-
markProps.onClick = callAllEventHandlers(onClick, this.bindHandlerChange(inputValue));
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
return markProps;
|
|
236
236
|
}
|
|
237
237
|
componentDidUpdate() {
|
|
238
238
|
if (this.asProps.rootDisabled !== this.asProps.disabled) {
|
|
@@ -264,7 +264,7 @@ _defineProperty(ValueRoot, "defaultProps", {
|
|
|
264
264
|
});
|
|
265
265
|
_defineProperty(ValueRoot, "enhance", [resolveColorEnhance()]);
|
|
266
266
|
_defineProperty(ValueRoot, "displayName", 'Value');
|
|
267
|
-
_defineProperty(ValueRoot, "contextType",
|
|
267
|
+
_defineProperty(ValueRoot, "contextType", RadioContext);
|
|
268
268
|
_defineProperty(ValueRoot, "style", style);
|
|
269
269
|
function Control(props) {
|
|
270
270
|
var _ref3 = arguments[0],
|
|
@@ -327,7 +327,6 @@ function Text(props) {
|
|
|
327
327
|
}));
|
|
328
328
|
}
|
|
329
329
|
Text.displayName = 'Text';
|
|
330
|
-
export { inputProps, RadioGroup };
|
|
331
330
|
const Value = createComponent(ValueRoot, {
|
|
332
331
|
Control,
|
|
333
332
|
RadioMark
|
|
@@ -337,5 +336,6 @@ const Radio = createComponent(RadioRoot, {
|
|
|
337
336
|
Value
|
|
338
337
|
});
|
|
339
338
|
export const wrapRadioGroup = wrapper => wrapper;
|
|
339
|
+
export { inputProps, RadioGroup };
|
|
340
340
|
export default Radio;
|
|
341
341
|
//# sourceMappingURL=Radio.js.map
|
package/lib/es6/Radio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Radio.js","names":["Flex","Box","InvalidStateBox","createComponent","Component","CONTEXT_COMPONENT","sstyled","Root","assignProps","callAllEventHandlers","resolveColorEnhance","getInputProps","inputProps","logger","useColorResolver","Text","TypographyText","React","style","_sstyled","insert","RadioGroupRoot","uncontrolledProps","value","setContext","theme","size","name","onChange","disabled","asProps","render","_ref","Children","createElement","_assignProps","_defineProperty","defaultValue","RadioGroup","RadioRoot","constructor","args","hoistedDisabled","undefined","warn","setState","getTextProps","label","context","state","textProps","children","hoistDisabled","rootDisabled","props","getValueProps","checked","_ref2","_ref6","SRadio","styles","hasChildren","cn","_assignProps2","Fragment","Radio","Value","ValueRoot","e","target","getControlProps","currentValue","forwardRef","includeInputProps","commonControlProps","inputValue","controlProps","ref","bindHandlerChange","getRadioMarkProps","keyboardFocused","tag","resolveColor","other","radioMarkProps","_children","_Children","propsWithoutChildren","markProps","onClick","componentDidUpdate","componentDidMount","_ref8","_ref7","Control","RadioMark","defaultChecked","_ref3","arguments[0]","_ref9","SControl","_assignProps3","displayName","_ref4","_ref0","SValue","SInvalidPattern","_assignProps4","_ref5","_ref1","SText","color","useEffect","_assignProps5","wrapRadioGroup","wrapper"],"sources":["../../src/Radio.jsx"],"sourcesContent":["import { Flex, Box, InvalidStateBox } from '@semcore/base-components';\nimport { createComponent, Component, CONTEXT_COMPONENT, sstyled, Root } from '@semcore/core';\nimport assignProps, { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';\nimport logger from '@semcore/core/lib/utils/logger';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\nimport { Text as TypographyText } from '@semcore/typography';\nimport React from 'react';\n\nimport style from './style/radio.shadow.css';\n\nclass RadioGroupRoot extends Component {\n static displayName = 'RadioGroup';\n\n static defaultProps = {\n defaultValue: null,\n };\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n setContext() {\n const { theme, size, name, value, onChange, disabled } = this.asProps;\n\n return {\n onChange,\n value,\n theme,\n size,\n name,\n disabled,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n\n return (\n <Root render={Flex} direction='column' role='group' __excludeProps={['onChange']}>\n <Children />\n </Root>\n );\n }\n}\n\nconst RadioGroup = createComponent(RadioGroupRoot);\n\nclass RadioRoot extends Component {\n static displayName = 'Radio';\n static style = style;\n static contextType = RadioGroup[CONTEXT_COMPONENT];\n\n state = {\n hoistedDisabled: undefined,\n };\n\n hoistDisabled = (disabled) => {\n logger.warn(\n true,\n `Don't set disabled on Radio.Value or Radio.Text, set it on Radio or on RadioGroup (for all items) instead. Otherwise it will produce wrong SSR output.`,\n this.asProps['data-ui-name'],\n );\n this.setState({ hoistedDisabled: disabled });\n };\n\n getTextProps() {\n // The default values are here, since you cannot rewrite out of context\n const { size = 'm', disabled, label } = assignProps(this.asProps, this.context);\n const { hoistedDisabled } = this.state;\n\n const textProps = {\n size,\n children: label,\n disabled: disabled ?? hoistedDisabled,\n hoistDisabled: this.hoistDisabled,\n rootDisabled: this.props.disabled,\n };\n\n return textProps;\n }\n\n getValueProps() {\n // The default values are here, since you cannot rewrite out of context\n const {\n size = 'm',\n state = 'normal',\n theme,\n disabled,\n name,\n } = assignProps(this.asProps, this.context);\n const { value, checked } = this.asProps;\n const { hoistedDisabled } = this.state;\n\n return {\n size: this.props.size ?? size,\n disabled: disabled ?? hoistedDisabled,\n state: state,\n theme,\n value,\n checked,\n name,\n hoistDisabled: this.hoistDisabled,\n rootDisabled: this.props.disabled,\n };\n }\n\n render() {\n const SRadio = Root;\n const { styles, Children, children: hasChildren } = this.asProps;\n\n return sstyled(styles)(\n <SRadio render={Box} tag='label' __excludeProps={['onChange', 'label', 'disabled']}>\n {hasChildren\n ? (\n <Children />\n )\n : (\n <>\n <Radio.Value />\n <Radio.Text />\n </>\n )}\n </SRadio>,\n );\n }\n}\n\nclass ValueRoot extends Component {\n static defaultProps = {\n includeInputProps: inputProps,\n defaultChecked: false,\n };\n\n static enhance = [resolveColorEnhance()];\n static displayName = 'Value';\n static contextType = RadioGroup[CONTEXT_COMPONENT];\n static style = style;\n\n bindHandlerChange = (value) => (e) => {\n if (typeof this.context.onChange === 'function') {\n this.context.onChange(value, e);\n }\n };\n\n uncontrolledProps() {\n return {\n checked: (e) => e.target.checked,\n };\n }\n\n getControlProps() {\n const currentValue = this.context.value;\n const { forwardRef, includeInputProps, state, value } = this.asProps;\n const [commonControlProps] = getInputProps(this.asProps, includeInputProps);\n const inputValue = value ?? '';\n\n const controlProps = {\n ref: forwardRef,\n state,\n ...commonControlProps,\n value: inputValue,\n };\n\n if (currentValue !== undefined) {\n const { onChange } = this.props;\n\n controlProps.checked = currentValue === inputValue;\n controlProps.onChange = callAllEventHandlers(onChange, this.bindHandlerChange(inputValue));\n }\n\n return controlProps;\n }\n\n getRadioMarkProps() {\n const currentValue = this.context.value;\n const {\n size,\n state,\n theme,\n keyboardFocused,\n value,\n tag,\n disabled,\n includeInputProps,\n resolveColor,\n ...other\n } = this.asProps;\n const [commonControlProps, radioMarkProps] = getInputProps(other, includeInputProps);\n const { children: _children, Children: _Children, ...propsWithoutChildren } = radioMarkProps;\n const inputValue = value ?? '';\n\n const markProps = {\n theme,\n size,\n state,\n keyboardFocused,\n disabled,\n resolveColor,\n checked: commonControlProps.checked,\n ...propsWithoutChildren,\n };\n\n if (currentValue !== undefined) {\n const { onClick } = this.props;\n\n if (tag !== 'label') {\n markProps.onClick = callAllEventHandlers(onClick, this.bindHandlerChange(inputValue));\n }\n }\n\n return markProps;\n }\n\n componentDidUpdate() {\n if (this.asProps.rootDisabled !== this.asProps.disabled) {\n this.asProps.hoistDisabled(this.asProps.disabled);\n }\n }\n\n componentDidMount() {\n if (this.asProps.rootDisabled !== this.asProps.disabled) {\n this.asProps.hoistDisabled(this.asProps.disabled);\n }\n }\n\n render() {\n const { styles, children: hasChildren, Children } = this.asProps;\n\n if (!hasChildren) {\n return sstyled(styles)(\n <>\n <Radio.Value.Control />\n <Radio.Value.RadioMark />\n </>,\n );\n }\n\n return sstyled(styles)(<Children />);\n }\n}\n\nfunction Control(props) {\n const SControl = Root;\n const { styles, state } = props;\n\n return sstyled(styles)(\n <SControl render={Box} tag='input' type='radio' aria-invalid={state === 'invalid'} />,\n );\n};\nControl.displayName = 'Control';\n\nfunction RadioMark(props) {\n const SValue = Root;\n const SInvalidPattern = InvalidStateBox;\n const { theme, styles, resolveColor, state, checked } = props;\n\n return sstyled(styles)(\n <SValue render={Box} tag='div' use:theme={resolveColor(theme)} aria-hidden={true}>\n {state === 'invalid' && !checked && <SInvalidPattern />}\n </SValue>,\n );\n}\nRadioMark.displayName = 'RadioMark';\n\nfunction Text(props) {\n const SText = Root;\n const { styles, color } = props;\n\n React.useEffect(() => {\n if (props.rootDisabled !== props.disabled) {\n props.hoistDisabled(props.disabled);\n }\n }, [props.rootDisabled, props.disabled, props.hoistDisabled]);\n const resolveColor = useColorResolver();\n\n return sstyled(styles)(\n <SText render={TypographyText} tag='span' use:color={resolveColor(color)} />,\n );\n}\nText.displayName = 'Text';\n\nexport { inputProps, RadioGroup };\n\nconst Value = createComponent(ValueRoot, {\n Control,\n RadioMark,\n});\n\nconst Radio = createComponent(RadioRoot, {\n Text,\n Value,\n});\n\nexport const wrapRadioGroup = (wrapper) => wrapper;\n\nexport default Radio;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"Radio.js","names":["Flex","Box","InvalidStateBox","createComponent","Component","sstyled","Root","callAllEventHandlers","resolveColorEnhance","getInputProps","inputProps","logger","useColorResolver","Text","TypographyText","React","style","_sstyled","insert","RadioContext","createContext","RadioGroupRoot","uncontrolledProps","value","setContext","theme","size","name","onChange","disabled","asProps","render","_ref","Children","createElement","_assignProps","_defineProperty","defaultValue","RadioGroup","context","RadioRoot","constructor","args","hoistedDisabled","undefined","warn","setState","getTextProps","label","state","textProps","children","hoistDisabled","rootDisabled","props","getValueProps","checked","_ref2","_ref6","SRadio","styles","hasChildren","cn","_assignProps2","Fragment","Radio","Value","ValueRoot","e","target","getControlProps","currentValue","forwardRef","includeInputProps","commonControlProps","inputValue","ref","bindHandlerChange","getRadioMarkProps","keyboardFocused","tag","resolveColor","other","onClick","radioMarkProps","componentDidUpdate","componentDidMount","_ref8","_ref7","Control","RadioMark","defaultChecked","_ref3","arguments[0]","_ref9","SControl","_assignProps3","displayName","_ref4","_ref0","SValue","SInvalidPattern","_assignProps4","_ref5","_ref1","SText","color","useEffect","_assignProps5","wrapRadioGroup","wrapper"],"sources":["../../src/Radio.tsx"],"sourcesContent":["import { Flex, Box, InvalidStateBox } from '@semcore/base-components';\nimport type { Intergalactic } from '@semcore/core';\nimport { createComponent, Component, sstyled, Root } from '@semcore/core';\nimport { callAllEventHandlers } from '@semcore/core/lib/utils/assignProps';\nimport resolveColorEnhance from '@semcore/core/lib/utils/enhances/resolveColorEnhance';\nimport getInputProps, { inputProps } from '@semcore/core/lib/utils/inputProps';\nimport logger from '@semcore/core/lib/utils/logger';\nimport { useColorResolver } from '@semcore/core/lib/utils/use/useColorResolver';\nimport { Text as TypographyText } from '@semcore/typography';\nimport React from 'react';\n\nimport type {\n IntergalacticRadioGroupComponent,\n RadioProps,\n RadioComponent,\n RadioGroupProps,\n RadioValueComponent,\n RadioTextComponent,\n RadioValueRadioMarkComponent,\n RadioRootComponent,\n RadioValueControlComponent,\n} from './Radio.type';\nimport style from './style/radio.shadow.css';\n\nconst RadioContext = React.createContext<{\n onChange?: RadioGroupProps['onChange'];\n value?: RadioGroupProps['value'];\n theme?: RadioGroupProps['theme'];\n size?: RadioGroupProps['size'];\n name?: RadioGroupProps['name'];\n disabled?: RadioGroupProps['disabled'];\n}>({});\n\nclass RadioGroupRoot extends Component<Intergalactic.InternalTypings.InferComponentProps<IntergalacticRadioGroupComponent>, [], { value: null }> {\n static displayName = 'RadioGroup';\n\n static defaultProps = {\n defaultValue: null,\n };\n\n uncontrolledProps() {\n return {\n value: null,\n };\n }\n\n setContext() {\n const { theme, size, name, value, onChange, disabled } = this.asProps;\n\n return {\n onChange,\n value,\n theme,\n size,\n name,\n disabled,\n };\n }\n\n render() {\n const { Children } = this.asProps;\n\n return (\n <Root render={Flex} direction='column' role='group' __excludeProps={['onChange']}>\n <Children />\n </Root>\n );\n }\n}\n\nconst RadioGroup = createComponent(RadioGroupRoot, {}, { context: RadioContext }) as unknown as IntergalacticRadioGroupComponent;\n\nclass RadioRoot extends Component<\n Intergalactic.InternalTypings.InferComponentProps<RadioRootComponent>\n> {\n static displayName = 'Radio';\n static style = style;\n static contextType = RadioContext;\n\n context: React.ContextType<typeof RadioContext> = {};\n\n state = {\n hoistedDisabled: undefined,\n };\n\n hoistDisabled = (disabled: RadioProps['disabled']) => {\n logger.warn(\n true,\n `Don't set disabled on Radio.Value or Radio.Text, set it on Radio or on RadioGroup (for all items) instead. Otherwise it will produce wrong SSR output.`,\n this.asProps['data-ui-name'],\n );\n this.setState({ hoistedDisabled: disabled });\n };\n\n getTextProps() {\n const {\n size = this.context.size ?? 'm',\n disabled = this.context.disabled,\n label,\n } = this.asProps;\n\n const { hoistedDisabled } = this.state;\n\n const textProps = {\n size: size === 'm' ? 200 : 300,\n children: label,\n disabled: disabled ?? hoistedDisabled,\n hoistDisabled: this.hoistDisabled,\n rootDisabled: this.props.disabled,\n };\n\n return textProps;\n }\n\n getValueProps() {\n const {\n state = 'normal',\n size = this.context.size ?? 'm',\n theme = this.context.theme,\n disabled = this.context.disabled,\n name = this.context.name,\n } = this.asProps;\n\n const { value, checked } = this.asProps;\n const { hoistedDisabled } = this.state;\n\n return {\n size: this.props.size ?? size,\n disabled: disabled ?? hoistedDisabled,\n state: state,\n theme,\n value,\n checked,\n name,\n hoistDisabled: this.hoistDisabled,\n rootDisabled: this.props.disabled,\n };\n }\n\n render() {\n const SRadio = Root;\n const { styles, Children, children: hasChildren } = this.asProps;\n\n return sstyled(styles)(\n <SRadio render={Box} tag='label' __excludeProps={['onChange', 'label', 'disabled']}>\n {hasChildren\n ? (\n <Children />\n )\n : (\n <>\n <Radio.Value />\n <Radio.Text />\n </>\n )}\n </SRadio>,\n );\n }\n}\n\nclass ValueRoot extends Component<\n Intergalactic.InternalTypings.InferChildComponentProps<RadioValueComponent, typeof RadioRoot, 'Value'>,\n typeof ValueRoot.enhance,\n { checked: (e: React.ChangeEvent<HTMLInputElement>) => boolean }\n> {\n context: React.ContextType<typeof RadioContext> = {};\n\n static defaultProps = {\n includeInputProps: inputProps,\n defaultChecked: false,\n };\n\n static enhance = [resolveColorEnhance()] as const;\n static displayName = 'Value';\n static contextType = RadioContext;\n static style = style;\n\n bindHandlerChange = (value: RadioProps['value']) => (e: React.ChangeEvent<HTMLInputElement>) => {\n if (typeof this.context.onChange === 'function' && value !== undefined) {\n this.context.onChange(value, e);\n }\n };\n\n uncontrolledProps() {\n return {\n checked: (e: React.ChangeEvent<HTMLInputElement>) => e.target.checked,\n };\n }\n\n getControlProps() {\n const { value: currentValue } = this.context;\n const { forwardRef, includeInputProps, state, value } = this.asProps;\n const { onChange } = this.props;\n\n const [commonControlProps] = getInputProps(this.asProps, includeInputProps);\n const inputValue = value ?? '';\n\n return {\n ref: forwardRef,\n state,\n ...commonControlProps,\n value: inputValue,\n ...(currentValue !== undefined\n ? {\n checked: currentValue === inputValue,\n onChange: callAllEventHandlers(onChange, this.bindHandlerChange(inputValue)),\n }\n : {}\n ),\n };\n }\n\n getRadioMarkProps() {\n const { value: currentValue } = this.context;\n const {\n size,\n state,\n theme,\n keyboardFocused,\n value,\n tag,\n disabled,\n includeInputProps,\n resolveColor,\n children,\n Children,\n ...other\n } = this.asProps;\n const { onClick } = this.props;\n const [commonControlProps, radioMarkProps] = getInputProps(other, includeInputProps);\n const inputValue = value ?? '';\n\n return {\n theme,\n size,\n state,\n keyboardFocused,\n disabled,\n resolveColor,\n checked: commonControlProps.checked,\n ...radioMarkProps,\n ...(currentValue !== undefined && tag !== 'label'\n ? {\n onClick: callAllEventHandlers(onClick, this.bindHandlerChange(inputValue)),\n }\n : {}\n\n ),\n };\n }\n\n componentDidUpdate() {\n if (this.asProps.rootDisabled !== this.asProps.disabled) {\n this.asProps.hoistDisabled(this.asProps.disabled);\n }\n }\n\n componentDidMount() {\n if (this.asProps.rootDisabled !== this.asProps.disabled) {\n this.asProps.hoistDisabled(this.asProps.disabled);\n }\n }\n\n render() {\n const { styles, children: hasChildren, Children } = this.asProps;\n\n if (!hasChildren) {\n return sstyled(styles)(\n <>\n <Radio.Value.Control />\n <Radio.Value.RadioMark />\n </>,\n );\n }\n\n return sstyled(styles)(<Children />);\n }\n}\n\nfunction Control(props: Intergalactic.InternalTypings.InferChildComponentProps<RadioValueControlComponent, typeof ValueRoot, 'Control'>) {\n const SControl = Root;\n const { styles, state } = props;\n\n return sstyled(styles)(\n <SControl render={Box} tag='input' type='radio' aria-invalid={state === 'invalid'} />,\n );\n};\nControl.displayName = 'Control';\n\nfunction RadioMark(props: Intergalactic.InternalTypings.InferChildComponentProps<RadioValueRadioMarkComponent, typeof ValueRoot, 'RadioMark'>) {\n const SValue = Root;\n const SInvalidPattern = InvalidStateBox;\n const { theme, styles, resolveColor, state, checked } = props;\n\n return sstyled(styles)(\n <SValue render={Box} tag='div' use:theme={resolveColor(theme)} aria-hidden={true}>\n {state === 'invalid' && !checked && <SInvalidPattern />}\n </SValue>,\n );\n}\nRadioMark.displayName = 'RadioMark';\n\nfunction Text(props: Intergalactic.InternalTypings.InferChildComponentProps<RadioTextComponent, typeof RadioRoot, 'Text'>) {\n const SText = Root;\n const { styles, color } = props;\n\n React.useEffect(() => {\n if (props.rootDisabled !== props.disabled) {\n props.hoistDisabled(props.disabled);\n }\n }, [props.rootDisabled, props.disabled, props.hoistDisabled]);\n const resolveColor = useColorResolver();\n\n return sstyled(styles)(\n <SText render={TypographyText} tag='span' use:color={resolveColor(color)} />,\n );\n}\nText.displayName = 'Text';\n\nconst Value = createComponent(ValueRoot, {\n Control,\n RadioMark,\n}) as RadioValueComponent;\n\nconst Radio = createComponent(RadioRoot, {\n Text,\n Value,\n}) as RadioComponent;\n\nexport const wrapRadioGroup = <PropsExtending extends {}>(wrapper: (\n props: Intergalactic.InternalTypings.UntypeRefAndTag<\n Intergalactic.InternalTypings.ComponentPropsNesting<IntergalacticRadioGroupComponent>\n > &\n PropsExtending,\n) => React.ReactNode) => wrapper as IntergalacticRadioGroupComponent<PropsExtending>;\n\nexport { inputProps, RadioGroup };\n\nexport default Radio;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Radio.type.js","names":[],"sources":["../../src/Radio.type.ts"],"sourcesContent":["import type { Box, BoxProps, Flex } from '@semcore/base-components';\nimport type { PropGetterFn, Intergalactic } from '@semcore/core';\nimport type { Text, TextProps } from '@semcore/typography';\nimport type React from 'react';\n\nexport type RadioSize = 'm' | 'l';\nexport type RadioState = 'normal' | 'invalid';\nexport type RadioValue = string | number | boolean;\n\nexport type RadioProps = BoxProps & {\n /** Radio item value **/\n value?: RadioValue;\n\n /** Radio item checked flag **/\n checked?: boolean;\n\n /**\n * The value displaying the state of the component\n * @default normal\n */\n state?: RadioState;\n /**\n * Radio button size\n * @default m\n **/\n size?: RadioSize;\n /** The theme of the radio button that you can send your color to */\n theme?: string;\n /** Radio item text **/\n label?: string;\n /** Blocks access and changes to the radio item **/\n disabled?: boolean;\n};\n\nexport type RadioGroupProps<T extends RadioValue = RadioValue> = {\n /** Radio group name */\n name?: string;\n /** Active default value */\n defaultValue?: T;\n /** Active value */\n value?: T;\n /** Called when the selected element is changed */\n onChange?:\n | ((value: T, e?: React.SyntheticEvent<HTMLInputElement>) => void)\n | React.Dispatch<React.SetStateAction<T>>;\n /** Radio button size */\n size?: RadioSize;\n /** The theme of the radio button that you can send your color to */\n theme?: string;\n /** Blocks access and changes to the form field */\n disabled?: boolean;\n};\n\nexport type RadioValueProps = BoxProps & {\n /** List of elements that can be put on a hidden input */\n includeInputProps?: string[];\n};\n\nexport type RadioCtx = {\n getValueProps: PropGetterFn;\n getTextProps: PropGetterFn;\n};\n\nexport type IntergalacticRadioGroupComponent<PropsExtending = {}> = (<\n Value extends RadioValue,\n Tag extends Intergalactic.Tag = typeof Flex,\n>(\n props: Intergalactic.InternalTypings.ComponentProps<Tag, typeof Flex, RadioGroupProps<Value>> &\n PropsExtending,\n) => Intergalactic.InternalTypings.ComponentRenderingResults) &\nIntergalactic.InternalTypings.ComponentAdditive<'div', typeof Flex, RadioGroupProps>;\n\nexport type RadioValueControlProps = {};\nexport type RadioValueMarkProps = {};\nexport type RadioTextProps = TextProps;\n\nexport type RadioValueControlComponent = Intergalactic.Component<'input', RadioValueControlProps>;\nexport type RadioValueRadioMarkComponent = Intergalactic.Component<typeof Box, RadioValueMarkProps>;\n\nexport type RadioValueComponent = Intergalactic.Component<'input', RadioValueProps> & {\n Control: RadioValueControlComponent;\n RadioMark: RadioValueRadioMarkComponent;\n};\n\nexport type RadioTextComponent = typeof Text;\n\nexport type RadioRootComponent = Intergalactic.Component<'label', RadioProps, RadioCtx>;\nexport type RadioComponent = RadioRootComponent & {\n Value: RadioValueComponent;\n Text: RadioTextComponent;\n};\n"],"mappings":"","ignoreList":[]}
|
package/lib/es6/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { default } from './Radio';
|
|
2
|
-
export * from './Radio';
|
|
1
|
+
export { default, wrapRadioGroup, RadioGroup } from './Radio';
|
|
2
|
+
export * from './Radio.type';
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/lib/es6/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["default"],"sources":["../../src/index.
|
|
1
|
+
{"version":3,"file":"index.js","names":["default","wrapRadioGroup","RadioGroup"],"sources":["../../src/index.ts"],"sourcesContent":["export { default, wrapRadioGroup, RadioGroup } from './Radio';\nexport * from './Radio.type';\n"],"mappings":"AAAA,SAASA,OAAO,EAAEC,cAAc,EAAEC,UAAU,QAAQ,SAAS;AAC7D,cAAc,cAAc","ignoreList":[]}
|
|
@@ -17,16 +17,6 @@ SRadio[disabled] {
|
|
|
17
17
|
pointer-events: none;
|
|
18
18
|
}
|
|
19
19
|
|
|
20
|
-
SText[size='m'] {
|
|
21
|
-
font-size: var(--intergalactic-fs-200, 14px);
|
|
22
|
-
line-height: var(--intergalactic-lh-200, 142%);
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
SText[size='l'] {
|
|
26
|
-
font-size: var(--intergalactic-fs-300, 16px);
|
|
27
|
-
line-height: var(--intergalactic-lh-300, 150%);
|
|
28
|
-
}
|
|
29
|
-
|
|
30
20
|
SValue {
|
|
31
21
|
position: relative;
|
|
32
22
|
flex-shrink: 0;
|
package/lib/esm/Radio.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
|
|
2
|
-
import { sstyled, createComponent,
|
|
2
|
+
import { sstyled, createComponent, Component, assignProps } from "@semcore/core";
|
|
3
3
|
import { Flex, Box, InvalidStateBox } from "@semcore/base-components";
|
|
4
|
-
import
|
|
4
|
+
import { callAllEventHandlers } from "@semcore/core/lib/utils/assignProps";
|
|
5
5
|
import resolveColorEnhance from "@semcore/core/lib/utils/enhances/resolveColorEnhance";
|
|
6
6
|
import getInputProps, { inputProps } from "@semcore/core/lib/utils/inputProps";
|
|
7
7
|
import { inputProps as inputProps2 } from "@semcore/core/lib/utils/inputProps";
|
|
@@ -14,27 +14,28 @@ const style = (
|
|
|
14
14
|
/*__reshadow_css_start__*/
|
|
15
15
|
(sstyled.insert(
|
|
16
16
|
/*__inner_css_start__*/
|
|
17
|
-
'.
|
|
17
|
+
'.___SRadio_1ifzo_gg_{display:inline-flex;align-items:flex-start;cursor:pointer}.___SRadio_1ifzo_gg_ .___SText_1ifzo_gg_{margin-left:var(--intergalactic-spacing-2x, 8px);color:var(--intergalactic-text-primary, #191b23)}.___SRadio_1ifzo_gg_ .___SText_1ifzo_gg_.__color_1ifzo_gg_{color:var(--color_1ifzo)}.___SRadio_1ifzo_gg_.__disabled_1ifzo_gg_{pointer-events:none}.___SValue_1ifzo_gg_{position:relative;flex-shrink:0;padding:0;outline:0;z-index:0;margin-top:var(--intergalactic-spacing-05x, 2px)}.___SValue_1ifzo_gg_::after,.___SValue_1ifzo_gg_::before{content:"";position:absolute;right:0;bottom:0;border-radius:50%;background:var(--intergalactic-bg-primary-neutral, #ffffff)}.___SValue_1ifzo_gg_::before{top:0;left:0;border:1px solid;transition:calc(var(--intergalactic-duration-control, 200)*1ms) all ease-in-out}.___SValue_1ifzo_gg_::after{top:50%;left:50%;transform:translate(-50%,-50%);width:0;height:0}.___SValue_1ifzo_gg_.__disabled_1ifzo_gg_{opacity:var(--intergalactic-disabled-opacity, 0.3);cursor:default;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.___SValue_1ifzo_gg_._size_m_1ifzo_gg_{width:16px;height:16px}.___SValue_1ifzo_gg_._size_m_1ifzo_gg_ .___SInvalidPattern_1ifzo_gg_:before{width:14px;height:14px}.___SValue_1ifzo_gg_._size_l_1ifzo_gg_{width:20px;height:20px}.___SValue_1ifzo_gg_._size_l_1ifzo_gg_ .___SInvalidPattern_1ifzo_gg_:before{width:18px;height:18px}.___SValue_1ifzo_gg_._state_normal_1ifzo_gg_::before{border-color:var(--intergalactic-border-primary, #c4c7cf)}.___SValue_1ifzo_gg_._state_invalid_1ifzo_gg_::before{border-color:var(--intergalactic-border-critical-active, #d1002f)}.___SControl_1ifzo_gg_{position:absolute;clip:rect(1px,1px,1px,1px)}.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_._size_m_1ifzo_gg_::after{width:6px;height:6px}.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_._size_l_1ifzo_gg_::after{width:8px;height:8px}.___SControl_1ifzo_gg_:focus-visible+.___SValue_1ifzo_gg_._state_normal_1ifzo_gg_::before{border-color:var(--intergalactic-border-info-active, #006dca);outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset}.___SControl_1ifzo_gg_:checked:focus-visible~.___SValue_1ifzo_gg_::before,.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_::before{border-color:var(--intergalactic-control-primary-info, #008ff8);background-color:var(--intergalactic-control-primary-info, #008ff8)}.___SControl_1ifzo_gg_:focus-visible+.___SValue_1ifzo_gg_._state_invalid_1ifzo_gg_::before{border-color:var(--intergalactic-border-critical-active, #d1002f);outline-color:var(--intergalactic-keyboard-focus-outline, #008ff8);outline-style:solid;outline-width:2px;outline-offset:2px;transition-duration:calc(var(--intergalactic-duration-extra-fast, 100)*1ms);transition-timing-function:ease-in-out;transition-property:outline-color,outline-width,outline-offset;outline-color:var(--intergalactic-keyboard-focus-invalid-outline, #ff4953)}.___SControl_1ifzo_gg_:checked~.___SValue_1ifzo_gg_.__theme_1ifzo_gg_::before{border-color:var(--theme_1ifzo);background-color:var(--theme_1ifzo)}.___SValue_1ifzo_gg_._state_normal_1ifzo_gg_.__theme_1ifzo_gg_::before{border-color:var(--theme_1ifzo)}.___SInvalidPattern_1ifzo_gg_{background:0 0;overflow:hidden}.___SInvalidPattern_1ifzo_gg_:before{content:"";position:absolute;top:1px;left:1px;border-radius:50%;background-image:var(--intergalactic-border-critical-pattern, repeating-linear-gradient(315deg, rgba(209, 0, 47, 1) 0, rgba(209, 0, 47, 1) 2px, transparent 0, transparent 50%));background-size:6px 6px;background-color:var(--intergalactic-bg-primary-neutral, #ffffff)}',
|
|
18
18
|
/*__inner_css_end__*/
|
|
19
|
-
"
|
|
19
|
+
"1ifzo_gg_"
|
|
20
20
|
), /*__reshadow_css_end__*/
|
|
21
21
|
{
|
|
22
|
-
"__SRadio": "
|
|
23
|
-
"_disabled": "
|
|
24
|
-
"
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
"
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"_color": "
|
|
34
|
-
"--color": "--
|
|
35
|
-
"__SInvalidPattern": "
|
|
22
|
+
"__SRadio": "___SRadio_1ifzo_gg_",
|
|
23
|
+
"_disabled": "__disabled_1ifzo_gg_",
|
|
24
|
+
"__SValue": "___SValue_1ifzo_gg_",
|
|
25
|
+
"_state_normal": "_state_normal_1ifzo_gg_",
|
|
26
|
+
"_state_invalid": "_state_invalid_1ifzo_gg_",
|
|
27
|
+
"__SControl": "___SControl_1ifzo_gg_",
|
|
28
|
+
"_size_m": "_size_m_1ifzo_gg_",
|
|
29
|
+
"_size_l": "_size_l_1ifzo_gg_",
|
|
30
|
+
"_theme": "__theme_1ifzo_gg_",
|
|
31
|
+
"--theme": "--theme_1ifzo",
|
|
32
|
+
"__SText": "___SText_1ifzo_gg_",
|
|
33
|
+
"_color": "__color_1ifzo_gg_",
|
|
34
|
+
"--color": "--color_1ifzo",
|
|
35
|
+
"__SInvalidPattern": "___SInvalidPattern_1ifzo_gg_"
|
|
36
36
|
})
|
|
37
37
|
);
|
|
38
|
+
const RadioContext = /* @__PURE__ */ React.createContext({});
|
|
38
39
|
class RadioGroupRoot extends Component {
|
|
39
40
|
uncontrolledProps() {
|
|
40
41
|
return {
|
|
@@ -75,10 +76,13 @@ _defineProperty(RadioGroupRoot, "displayName", "RadioGroup");
|
|
|
75
76
|
_defineProperty(RadioGroupRoot, "defaultProps", {
|
|
76
77
|
defaultValue: null
|
|
77
78
|
});
|
|
78
|
-
const RadioGroup = createComponent(RadioGroupRoot
|
|
79
|
+
const RadioGroup = createComponent(RadioGroupRoot, {}, {
|
|
80
|
+
context: RadioContext
|
|
81
|
+
});
|
|
79
82
|
class RadioRoot extends Component {
|
|
80
83
|
constructor(...args) {
|
|
81
84
|
super(...args);
|
|
85
|
+
_defineProperty(this, "context", {});
|
|
82
86
|
_defineProperty(this, "state", {
|
|
83
87
|
hoistedDisabled: void 0
|
|
84
88
|
});
|
|
@@ -91,15 +95,15 @@ class RadioRoot extends Component {
|
|
|
91
95
|
}
|
|
92
96
|
getTextProps() {
|
|
93
97
|
const {
|
|
94
|
-
size = "m",
|
|
95
|
-
disabled,
|
|
98
|
+
size = this.context.size ?? "m",
|
|
99
|
+
disabled = this.context.disabled,
|
|
96
100
|
label
|
|
97
|
-
} =
|
|
101
|
+
} = this.asProps;
|
|
98
102
|
const {
|
|
99
103
|
hoistedDisabled
|
|
100
104
|
} = this.state;
|
|
101
105
|
const textProps = {
|
|
102
|
-
size,
|
|
106
|
+
size: size === "m" ? 200 : 300,
|
|
103
107
|
children: label,
|
|
104
108
|
disabled: disabled ?? hoistedDisabled,
|
|
105
109
|
hoistDisabled: this.hoistDisabled,
|
|
@@ -109,12 +113,12 @@ class RadioRoot extends Component {
|
|
|
109
113
|
}
|
|
110
114
|
getValueProps() {
|
|
111
115
|
const {
|
|
112
|
-
size = "m",
|
|
113
116
|
state = "normal",
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
117
|
+
size = this.context.size ?? "m",
|
|
118
|
+
theme = this.context.theme,
|
|
119
|
+
disabled = this.context.disabled,
|
|
120
|
+
name = this.context.name
|
|
121
|
+
} = this.asProps;
|
|
118
122
|
const {
|
|
119
123
|
value,
|
|
120
124
|
checked
|
|
@@ -152,12 +156,13 @@ class RadioRoot extends Component {
|
|
|
152
156
|
}
|
|
153
157
|
_defineProperty(RadioRoot, "displayName", "Radio");
|
|
154
158
|
_defineProperty(RadioRoot, "style", style);
|
|
155
|
-
_defineProperty(RadioRoot, "contextType",
|
|
159
|
+
_defineProperty(RadioRoot, "contextType", RadioContext);
|
|
156
160
|
class ValueRoot extends Component {
|
|
157
161
|
constructor(...args) {
|
|
158
162
|
super(...args);
|
|
163
|
+
_defineProperty(this, "context", {});
|
|
159
164
|
_defineProperty(this, "bindHandlerChange", (value) => (e) => {
|
|
160
|
-
if (typeof this.context.onChange === "function") {
|
|
165
|
+
if (typeof this.context.onChange === "function" && value !== void 0) {
|
|
161
166
|
this.context.onChange(value, e);
|
|
162
167
|
}
|
|
163
168
|
});
|
|
@@ -168,32 +173,35 @@ class ValueRoot extends Component {
|
|
|
168
173
|
};
|
|
169
174
|
}
|
|
170
175
|
getControlProps() {
|
|
171
|
-
const
|
|
176
|
+
const {
|
|
177
|
+
value: currentValue
|
|
178
|
+
} = this.context;
|
|
172
179
|
const {
|
|
173
180
|
forwardRef,
|
|
174
181
|
includeInputProps,
|
|
175
182
|
state,
|
|
176
183
|
value
|
|
177
184
|
} = this.asProps;
|
|
185
|
+
const {
|
|
186
|
+
onChange
|
|
187
|
+
} = this.props;
|
|
178
188
|
const [commonControlProps] = getInputProps(this.asProps, includeInputProps);
|
|
179
189
|
const inputValue = value ?? "";
|
|
180
|
-
|
|
190
|
+
return {
|
|
181
191
|
ref: forwardRef,
|
|
182
192
|
state,
|
|
183
193
|
...commonControlProps,
|
|
184
|
-
value: inputValue
|
|
194
|
+
value: inputValue,
|
|
195
|
+
...currentValue !== void 0 ? {
|
|
196
|
+
checked: currentValue === inputValue,
|
|
197
|
+
onChange: callAllEventHandlers(onChange, this.bindHandlerChange(inputValue))
|
|
198
|
+
} : {}
|
|
185
199
|
};
|
|
186
|
-
if (currentValue !== void 0) {
|
|
187
|
-
const {
|
|
188
|
-
onChange
|
|
189
|
-
} = this.props;
|
|
190
|
-
controlProps.checked = currentValue === inputValue;
|
|
191
|
-
controlProps.onChange = callAllEventHandlers(onChange, this.bindHandlerChange(inputValue));
|
|
192
|
-
}
|
|
193
|
-
return controlProps;
|
|
194
200
|
}
|
|
195
201
|
getRadioMarkProps() {
|
|
196
|
-
const
|
|
202
|
+
const {
|
|
203
|
+
value: currentValue
|
|
204
|
+
} = this.context;
|
|
197
205
|
const {
|
|
198
206
|
size,
|
|
199
207
|
state,
|
|
@@ -204,16 +212,16 @@ class ValueRoot extends Component {
|
|
|
204
212
|
disabled,
|
|
205
213
|
includeInputProps,
|
|
206
214
|
resolveColor,
|
|
215
|
+
children,
|
|
216
|
+
Children,
|
|
207
217
|
...other
|
|
208
218
|
} = this.asProps;
|
|
209
|
-
const [commonControlProps, radioMarkProps] = getInputProps(other, includeInputProps);
|
|
210
219
|
const {
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
} = radioMarkProps;
|
|
220
|
+
onClick
|
|
221
|
+
} = this.props;
|
|
222
|
+
const [commonControlProps, radioMarkProps] = getInputProps(other, includeInputProps);
|
|
215
223
|
const inputValue = value ?? "";
|
|
216
|
-
|
|
224
|
+
return {
|
|
217
225
|
theme,
|
|
218
226
|
size,
|
|
219
227
|
state,
|
|
@@ -221,17 +229,11 @@ class ValueRoot extends Component {
|
|
|
221
229
|
disabled,
|
|
222
230
|
resolveColor,
|
|
223
231
|
checked: commonControlProps.checked,
|
|
224
|
-
...
|
|
232
|
+
...radioMarkProps,
|
|
233
|
+
...currentValue !== void 0 && tag !== "label" ? {
|
|
234
|
+
onClick: callAllEventHandlers(onClick, this.bindHandlerChange(inputValue))
|
|
235
|
+
} : {}
|
|
225
236
|
};
|
|
226
|
-
if (currentValue !== void 0) {
|
|
227
|
-
const {
|
|
228
|
-
onClick
|
|
229
|
-
} = this.props;
|
|
230
|
-
if (tag !== "label") {
|
|
231
|
-
markProps.onClick = callAllEventHandlers(onClick, this.bindHandlerChange(inputValue));
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
return markProps;
|
|
235
237
|
}
|
|
236
238
|
componentDidUpdate() {
|
|
237
239
|
if (this.asProps.rootDisabled !== this.asProps.disabled) {
|
|
@@ -262,7 +264,7 @@ _defineProperty(ValueRoot, "defaultProps", {
|
|
|
262
264
|
});
|
|
263
265
|
_defineProperty(ValueRoot, "enhance", [resolveColorEnhance()]);
|
|
264
266
|
_defineProperty(ValueRoot, "displayName", "Value");
|
|
265
|
-
_defineProperty(ValueRoot, "contextType",
|
|
267
|
+
_defineProperty(ValueRoot, "contextType", RadioContext);
|
|
266
268
|
_defineProperty(ValueRoot, "style", style);
|
|
267
269
|
function Control(props) {
|
|
268
270
|
var _ref3 = arguments[0], _ref9;
|