@kvdbil/components 8.3.3 → 8.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("styled-components"),t=require("../../shared/helpers.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),r=require("styled-components"),t=require("../../shared/helpers.js"),i=require("../../theme.js"),a=require("../IconButton.js"),l=require("../../typography/BodyText/index.js");function o(y){return y&&typeof y=="object"&&"default"in y?y:{default:y}}require("../../shared/media-queries.js");var s=o(e),c=o(r);const d={regular:r.css`
|
|
2
2
|
.circle {
|
|
3
3
|
&--outer {
|
|
4
4
|
height: 24px;
|
|
@@ -29,69 +29,71 @@
|
|
|
29
29
|
|
|
30
30
|
.circle {
|
|
31
31
|
&--inner {
|
|
32
|
-
background-color: ${
|
|
32
|
+
background-color: ${i.default.colors.gray.light1};
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
&--outer {
|
|
36
|
-
border: 2px solid ${
|
|
36
|
+
border: 2px solid ${i.default.colors.gray.light1};
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
`,u=r.css`
|
|
40
40
|
.circle {
|
|
41
41
|
&--inner {
|
|
42
42
|
opacity: 1;
|
|
43
|
-
background-color: ${
|
|
43
|
+
background-color: ${i.default.colors.gray.light1};
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
`,f=
|
|
46
|
+
`,f=c.default.div`
|
|
47
47
|
display: flex;
|
|
48
48
|
align-items: center;
|
|
49
49
|
box-sizing: border-box;
|
|
50
|
-
`,b=
|
|
50
|
+
`,b=c.default.span`
|
|
51
51
|
cursor: pointer;
|
|
52
52
|
display: flex;
|
|
53
53
|
position: relative;
|
|
54
54
|
align-items: center;
|
|
55
55
|
justify-content: center;
|
|
56
56
|
|
|
57
|
-
${y=>
|
|
57
|
+
${y=>d[y.size]};
|
|
58
58
|
|
|
59
59
|
${y=>{return!y.isDisabled&&y.isChecked&&($=y.color,r.css`
|
|
60
60
|
.circle {
|
|
61
61
|
&--inner {
|
|
62
62
|
opacity: 1;
|
|
63
|
-
background-color: ${
|
|
63
|
+
background-color: ${i.default.colors[$].main};
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
&--outer {
|
|
67
|
-
border: 2px solid ${
|
|
67
|
+
border: 2px solid ${i.default.colors[$].main};
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
`);var $}};
|
|
71
71
|
${y=>y.isDisabled&&n};
|
|
72
72
|
|
|
73
73
|
${y=>y.isChecked&&y.isDisabled&&u};
|
|
74
|
-
`,
|
|
75
|
-
|
|
76
|
-
|
|
74
|
+
`,p=c.default.input`
|
|
75
|
+
position: fixed;
|
|
76
|
+
opacity: 0;
|
|
77
|
+
pointer-events: none;
|
|
78
|
+
`,h=c.default.span`
|
|
77
79
|
display: flex;
|
|
78
80
|
box-sizing: border-box;
|
|
79
81
|
border-radius: 50%;
|
|
80
82
|
|
|
81
|
-
border: 2px solid ${
|
|
82
|
-
`,g=
|
|
83
|
+
border: 2px solid ${i.default.colors.gray.light1};
|
|
84
|
+
`,g=c.default.span`
|
|
83
85
|
box-sizing: border-box;
|
|
84
86
|
opacity: 0;
|
|
85
87
|
margin: auto;
|
|
86
88
|
border-radius: 50%;
|
|
87
|
-
background-color: ${
|
|
89
|
+
background-color: ${i.default.colors.gray.light1};
|
|
88
90
|
|
|
89
91
|
position: absolute;
|
|
90
92
|
top: 0;
|
|
91
93
|
left: 0;
|
|
92
|
-
`,m=
|
|
94
|
+
`,m=c.default(l.BodyText)`
|
|
93
95
|
cursor: ${({isDisabled:y})=>y?"default":"pointer"};
|
|
94
96
|
user-select: none;
|
|
95
97
|
color: ${({theme:y,isDisabled:$})=>$?y.colors.text.disabled:y.colors.text.dark};
|
|
96
98
|
margin-left: 0.5rem;
|
|
97
|
-
`,x=({name:y=t.generateNameHash("radio-button"),size:$="regular",checked:
|
|
99
|
+
`,x=({name:y=t.generateNameHash("radio-button"),size:$="regular",checked:v=!1,isDisabled:k=!1,color:D="secondary",onChange:j,label:q,...E})=>s.default.createElement(f,null,s.default.createElement(a.default,{onClick:j,isActive:v,isDisabled:k,color:D},s.default.createElement(p,{"data-validate":"checked",checked:v,type:"radio",name:y,id:y,onChange:j,disabled:k,"aria-label":y,...E}),s.default.createElement(b,{size:$,color:D,isChecked:v,isDisabled:k},s.default.createElement(h,{className:"circle circle--outer"},s.default.createElement(g,{className:"circle circle--inner"})))),q&&s.default.createElement(m,{as:"label",htmlFor:y,isDisabled:k},q));exports.RadioButton=x,exports.default=x;
|
|
@@ -61,4 +61,4 @@
|
|
|
61
61
|
${({centered:g})=>g&&"width: 100%; text-align: center;"}
|
|
62
62
|
`,b=s.default.span`
|
|
63
63
|
display: block;
|
|
64
|
-
`,x=({placeholder:g="",isDisabled:y=!1,centered:
|
|
64
|
+
`,x=({placeholder:g="",isDisabled:y=!1,centered:k=!1,hasError:F=!1,className:S,helperText:q,label:v="",onBlur:z=()=>null,onFocus:L=()=>null,forwardRef:P,suffix:w,name:E=a.generateNameHash("text-input"),errors:j,...T})=>{const[B,N]=e.useState(!1),_=Boolean(T.value);return d.default.createElement(u,{className:S},d.default.createElement(h,{isFocused:B,disabled:y,centered:k,hasError:F,hasPlaceholder:!!g},d.default.createElement(m,{...T,id:E,name:E,"aria-label":E,ref:P,onFocus:$=>{N(!0),L($)},onBlur:$=>{N(!1),z($)},disabled:y,placeholder:v&&!B?"":g}),w&&d.default.createElement(f,null,w)),v&&d.default.createElement(t.Label,{htmlFor:E,isFocused:B,centered:k,hasError:F,hasValue:_,disabled:y},v),(q||j)&&d.default.createElement(p,{centered:k,hasError:F},q&&d.default.createElement(b,null,q),j&&j.map($=>d.default.createElement(b,{key:$},$))))};exports.TextField=x,exports.default=x;
|
package/cjs/shared/helpers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.fadedColor=(
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.fadedColor=(r,n)=>{if(!/^#?([0-9A-F]{3}){1,2}$/i.test(r))return r;const e=r.match(r.length<=4?/\w/g:/\w\w/g);if(e){const s=e.map(t=>parseInt(t.length<2?`${t}${t}`:t,16));if(s.every(Number.isInteger)){const[t,a,o]=s;return`rgba(${t}, ${a}, ${o}, ${n||1})`}}return r},exports.generateNameHash=r=>`${r}-${Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10)}`;
|
|
@@ -72,7 +72,9 @@ import r from"react";import o,{css as i}from"styled-components";import{generateN
|
|
|
72
72
|
|
|
73
73
|
${e=>e.isChecked&&e.isDisabled&&$};
|
|
74
74
|
`,E=o.input`
|
|
75
|
-
|
|
75
|
+
position: fixed;
|
|
76
|
+
opacity: 0;
|
|
77
|
+
pointer-events: none;
|
|
76
78
|
`,j=o.span`
|
|
77
79
|
display: flex;
|
|
78
80
|
box-sizing: border-box;
|
|
@@ -89,9 +91,9 @@ import r from"react";import o,{css as i}from"styled-components";import{generateN
|
|
|
89
91
|
position: absolute;
|
|
90
92
|
top: 0;
|
|
91
93
|
left: 0;
|
|
92
|
-
`,
|
|
94
|
+
`,v=o(h)`
|
|
93
95
|
cursor: ${({isDisabled:e})=>e?"default":"pointer"};
|
|
94
96
|
user-select: none;
|
|
95
97
|
color: ${({theme:e,isDisabled:l})=>l?e.colors.text.disabled:e.colors.text.dark};
|
|
96
98
|
margin-left: 0.5rem;
|
|
97
|
-
`,
|
|
99
|
+
`,u=({name:e=p("radio-button"),size:l="regular",checked:s=!1,isDisabled:c=!1,color:a="secondary",onChange:n,label:d,...m})=>r.createElement(z,null,r.createElement(g,{onClick:n,isActive:s,isDisabled:c,color:a},r.createElement(E,{"data-validate":"checked",checked:s,type:"radio",name:e,id:e,onChange:n,disabled:c,"aria-label":e,...m}),r.createElement(B,{size:l,color:a,isChecked:s,isDisabled:c},r.createElement(j,{className:"circle circle--outer"},r.createElement(C,{className:"circle circle--inner"})))),d&&r.createElement(v,{as:"label",htmlFor:e,isDisabled:c},d));export{u as RadioButton,u as default};
|
|
@@ -61,4 +61,4 @@ import o,{useState as B}from"react";import r,{css as m}from"styled-components";i
|
|
|
61
61
|
${({centered:e})=>e&&"width: 100%; text-align: center;"}
|
|
62
62
|
`,g=r.span`
|
|
63
63
|
display: block;
|
|
64
|
-
`,y=({placeholder:e="",isDisabled:t=!1,centered:
|
|
64
|
+
`,y=({placeholder:e="",isDisabled:t=!1,centered:a=!1,hasError:n=!1,className:b,helperText:d,label:i="",onBlur:$=()=>null,onFocus:h=()=>null,forwardRef:k,suffix:u,name:s=w("text-input"),errors:c,...x})=>{const[p,f]=B(!1),F=Boolean(x.value),S=l=>{f(!0),h(l)},v=l=>{f(!1),$(l)};return o.createElement(C,{className:b},o.createElement(L,{isFocused:p,disabled:t,centered:a,hasError:n,hasPlaceholder:!!e},o.createElement(W,{...x,id:s,name:s,"aria-label":s,ref:k,onFocus:S,onBlur:v,disabled:t,placeholder:i&&!p?"":e}),u&&o.createElement(_,null,u)),i&&o.createElement(E,{htmlFor:s,isFocused:p,centered:a,hasError:n,hasValue:F,disabled:t},i),(d||c)&&o.createElement(q,{centered:a,hasError:n},d&&o.createElement(g,null,d),c&&c.map(l=>o.createElement(g,{key:l},l))))};export{y as TextField,y as default};
|
package/esm/shared/helpers.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const c=t=>{const e=Math.random().toString(36).replace(/[^a-z]+/g,"").substr(2,10);return`${t}-${e}`},g=(t,e)=>{if(!/^#?([0-9A-F]{3}){1,2}$/i.test(t))return t;const n=t.match(t.length<=4?/\w/g:/\w\w/g);if(n){const s=n.map(r=>parseInt(r.length<2?`${r}${r}`:r,16));if(s.every(Number.isInteger)){const[r,a,o]=s;return`rgba(${r}, ${a}, ${o}, ${e||1})`}}return t};export{g as fadedColor,c as generateNameHash};
|