@sats-group/ui-lib 81.0.1 → 81.2.0
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/package.json +1 -1
- package/react/badge/badge.scss +13 -13
- package/react/banner/banner.js +1 -1
- package/react/banner/banner.js.map +2 -2
- package/react/banner/banner.scss +17 -17
- package/react/bomb/bomb.scss +4 -4
- package/react/checkbox/checkbox.js +1 -1
- package/react/checkbox/checkbox.js.map +2 -2
- package/react/checkbox/checkbox.scss +36 -36
- package/react/chip/chip.scss +10 -10
- package/react/chip-selected/chip-selected.js +1 -1
- package/react/chip-selected/chip-selected.js.map +2 -2
- package/react/chip-selected/chip-selected.scss +3 -3
- package/react/collapse/collapse.js +1 -1
- package/react/collapse/collapse.js.map +2 -2
- package/react/confirmation/confirmation.js +1 -1
- package/react/confirmation/confirmation.js.map +2 -2
- package/react/confirmation/confirmation.scss +4 -4
- package/react/context-menu/context-menu.js +1 -1
- package/react/context-menu/context-menu.js.map +2 -2
- package/react/context-menu/context-menu.scss +14 -14
- package/react/dropdown-list/dropdown-list.js +1 -1
- package/react/dropdown-list/dropdown-list.js.map +2 -2
- package/react/dropdown-list/dropdown-list.scss +33 -33
- package/react/expander/expander.js +1 -1
- package/react/expander/expander.js.map +2 -2
- package/react/expander/expander.scss +9 -9
- package/react/filter/filter.js +1 -1
- package/react/filter/filter.js.map +2 -2
- package/react/filter/filter.scss +11 -11
- package/react/flag/flag.scss +4 -4
- package/react/form-content/checkbox-category.js +1 -1
- package/react/form-content/checkbox-category.js.map +2 -2
- package/react/form-content/form-content.checkbox-list.js +1 -1
- package/react/form-content/form-content.checkbox-list.js.map +2 -2
- package/react/form-content/form-content.radio-list.js +1 -1
- package/react/form-content/form-content.radio-list.js.map +2 -2
- package/react/form-content/form-content.scss +11 -11
- package/react/form-content/form-content.search.js +1 -1
- package/react/form-content/form-content.search.js.map +2 -2
- package/react/link/link.scss +9 -9
- package/react/link-card/link-card.scss +5 -5
- package/react/message/message.scss +10 -10
- package/react/message-field/message-field.js +1 -1
- package/react/message-field/message-field.js.map +2 -2
- package/react/message-field/message-field.scss +2 -2
- package/react/modal/modal.js +1 -1
- package/react/modal/modal.js.map +2 -2
- package/react/modal/modal.scss +9 -9
- package/react/modal/tab-trapper.js +1 -1
- package/react/modal/tab-trapper.js.map +2 -2
- package/react/progress-bar/progress-bar.scss +7 -7
- package/react/radio/radio.js +1 -1
- package/react/radio/radio.js.map +2 -2
- package/react/radio/radio.scss +19 -19
- package/react/scale-bar/scale-bar.scss +3 -3
- package/react/search/search.js +1 -1
- package/react/search/search.js.map +2 -2
- package/react/search/search.scss +17 -17
- package/react/select/select.js +1 -1
- package/react/select/select.js.map +2 -2
- package/react/select/select.scss +17 -17
- package/react/tag/tag.scss +39 -39
- package/react/text-area/text-area.js +1 -1
- package/react/text-area/text-area.js.map +2 -2
- package/react/text-area/text-area.scss +32 -32
- package/react/text-input/text-input.js +1 -1
- package/react/text-input/text-input.js.map +2 -2
- package/react/text-input/text-input.scss +37 -37
- package/react/toggle/toggle.js +1 -1
- package/react/toggle/toggle.js.map +2 -2
- package/react/toggle/toggle.scss +4 -4
- package/react/toolbox/toolbox.scss +6 -6
- package/react/visually-button/visually-button.scss +79 -79
- package/tokens/colours.scss +3 -0
- package/tokens/default-colours.css +414 -0
- /package/tokens/{dark-variables.css → darkmode.css} +0 -0
- /package/tokens/{light-variables.css → lightmode.css} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var F=Object.defineProperty;var m=Object.getOwnPropertySymbols;var w=Object.prototype.hasOwnProperty,S=Object.prototype.propertyIsEnumerable;var I=(i,e,s)=>e in i?F(i,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):i[e]=s,k=(i,e)=>{for(var s in e||(e={}))w.call(e,s)&&I(i,s,e[s]);if(m)for(var s of m(e))S.call(e,s)&&I(i,s,e[s]);return i};var C=(i,e)=>{var s={};for(var n in i)w.call(i,n)&&e.indexOf(n)<0&&(s[n]=i[n]);if(i!=null&&m)for(var n of m(i))e.indexOf(n)<0&&S.call(i,n)&&(s[n]=i[n]);return s};import G from"classnames";import*as t from"react";import
|
|
1
|
+
"use client";var F=Object.defineProperty;var m=Object.getOwnPropertySymbols;var w=Object.prototype.hasOwnProperty,S=Object.prototype.propertyIsEnumerable;var I=(i,e,s)=>e in i?F(i,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):i[e]=s,k=(i,e)=>{for(var s in e||(e={}))w.call(e,s)&&I(i,s,e[s]);if(m)for(var s of m(e))S.call(e,s)&&I(i,s,e[s]);return i};var C=(i,e)=>{var s={};for(var n in i)w.call(i,n)&&e.indexOf(n)<0&&(s[n]=i[n]);if(i!=null&&m)for(var n of m(i))e.indexOf(n)<0&&S.call(i,n)&&(s[n]=i[n]);return s};import G from"classnames";import*as t from"react";import l from"../text";import J from"../use-input-validation";import K from"../icons/16/info";import L from"../icons/16/error";import{themes as _,variants as p}from"./text-input.types";import{useEffect as M}from"react";const E=t.forwardRef((U,q)=>{var b=U,{customErrorMessages:i,defaultValue:e,disabled:s,hasError:n,helpText:h,label:N,leadingIcon:o,maxLength:a,name:O,onChange:j=()=>{},placeholder:H,required:c,theme:z,trailingIcon:d,type:P="text",variant:u=p.large}=b,T=C(b,["customErrorMessages","defaultValue","disabled","hasError","helpText","label","leadingIcon","maxLength","name","onChange","placeholder","required","theme","trailingIcon","type","variant"]);const[A,f]=t.useState(0),[g,y]=t.useState(n),[B,D,x]=J(i,i?i.defaultError:void 0,g),v=a?a>0:void 0;return t.useEffect(()=>{e&&(typeof e=="string"?f(e.length):typeof e=="number"&&f(e))},[T]),M(()=>{y(n)},[n]),t.createElement("label",{className:G("text-input",{"text-input--theme-dark":z===_.dark,"text-input--theme-light":z===_.light,"text-input--disabled":s,"text-input--error":x||g,"text-input--icon":o||d,"text-input--variant-small":u===p.small,"text-input--variant-large":u===p.large})},t.createElement("div",{className:"text-input__wrapper"},t.createElement("div",{className:"text-input__label-wrapper"},t.createElement(l,{className:"text-input__label",theme:l.themes.emphasis,size:u===p.small?l.sizes.small:l.sizes.basic},N,c?t.createElement("span",{className:"text-input__asterisk"},"*"):null),v?t.createElement("div",{className:"text-input__length-counter"},t.createElement(l,{size:u===p.small?l.sizes.small:l.sizes.basic},A,"/",a)):null),t.createElement("div",{className:"text-input__input-wrapper"},o?t.createElement("div",{className:"text-input__icon"},o):null,t.createElement("input",k({className:"text-input__input",defaultValue:e,disabled:s,required:c,name:O,maxLength:v?a:void 0,onInvalid:r=>D(r),onChange:r=>{j(r),B(r),y(!1),v&&f(r.target.value.length)},placeholder:H,ref:q,type:P,"aria-label":N},T)),d?t.createElement("div",{className:"text-input__icon"},d):null),h?t.createElement("div",{className:"text-input__help"},t.createElement(K,null),t.createElement(l,{size:l.sizes.interface},h)):null,x?t.createElement("div",{"aria-hidden":"true",className:"text-input__error"},t.createElement(L,null),t.createElement(l,{size:l.sizes.interface},x)):null))});E.displayName="TextInput";const Q=Object.assign(E,{themes:_,variants:p});var it=Q;export{it as default};
|
|
2
2
|
//# sourceMappingURL=text-input.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../react/text-input/text-input.tsx"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport cn from 'classnames';\nimport * as React from 'react';\n\nimport Text from '../text';\nimport useInputValidation from '../use-input-validation';\nimport SvgInfo from '../icons/16/info';\nimport SvgError from '../icons/16/error';\n\nimport { themes, variants, TextInput as Props } from './text-input.types';\nimport { useEffect } from 'react';\n\nconst RefTextInput = React.forwardRef<HTMLInputElement, Props>(\n (\n {\n customErrorMessages,\n defaultValue,\n disabled,\n hasError,\n helpText,\n label,\n leadingIcon,\n maxLength,\n name,\n onChange = () => {},\n placeholder,\n required,\n theme,\n trailingIcon,\n type = 'text',\n variant = variants.large,\n ...restProps\n },\n ref,\n ) => {\n const [count, setCount] = React.useState(0);\n const [isError, setIsError] = React.useState(hasError);\n const [validationOnChange, onInvalid, error] = useInputValidation(\n customErrorMessages,\n customErrorMessages ? customErrorMessages.defaultError : undefined,\n isError,\n );\n const isMaxLengthValid = maxLength ? maxLength > 0 : undefined;\n\n React.useEffect(() => {\n if (defaultValue) {\n if (typeof defaultValue === 'string') {\n setCount(defaultValue.length);\n } else if (typeof defaultValue === 'number') {\n setCount(defaultValue);\n }\n }\n }, [restProps]);\n\n useEffect(() => {\n setIsError(hasError);\n }, [hasError]);\n\n return (\n <label\n className={cn('text-input', {\n 'text-input--theme-dark': theme === themes.dark,\n 'text-input--theme-light': theme === themes.light,\n 'text-input--disabled': disabled,\n 'text-input--error': error || isError,\n 'text-input--icon': leadingIcon || trailingIcon,\n 'text-input--variant-small': variant === variants.small,\n 'text-input--variant-large': variant === variants.large,\n })}\n >\n <div className=\"text-input__wrapper\">\n <div className=\"text-input__label-wrapper\">\n <Text\n className=\"text-input__label\"\n theme={Text.themes.emphasis}\n size={\n variant === variants.small ? Text.sizes.small : Text.sizes.basic\n }\n >\n {label}\n {required ? (\n <span className=\"text-input__asterisk\">*</span>\n ) : null}\n </Text>\n {isMaxLengthValid ? (\n <div className=\"text-input__length-counter\">\n <Text\n size={\n variant === variants.small\n ? Text.sizes.small\n : Text.sizes.basic\n }\n >\n {count}/{maxLength}\n </Text>\n </div>\n ) : null}\n </div>\n\n <div className=\"text-input__input-wrapper\">\n {leadingIcon ? (\n <div className=\"text-input__icon\">{leadingIcon}</div>\n ) : null}\n <input\n className=\"text-input__input\"\n defaultValue={defaultValue}\n disabled={disabled}\n required={required}\n name={name}\n maxLength={isMaxLengthValid ? maxLength : undefined}\n onInvalid={e => onInvalid(e)}\n onChange={e => {\n onChange(e);\n validationOnChange(e);\n setIsError(false); // NOTE: We want to reset error state on change to not confuse users.\n if (isMaxLengthValid) {\n setCount(e.target.value.length);\n }\n }}\n placeholder={placeholder}\n ref={ref}\n type={type}\n aria-label={label}\n {...restProps}\n />\n {trailingIcon ? (\n <div className=\"text-input__icon\">{trailingIcon}</div>\n ) : null}\n </div>\n {helpText ? (\n <div className=\"text-input__help\">\n <SvgInfo />\n <Text size={Text.sizes.interface}>{helpText}</Text>\n </div>\n ) : null}\n {/* NOTE: This is aria-hidden because reporting of validation errors is handled by the browser */}\n {error ? (\n <div aria-hidden=\"true\" className=\"text-input__error\">\n <SvgError />\n <Text size={Text.sizes.interface}>{error}</Text>\n </div>\n ) : null}\n </div>\n </label>\n );\n },\n);\n\n// NOTE: If this isn't set, stack traces say \"forwardRef\" instead of \"TextInput\"\nRefTextInput.displayName = 'TextInput';\n\nconst TextInput: typeof RefTextInput & {\n themes: typeof themes;\n variants: typeof variants;\n} = Object.assign(RefTextInput, { themes, variants });\n\nexport default TextInput;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["cn", "React", "Text", "useInputValidation", "SvgInfo", "SvgError", "themes", "variants", "useEffect", "RefTextInput", "_a", "ref", "_b", "customErrorMessages", "defaultValue", "disabled", "hasError", "helpText", "label", "leadingIcon", "maxLength", "name", "onChange", "placeholder", "required", "theme", "trailingIcon", "type", "variant", "restProps", "__objRest", "count", "setCount", "isError", "setIsError", "validationOnChange", "onInvalid", "error", "isMaxLengthValid", "__spreadValues", "e", "TextInput", "text_input_default"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
@use '../../tokens/corner-radius';
|
|
2
2
|
@use '../../tokens/font-sizes';
|
|
3
3
|
@use '../../tokens/font-names';
|
|
4
|
-
@use '../../tokens/
|
|
4
|
+
@use '../../tokens/colours';
|
|
5
5
|
@use '../../tokens/spacing';
|
|
6
6
|
|
|
7
7
|
.text-input {
|
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
}
|
|
33
33
|
|
|
34
34
|
&__length-counter {
|
|
35
|
-
color:
|
|
35
|
+
color: var(--on-background-primary-alternate);
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
&__label-wrapper {
|
|
@@ -41,23 +41,23 @@
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
&__input-wrapper {
|
|
44
|
-
border: 1px solid
|
|
44
|
+
border: 1px solid var(--ge-divider-default);
|
|
45
45
|
border-radius: corner-radius.$s;
|
|
46
46
|
display: flex;
|
|
47
47
|
align-items: center;
|
|
48
|
-
background-color:
|
|
49
|
-
color:
|
|
48
|
+
background-color: var(--surface-primary-default);
|
|
49
|
+
color: var(--on-surface-primary-default);
|
|
50
50
|
width: 100%;
|
|
51
51
|
box-sizing: border-box;
|
|
52
52
|
|
|
53
53
|
&:focus-within {
|
|
54
|
-
border-color:
|
|
54
|
+
border-color: var(--ge-border-focused);
|
|
55
55
|
outline: none;
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
@media (hover: hover) {
|
|
59
59
|
&:hover {
|
|
60
|
-
background-color:
|
|
60
|
+
background-color: var(--surface-primary-hover);
|
|
61
61
|
cursor: text;
|
|
62
62
|
}
|
|
63
63
|
}
|
|
@@ -77,13 +77,13 @@
|
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
&::placeholder {
|
|
80
|
-
color:
|
|
80
|
+
color: var(--on-surface-primary-alternate);
|
|
81
81
|
opacity: 1;
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
&[disabled],
|
|
85
85
|
&[disabled]::placeholder {
|
|
86
|
-
color:
|
|
86
|
+
color: var(--on-surface-primary-disabled);
|
|
87
87
|
}
|
|
88
88
|
|
|
89
89
|
&::-webkit-outer-spin-button,
|
|
@@ -118,11 +118,11 @@
|
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
&__help {
|
|
121
|
-
color:
|
|
121
|
+
color: var(--on-surface-primary-alternate);
|
|
122
122
|
}
|
|
123
123
|
|
|
124
124
|
&__error {
|
|
125
|
-
color:
|
|
125
|
+
color: var(--on-surface-error);
|
|
126
126
|
}
|
|
127
127
|
|
|
128
128
|
&__icon {
|
|
@@ -130,7 +130,7 @@
|
|
|
130
130
|
}
|
|
131
131
|
|
|
132
132
|
&__asterisk {
|
|
133
|
-
color:
|
|
133
|
+
color: var(--on-surface-featured);
|
|
134
134
|
margin-left: spacing.$xs;
|
|
135
135
|
}
|
|
136
136
|
|
|
@@ -138,78 +138,78 @@
|
|
|
138
138
|
#{$block}__label,
|
|
139
139
|
#{$block}__icon,
|
|
140
140
|
#{$block}__help {
|
|
141
|
-
color:
|
|
141
|
+
color: var(--on-background-primary-disabled);
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
#{$block}__input-wrapper {
|
|
145
|
-
background-color:
|
|
146
|
-
border-color:
|
|
145
|
+
background-color: var(--surface-primary-disabled);
|
|
146
|
+
border-color: var(--surface-primary-disabled);
|
|
147
147
|
cursor: auto;
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
|
|
151
151
|
&--error {
|
|
152
152
|
#{$block}__icon {
|
|
153
|
-
color:
|
|
153
|
+
color: var(--on-surface-error);
|
|
154
154
|
}
|
|
155
155
|
|
|
156
156
|
#{$block}__input-wrapper {
|
|
157
|
-
outline: 2px solid
|
|
157
|
+
outline: 2px solid var(--ge-signal-error);
|
|
158
158
|
outline-offset: -2px;
|
|
159
159
|
|
|
160
160
|
&:focus {
|
|
161
|
-
outline: 2px solid
|
|
161
|
+
outline: 2px solid var(--ge-signal-error);
|
|
162
162
|
outline-offset: -2px;
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
165
|
}
|
|
166
166
|
|
|
167
167
|
&__input {
|
|
168
|
-
color:
|
|
168
|
+
color: var(--on-surface-primary-default);
|
|
169
169
|
}
|
|
170
170
|
|
|
171
171
|
&--theme-dark {
|
|
172
172
|
#{$block}__icon {
|
|
173
|
-
color:
|
|
173
|
+
color: var(--on-fixed-surface-primary-default);
|
|
174
174
|
}
|
|
175
175
|
|
|
176
176
|
#{$block}__label {
|
|
177
|
-
color:
|
|
177
|
+
color: var(--on-fixed-background-primary-default);
|
|
178
178
|
}
|
|
179
179
|
|
|
180
180
|
#{$block}__length-counter,
|
|
181
181
|
#{$block}__help {
|
|
182
|
-
color:
|
|
182
|
+
color: var(--on-background-primary-alternate);
|
|
183
183
|
}
|
|
184
184
|
|
|
185
185
|
#{$block}__input-wrapper {
|
|
186
|
-
background-color:
|
|
187
|
-
border-color:
|
|
188
|
-
color:
|
|
186
|
+
background-color: var(--fixed-surface-secondary-default);
|
|
187
|
+
border-color: var(--ge-border-default);
|
|
188
|
+
color: var(--on-fixed-surface-primary-alternate);
|
|
189
189
|
|
|
190
190
|
&:focus-within {
|
|
191
|
-
background:
|
|
192
|
-
color:
|
|
191
|
+
background: var(--fixed-surface-primary-default);
|
|
192
|
+
color: var(--on-fixed-surface-primary-default);
|
|
193
193
|
outline: none;
|
|
194
|
-
border-color:
|
|
194
|
+
border-color: var(--ge-border-focused);
|
|
195
195
|
|
|
196
196
|
~ #{$block}__icon {
|
|
197
|
-
color:
|
|
197
|
+
color: var(--on-fixed-surface-primary-default);
|
|
198
198
|
}
|
|
199
199
|
}
|
|
200
200
|
|
|
201
201
|
&::placeholder {
|
|
202
|
-
color:
|
|
202
|
+
color: var(--on-fixed-surface-primary-alternate);
|
|
203
203
|
}
|
|
204
204
|
|
|
205
205
|
&[disabled],
|
|
206
206
|
&[disabled]::placeholder {
|
|
207
|
-
color:
|
|
207
|
+
color: var(--on-fixed-surface-primary-disabled);
|
|
208
208
|
}
|
|
209
209
|
|
|
210
210
|
@media (hover: hover) {
|
|
211
211
|
&:hover {
|
|
212
|
-
background-color:
|
|
212
|
+
background-color: var(--fixed-surface-primary-hover);
|
|
213
213
|
cursor: text;
|
|
214
214
|
}
|
|
215
215
|
}
|
|
@@ -217,23 +217,23 @@
|
|
|
217
217
|
|
|
218
218
|
#{$block}__input {
|
|
219
219
|
background-color: transparent;
|
|
220
|
-
color:
|
|
220
|
+
color: var(--on-fixed-surface-primary-default);
|
|
221
221
|
}
|
|
222
222
|
|
|
223
223
|
&#{$block}--disabled {
|
|
224
224
|
#{$block}__label,
|
|
225
225
|
#{$block}__icon,
|
|
226
226
|
#{$block}__help {
|
|
227
|
-
color:
|
|
227
|
+
color: var(--on-fixed-surface-primary-disabled);
|
|
228
228
|
}
|
|
229
229
|
|
|
230
230
|
&#{$block}--error #{$block}__icon {
|
|
231
|
-
color:
|
|
231
|
+
color: var(--on-fixed-surface-error);
|
|
232
232
|
}
|
|
233
233
|
|
|
234
234
|
#{$block}__input-wrapper {
|
|
235
|
-
background-color:
|
|
236
|
-
border-color:
|
|
235
|
+
background-color: var(--fixed-surface-primary-selected);
|
|
236
|
+
border-color: var(--on-fixed-surface-primary-disabled);
|
|
237
237
|
cursor: auto;
|
|
238
238
|
}
|
|
239
239
|
|
package/react/toggle/toggle.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var w=Object.defineProperty;var r=Object.getOwnPropertySymbols;var
|
|
1
|
+
"use client";var w=Object.defineProperty;var r=Object.getOwnPropertySymbols;var s=Object.prototype.hasOwnProperty,m=Object.prototype.propertyIsEnumerable;var d=(e,n,o)=>n in e?w(e,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[n]=o,p=(e,n)=>{for(var o in n||(n={}))s.call(n,o)&&d(e,o,n[o]);if(r)for(var o of r(n))m.call(n,o)&&d(e,o,n[o]);return e};var _=(e,n)=>{var o={};for(var t in e)s.call(e,t)&&n.indexOf(t)<0&&(o[t]=e[t]);if(e!=null&&r)for(var t of r(e))n.indexOf(t)<0&&m.call(e,t)&&(o[t]=e[t]);return o};import v from"classnames";import*as l from"react";import f from"../text";import P from"../use-input-validation";const b=l.forwardRef((k,I)=>{var i=k,{children:e,isLabelVisible:n=!0,label:o,labelPosition:t="right",name:u,value:c="",spaceBetween:h,testId:N}=i,a=_(i,["children","isLabelVisible","label","labelPosition","name","value","spaceBetween","testId"]);const[T,x,C]=P();return l.createElement("div",{className:v("toggle",{"toggle--error":C})},l.createElement("label",{className:v("toggle__content",{"toggle__content--space-between":h}),"data-testid":N},n&&t==="left"&&l.createElement("div",{className:"toggle__label"},l.createElement(f,null,o),e),l.createElement("div",{className:"toggle__button-wrap"},l.createElement("input",p({"aria-label":n?void 0:o,className:"toggle__input",type:"checkbox",name:u,onChange:g=>{a.onChange&&a.onChange(g),T(g)},onInvalid:g=>{a.onInvalid&&a.onInvalid(g),x(g)},ref:I,value:c},a)),l.createElement("span",{className:"toggle__slider"},l.createElement("div",{className:"toggle__slider-element"}))),n&&t==="right"&&l.createElement("div",{className:"toggle__label"},l.createElement(f,null,o),e)))});var q=b;export{q as default};
|
|
2
2
|
//# sourceMappingURL=toggle.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../react/toggle/toggle.tsx"],
|
|
4
|
-
"sourcesContent": ["
|
|
5
|
-
"mappings": "
|
|
4
|
+
"sourcesContent": ["'use client';\n\nimport cn from 'classnames';\nimport * as React from 'react';\n\nimport Text from '../text';\nimport useInputValidation from '../use-input-validation';\n\nimport { Toggle as Props } from './toggle.types';\n\nconst Toggle = React.forwardRef<\n HTMLInputElement,\n React.PropsWithChildren<Props>\n>(\n (\n {\n children,\n isLabelVisible = true,\n label,\n labelPosition = 'right',\n name,\n value = '',\n spaceBetween,\n testId,\n ...rest\n },\n ref,\n ) => {\n const [onChange, onInvalid, error] = useInputValidation();\n\n return (\n <div\n className={cn('toggle', {\n 'toggle--error': error,\n })}\n >\n <label\n className={cn('toggle__content', {\n 'toggle__content--space-between': spaceBetween,\n })}\n data-testid={testId}\n >\n {isLabelVisible && labelPosition === 'left' && (\n <div className=\"toggle__label\">\n <Text>{label}</Text>\n {children}\n </div>\n )}\n\n <div className=\"toggle__button-wrap\">\n <input\n aria-label={isLabelVisible ? undefined : label}\n className=\"toggle__input\"\n type=\"checkbox\"\n name={name}\n onChange={e => {\n // NOTE: If props specify an `onChange`, we need to call that too\n if (rest.onChange) rest.onChange(e);\n onChange(e);\n }}\n onInvalid={e => {\n // NOTE: If props specify an `onInvalid`, we need to call that too\n if (rest.onInvalid) rest.onInvalid(e);\n onInvalid(e);\n }}\n ref={ref}\n value={value}\n {...rest}\n />\n <span className=\"toggle__slider\">\n <div className=\"toggle__slider-element\"></div>\n </span>\n </div>\n\n {isLabelVisible && labelPosition === 'right' && (\n <div className=\"toggle__label\">\n <Text>{label}</Text>\n {children}\n </div>\n )}\n </label>\n </div>\n );\n },\n);\n\nexport default Toggle;\n"],
|
|
5
|
+
"mappings": "wgBAEA,OAAOA,MAAQ,aACf,UAAYC,MAAW,QAEvB,OAAOC,MAAU,UACjB,OAAOC,MAAwB,0BAI/B,MAAMC,EAASH,EAAM,WAInB,CACEI,EAWAC,IACG,CAZH,IAAAC,EAAAF,EACE,UAAAG,EACA,eAAAC,EAAiB,GACjB,MAAAC,EACA,cAAAC,EAAgB,QAChB,KAAAC,EACA,MAAAC,EAAQ,GACR,aAAAC,EACA,OAAAC,CAvBN,EAeIR,EASKS,EAAAC,EATLV,EASK,CARH,WACA,iBACA,QACA,gBACA,OACA,QACA,eACA,WAKF,KAAM,CAACW,EAAUC,EAAWC,CAAK,EAAIjB,EAAmB,EAExD,OACEF,EAAA,cAAC,OACC,UAAWD,EAAG,SAAU,CACtB,gBAAiBoB,CACnB,CAAC,GAEDnB,EAAA,cAAC,SACC,UAAWD,EAAG,kBAAmB,CAC/B,iCAAkCc,CACpC,CAAC,EACD,cAAaC,GAEZN,GAAkBE,IAAkB,QACnCV,EAAA,cAAC,OAAI,UAAU,iBACbA,EAAA,cAACC,EAAA,KAAMQ,CAAM,EACZF,CACH,EAGFP,EAAA,cAAC,OAAI,UAAU,uBACbA,EAAA,cAAC,QAAAoB,EAAA,CACC,aAAYZ,EAAiB,OAAYC,EACzC,UAAU,gBACV,KAAK,WACL,KAAME,EACN,SAAUU,GAAK,CAETN,EAAK,UAAUA,EAAK,SAASM,CAAC,EAClCJ,EAASI,CAAC,CACZ,EACA,UAAWA,GAAK,CAEVN,EAAK,WAAWA,EAAK,UAAUM,CAAC,EACpCH,EAAUG,CAAC,CACb,EACA,IAAKhB,EACL,MAAOO,GACHG,EACN,EACAf,EAAA,cAAC,QAAK,UAAU,kBACdA,EAAA,cAAC,OAAI,UAAU,yBAAyB,CAC1C,CACF,EAECQ,GAAkBE,IAAkB,SACnCV,EAAA,cAAC,OAAI,UAAU,iBACbA,EAAA,cAACC,EAAA,KAAMQ,CAAM,EACZF,CACH,CAEJ,CACF,CAEJ,CACF,EAEA,IAAOe,EAAQnB",
|
|
6
6
|
"names": ["cn", "React", "Text", "useInputValidation", "Toggle", "_a", "ref", "_b", "children", "isLabelVisible", "label", "labelPosition", "name", "value", "spaceBetween", "testId", "rest", "__objRest", "onChange", "onInvalid", "error", "__spreadValues", "e", "toggle_default"]
|
|
7
7
|
}
|
package/react/toggle/toggle.scss
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
@use '../../tokens/
|
|
1
|
+
@use '../../tokens/colours';
|
|
2
2
|
@use '../../tokens/spacing.scss';
|
|
3
3
|
|
|
4
4
|
.toggle {
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
&__slider {
|
|
29
|
-
background:
|
|
29
|
+
background: var(--ge-toggle-unselected-default);
|
|
30
30
|
border-radius: 40px;
|
|
31
31
|
position: absolute;
|
|
32
32
|
top: 50%;
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
&__slider-element {
|
|
42
42
|
height: 18px;
|
|
43
43
|
width: 18px;
|
|
44
|
-
background:
|
|
44
|
+
background: var(--ge-toggle-interactive-element);
|
|
45
45
|
filter: drop-shadow(0px 3px 1px rgba(0, 0, 0, 0.06))
|
|
46
46
|
drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.05))
|
|
47
47
|
drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.05));
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
height: $sizeHeight;
|
|
56
56
|
|
|
57
57
|
&:checked + #{$block}__slider {
|
|
58
|
-
background:
|
|
58
|
+
background: var(--ge-toggle-selected-default);
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
&:checked + #{$block}__slider #{$block}__slider-element {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
@use '../../tokens/
|
|
1
|
+
@use '../../tokens/colours';
|
|
2
2
|
@use '../../tokens/spacing';
|
|
3
3
|
@use '../../tokens/corner-radius';
|
|
4
4
|
|
|
5
5
|
.toolbox {
|
|
6
|
-
border-top: 1px solid
|
|
6
|
+
border-top: 1px solid var(--ge-border-default);
|
|
7
7
|
border-bottom-right-radius: corner-radius.$s;
|
|
8
8
|
border-bottom-left-radius: corner-radius.$s;
|
|
9
|
-
background-color:
|
|
9
|
+
background-color: var(--surface-primary-default);
|
|
10
10
|
width: 100%;
|
|
11
11
|
display: flex;
|
|
12
12
|
justify-content: space-evenly;
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
width: 100%;
|
|
18
18
|
|
|
19
19
|
&:hover {
|
|
20
|
-
background:
|
|
20
|
+
background: var(--surface-primary-hover);
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
&:first-child {
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
&:not(:last-child) {
|
|
37
|
-
border-right: 1px solid
|
|
37
|
+
border-right: 1px solid var(--ge-border-default);
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
align-items: center;
|
|
55
55
|
row-gap: spacing.$xs;
|
|
56
56
|
column-gap: spacing.$xxs;
|
|
57
|
-
color:
|
|
57
|
+
color: var(--on-buttons-on-link-default);
|
|
58
58
|
padding: spacing.$s;
|
|
59
59
|
background: none;
|
|
60
60
|
border: none;
|