@cdx-ui/components 0.0.1-alpha.8 → 0.0.1-alpha.9
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/lib/commonjs/components/Switch/BaseSwitch.js +46 -0
- package/lib/commonjs/components/Switch/BaseSwitch.js.map +1 -0
- package/lib/commonjs/components/Switch/BaseSwitch.web.js +56 -0
- package/lib/commonjs/components/Switch/BaseSwitch.web.js.map +1 -0
- package/lib/commonjs/components/Switch/index.js +13 -0
- package/lib/commonjs/components/Switch/index.js.map +1 -0
- package/lib/commonjs/components/Switch/styles.js +128 -0
- package/lib/commonjs/components/Switch/styles.js.map +1 -0
- package/lib/commonjs/components/index.js +12 -0
- package/lib/commonjs/components/index.js.map +1 -1
- package/lib/module/components/Switch/BaseSwitch.js +42 -0
- package/lib/module/components/Switch/BaseSwitch.js.map +1 -0
- package/lib/module/components/Switch/BaseSwitch.web.js +52 -0
- package/lib/module/components/Switch/BaseSwitch.web.js.map +1 -0
- package/lib/module/components/Switch/index.js +9 -0
- package/lib/module/components/Switch/index.js.map +1 -0
- package/lib/module/components/Switch/styles.js +125 -0
- package/lib/module/components/Switch/styles.js.map +1 -0
- package/lib/module/components/index.js +1 -0
- package/lib/module/components/index.js.map +1 -1
- package/lib/typescript/components/Switch/BaseSwitch.d.ts +9 -0
- package/lib/typescript/components/Switch/BaseSwitch.d.ts.map +1 -0
- package/lib/typescript/components/Switch/BaseSwitch.web.d.ts +15 -0
- package/lib/typescript/components/Switch/BaseSwitch.web.d.ts.map +1 -0
- package/lib/typescript/components/Switch/index.d.ts +8 -0
- package/lib/typescript/components/Switch/index.d.ts.map +1 -0
- package/lib/typescript/components/Switch/styles.d.ts +26 -0
- package/lib/typescript/components/Switch/styles.d.ts.map +1 -0
- package/lib/typescript/components/index.d.ts +1 -0
- package/lib/typescript/components/index.d.ts.map +1 -1
- package/package.json +3 -3
- package/src/components/Switch/BaseSwitch.tsx +38 -0
- package/src/components/Switch/BaseSwitch.web.tsx +69 -0
- package/src/components/Switch/index.tsx +13 -0
- package/src/components/Switch/styles.ts +120 -0
- package/src/components/index.ts +1 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.BaseSwitch = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _utils = require("@cdx-ui/utils");
|
|
10
|
+
var _styles = require("./styles");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
const BaseSwitch = exports.BaseSwitch = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
13
|
+
states,
|
|
14
|
+
className,
|
|
15
|
+
disabled,
|
|
16
|
+
value,
|
|
17
|
+
...props
|
|
18
|
+
}, ref) => {
|
|
19
|
+
const isChecked = value ?? states?.checked ?? false;
|
|
20
|
+
const isDisabled = disabled ?? states?.disabled ?? false;
|
|
21
|
+
const isInvalid = states?.invalid ?? false;
|
|
22
|
+
const uniwindProps = {
|
|
23
|
+
className,
|
|
24
|
+
thumbColorClassName: (0, _utils.cn)((0, _styles.switchThumbColorVariants)({
|
|
25
|
+
isDisabled
|
|
26
|
+
})),
|
|
27
|
+
trackColorOnClassName: (0, _utils.cn)((0, _styles.switchTrackOnVariants)({
|
|
28
|
+
isInvalid
|
|
29
|
+
})),
|
|
30
|
+
trackColorOffClassName: (0, _utils.cn)((0, _styles.switchTrackOffVariants)({
|
|
31
|
+
isInvalid
|
|
32
|
+
})),
|
|
33
|
+
ios_backgroundColorClassName: (0, _utils.cn)((0, _styles.switchIosBgVariants)({
|
|
34
|
+
isInvalid
|
|
35
|
+
}))
|
|
36
|
+
};
|
|
37
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Switch, {
|
|
38
|
+
ref: ref,
|
|
39
|
+
value: isChecked,
|
|
40
|
+
disabled: isDisabled,
|
|
41
|
+
...uniwindProps,
|
|
42
|
+
...props
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
BaseSwitch.displayName = 'BaseSwitch';
|
|
46
|
+
//# sourceMappingURL=BaseSwitch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_utils","_styles","_jsxRuntime","BaseSwitch","exports","forwardRef","states","className","disabled","value","props","ref","isChecked","checked","isDisabled","isInvalid","invalid","uniwindProps","thumbColorClassName","cn","switchThumbColorVariants","trackColorOnClassName","switchTrackOnVariants","trackColorOffClassName","switchTrackOffVariants","ios_backgroundColorClassName","switchIosBgVariants","jsx","Switch","displayName"],"sourceRoot":"../../../../src","sources":["components/Switch/BaseSwitch.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAKkB,IAAAI,WAAA,GAAAJ,OAAA;AASX,MAAMK,UAAU,GAAAC,OAAA,CAAAD,UAAA,gBAAG,IAAAE,iBAAU,EAClC,CAAC;EAAEC,MAAM;EAAEC,SAAS;EAAEC,QAAQ;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EACzD,MAAMC,SAAS,GAAGH,KAAK,IAAIH,MAAM,EAAEO,OAAO,IAAI,KAAK;EACnD,MAAMC,UAAU,GAAGN,QAAQ,IAAIF,MAAM,EAAEE,QAAQ,IAAI,KAAK;EACxD,MAAMO,SAAS,GAAGT,MAAM,EAAEU,OAAO,IAAI,KAAK;EAE1C,MAAMC,YAAgD,GAAG;IACvDV,SAAS;IACTW,mBAAmB,EAAE,IAAAC,SAAE,EAAC,IAAAC,gCAAwB,EAAC;MAAEN;IAAW,CAAC,CAAC,CAAC;IACjEO,qBAAqB,EAAE,IAAAF,SAAE,EAAC,IAAAG,6BAAqB,EAAC;MAAEP;IAAU,CAAC,CAAC,CAAC;IAC/DQ,sBAAsB,EAAE,IAAAJ,SAAE,EAAC,IAAAK,8BAAsB,EAAC;MAAET;IAAU,CAAC,CAAC,CAAC;IACjEU,4BAA4B,EAAE,IAAAN,SAAE,EAAC,IAAAO,2BAAmB,EAAC;MAAEX;IAAU,CAAC,CAAC;EACrE,CAAC;EAED,oBACE,IAAAb,WAAA,CAAAyB,GAAA,EAAC5B,YAAA,CAAA6B,MAAQ;IAACjB,GAAG,EAAEA,GAAI;IAACF,KAAK,EAAEG,SAAU;IAACJ,QAAQ,EAAEM,UAAW;IAAA,GAAKG,YAAY;IAAA,GAAMP;EAAK,CAAG,CAAC;AAE/F,CACF,CAAC;AAEDP,UAAU,CAAC0B,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.BaseSwitch = void 0;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _utils = require("@cdx-ui/utils");
|
|
10
|
+
var _styles = require("./styles");
|
|
11
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
+
const BaseSwitch = exports.BaseSwitch = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
13
|
+
value,
|
|
14
|
+
onValueChange,
|
|
15
|
+
disabled,
|
|
16
|
+
states,
|
|
17
|
+
dataSet,
|
|
18
|
+
className,
|
|
19
|
+
size = 'md',
|
|
20
|
+
onFocus,
|
|
21
|
+
onBlur,
|
|
22
|
+
...props
|
|
23
|
+
}, ref) => {
|
|
24
|
+
const isChecked = value ?? states?.checked ?? false;
|
|
25
|
+
const isDisabled = disabled ?? states?.disabled ?? false;
|
|
26
|
+
const isInvalid = states?.invalid ?? false;
|
|
27
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
28
|
+
ref: ref,
|
|
29
|
+
role: "switch",
|
|
30
|
+
"aria-checked": isChecked,
|
|
31
|
+
"aria-disabled": isDisabled,
|
|
32
|
+
disabled: isDisabled,
|
|
33
|
+
onPress: () => onValueChange?.(!isChecked),
|
|
34
|
+
onFocus: onFocus,
|
|
35
|
+
onBlur: onBlur,
|
|
36
|
+
tabIndex: 0,
|
|
37
|
+
className: (0, _utils.cn)((0, _styles.switchTrackVariants)({
|
|
38
|
+
size
|
|
39
|
+
}), (0, _styles.switchWebTrackColorVariants)({
|
|
40
|
+
isChecked,
|
|
41
|
+
isInvalid
|
|
42
|
+
}), className)
|
|
43
|
+
// @ts-expect-error dataSet is a RNW/Uniwind prop not in Pressable types
|
|
44
|
+
,
|
|
45
|
+
dataSet: dataSet,
|
|
46
|
+
...props,
|
|
47
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
48
|
+
className: (0, _utils.cn)((0, _styles.switchThumbVariants)({
|
|
49
|
+
size,
|
|
50
|
+
isChecked
|
|
51
|
+
}))
|
|
52
|
+
})
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
BaseSwitch.displayName = 'BaseSwitch';
|
|
56
|
+
//# sourceMappingURL=BaseSwitch.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_utils","_styles","_jsxRuntime","BaseSwitch","exports","forwardRef","value","onValueChange","disabled","states","dataSet","className","size","onFocus","onBlur","props","ref","isChecked","checked","isDisabled","isInvalid","invalid","jsx","Pressable","role","onPress","tabIndex","cn","switchTrackVariants","switchWebTrackColorVariants","children","View","switchThumbVariants","displayName"],"sourceRoot":"../../../../src","sources":["components/Switch/BaseSwitch.web.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAH,OAAA;AAKkB,IAAAI,WAAA,GAAAJ,OAAA;AAcX,MAAMK,UAAU,GAAAC,OAAA,CAAAD,UAAA,gBAAG,IAAAE,iBAAU,EAClC,CACE;EACEC,KAAK;EACLC,aAAa;EACbC,QAAQ;EACRC,MAAM;EACNC,OAAO;EACPC,SAAS;EACTC,IAAI,GAAG,IAAI;EACXC,OAAO;EACPC,MAAM;EACN,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAMC,SAAS,GAAGX,KAAK,IAAIG,MAAM,EAAES,OAAO,IAAI,KAAK;EACnD,MAAMC,UAAU,GAAGX,QAAQ,IAAIC,MAAM,EAAED,QAAQ,IAAI,KAAK;EACxD,MAAMY,SAAS,GAAGX,MAAM,EAAEY,OAAO,IAAI,KAAK;EAE1C,oBACE,IAAAnB,WAAA,CAAAoB,GAAA,EAACvB,YAAA,CAAAwB,SAAS;IACRP,GAAG,EAAEA,GAAI;IACTQ,IAAI,EAAC,QAAQ;IACb,gBAAcP,SAAU;IACxB,iBAAeE,UAAW;IAC1BX,QAAQ,EAAEW,UAAW;IACrBM,OAAO,EAAEA,CAAA,KAAMlB,aAAa,GAAG,CAACU,SAAS,CAAE;IAC3CJ,OAAO,EAAEA,OAAQ;IACjBC,MAAM,EAAEA,MAAO;IACfY,QAAQ,EAAE,CAAE;IACZf,SAAS,EAAE,IAAAgB,SAAE,EACX,IAAAC,2BAAmB,EAAC;MAAEhB;IAAK,CAAC,CAAC,EAC7B,IAAAiB,mCAA2B,EAAC;MAAEZ,SAAS;MAAEG;IAAU,CAAC,CAAC,EACrDT,SACF;IACA;IAAA;IACAD,OAAO,EAAEA,OAAQ;IAAA,GACbK,KAAK;IAAAe,QAAA,eAET,IAAA5B,WAAA,CAAAoB,GAAA,EAACvB,YAAA,CAAAgC,IAAI;MAACpB,SAAS,EAAE,IAAAgB,SAAE,EAAC,IAAAK,2BAAmB,EAAC;QAAEpB,IAAI;QAAEK;MAAU,CAAC,CAAC;IAAE,CAAE;EAAC,CACxD,CAAC;AAEhB,CACF,CAAC;AAEDd,UAAU,CAAC8B,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Switch = void 0;
|
|
7
|
+
var _primitives = require("@cdx-ui/primitives");
|
|
8
|
+
var _BaseSwitch = require("./BaseSwitch");
|
|
9
|
+
const SwitchPrimitive = (0, _primitives.createSwitch)({
|
|
10
|
+
Root: _BaseSwitch.BaseSwitch
|
|
11
|
+
});
|
|
12
|
+
const Switch = exports.Switch = SwitchPrimitive;
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_primitives","require","_BaseSwitch","SwitchPrimitive","createSwitch","Root","BaseSwitch","Switch","exports"],"sourceRoot":"../../../../src","sources":["components/Switch/index.tsx"],"mappings":";;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AAGA,MAAME,eAAe,GAAG,IAAAC,wBAAY,EAAC;EAAEC,IAAI,EAAEC;AAAW,CAAC,CAAC;AAMnD,MAAMC,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAGJ,eAAe","ignoreList":[]}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.switchWebTrackColorVariants = exports.switchTrackVariants = exports.switchTrackOnVariants = exports.switchTrackOffVariants = exports.switchThumbVariants = exports.switchThumbColorVariants = exports.switchIosBgVariants = void 0;
|
|
7
|
+
var _classVarianceAuthority = require("class-variance-authority");
|
|
8
|
+
// =============================================================================
|
|
9
|
+
// NATIVE — Uniwind className bindings for RN Switch
|
|
10
|
+
// =============================================================================
|
|
11
|
+
|
|
12
|
+
const switchThumbColorVariants = exports.switchThumbColorVariants = (0, _classVarianceAuthority.cva)(['accent-white'], {
|
|
13
|
+
variants: {
|
|
14
|
+
isDisabled: {
|
|
15
|
+
true: 'accent-gray-200',
|
|
16
|
+
false: ''
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
defaultVariants: {
|
|
20
|
+
isDisabled: false
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
const switchTrackOnVariants = exports.switchTrackOnVariants = (0, _classVarianceAuthority.cva)(['accent-blue-500'], {
|
|
24
|
+
variants: {
|
|
25
|
+
isInvalid: {
|
|
26
|
+
true: 'accent-red-500',
|
|
27
|
+
false: ''
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
defaultVariants: {
|
|
31
|
+
isInvalid: false
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
const switchTrackOffVariants = exports.switchTrackOffVariants = (0, _classVarianceAuthority.cva)(['accent-gray-300'], {
|
|
35
|
+
variants: {
|
|
36
|
+
isInvalid: {
|
|
37
|
+
true: 'accent-red-300',
|
|
38
|
+
false: ''
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
defaultVariants: {
|
|
42
|
+
isInvalid: false
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
const switchIosBgVariants = exports.switchIosBgVariants = (0, _classVarianceAuthority.cva)(['accent-gray-300'], {
|
|
46
|
+
variants: {
|
|
47
|
+
isInvalid: {
|
|
48
|
+
true: 'accent-red-300',
|
|
49
|
+
false: ''
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
defaultVariants: {
|
|
53
|
+
isInvalid: false
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
// =============================================================================
|
|
58
|
+
// WEB — Tailwind classes for custom Pressable toggle
|
|
59
|
+
// =============================================================================
|
|
60
|
+
|
|
61
|
+
const switchTrackVariants = exports.switchTrackVariants = (0, _classVarianceAuthority.cva)(['flex-row items-center rounded-full cursor-pointer', 'transition-colors duration-200', 'data-[disabled=true]:opacity-50 data-[disabled=true]:cursor-not-allowed', 'web:data-[focus-visible=true]:ring-3 web:data-[focus-visible=true]:ring-blue-300/50', 'web:data-[invalid=true]:data-[focus-visible=true]:ring-red-300/50'], {
|
|
62
|
+
variants: {
|
|
63
|
+
size: {
|
|
64
|
+
sm: 'w-9 h-5 p-0.5',
|
|
65
|
+
md: 'w-11 h-6 p-0.5',
|
|
66
|
+
lg: 'w-14 h-8 p-1'
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
defaultVariants: {
|
|
70
|
+
size: 'md'
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
const switchWebTrackColorVariants = exports.switchWebTrackColorVariants = (0, _classVarianceAuthority.cva)([], {
|
|
74
|
+
variants: {
|
|
75
|
+
isChecked: {
|
|
76
|
+
true: 'bg-blue-500 data-[hover=true]:bg-blue-600',
|
|
77
|
+
false: 'bg-gray-300 data-[hover=true]:bg-gray-400'
|
|
78
|
+
},
|
|
79
|
+
isInvalid: {
|
|
80
|
+
true: '',
|
|
81
|
+
false: ''
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
compoundVariants: [{
|
|
85
|
+
isChecked: true,
|
|
86
|
+
isInvalid: true,
|
|
87
|
+
className: 'bg-red-500 data-[hover=true]:bg-red-600'
|
|
88
|
+
}, {
|
|
89
|
+
isChecked: false,
|
|
90
|
+
isInvalid: true,
|
|
91
|
+
className: 'bg-red-300 data-[hover=true]:bg-red-400'
|
|
92
|
+
}],
|
|
93
|
+
defaultVariants: {
|
|
94
|
+
isChecked: false,
|
|
95
|
+
isInvalid: false
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
const switchThumbVariants = exports.switchThumbVariants = (0, _classVarianceAuthority.cva)(['rounded-full bg-white shadow-sm', 'transition-transform duration-200'], {
|
|
99
|
+
variants: {
|
|
100
|
+
size: {
|
|
101
|
+
sm: 'w-4 h-4',
|
|
102
|
+
md: 'w-5 h-5',
|
|
103
|
+
lg: 'w-6 h-6'
|
|
104
|
+
},
|
|
105
|
+
isChecked: {
|
|
106
|
+
true: '',
|
|
107
|
+
false: 'translate-x-0'
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
compoundVariants: [{
|
|
111
|
+
size: 'sm',
|
|
112
|
+
isChecked: true,
|
|
113
|
+
className: 'translate-x-4'
|
|
114
|
+
}, {
|
|
115
|
+
size: 'md',
|
|
116
|
+
isChecked: true,
|
|
117
|
+
className: 'translate-x-5'
|
|
118
|
+
}, {
|
|
119
|
+
size: 'lg',
|
|
120
|
+
isChecked: true,
|
|
121
|
+
className: 'translate-x-6'
|
|
122
|
+
}],
|
|
123
|
+
defaultVariants: {
|
|
124
|
+
size: 'md',
|
|
125
|
+
isChecked: false
|
|
126
|
+
}
|
|
127
|
+
});
|
|
128
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_classVarianceAuthority","require","switchThumbColorVariants","exports","cva","variants","isDisabled","true","false","defaultVariants","switchTrackOnVariants","isInvalid","switchTrackOffVariants","switchIosBgVariants","switchTrackVariants","size","sm","md","lg","switchWebTrackColorVariants","isChecked","compoundVariants","className","switchThumbVariants"],"sourceRoot":"../../../../src","sources":["components/Switch/styles.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -79,6 +79,18 @@ Object.keys(_Select).forEach(function (key) {
|
|
|
79
79
|
}
|
|
80
80
|
});
|
|
81
81
|
});
|
|
82
|
+
var _Switch = require("./Switch");
|
|
83
|
+
Object.keys(_Switch).forEach(function (key) {
|
|
84
|
+
if (key === "default" || key === "__esModule") return;
|
|
85
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
86
|
+
if (key in exports && exports[key] === _Switch[key]) return;
|
|
87
|
+
Object.defineProperty(exports, key, {
|
|
88
|
+
enumerable: true,
|
|
89
|
+
get: function () {
|
|
90
|
+
return _Switch[key];
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
});
|
|
82
94
|
var _Stack = require("./Stack");
|
|
83
95
|
var _Text = require("./Text");
|
|
84
96
|
Object.keys(_Text).forEach(function (key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Box","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Button","_Checkbox","_Input","_Select","_Stack","_Text"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,IAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAL,IAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAb,IAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,OAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,OAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAS,OAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,OAAA,CAAAT,GAAA;IAAA;EAAA;AAAA;AACA,IAAAU,SAAA,GAAAd,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAY,SAAA,EAAAX,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAU,SAAA,CAAAV,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,SAAA,CAAAV,GAAA;IAAA;EAAA;AAAA;AACA,IAAAW,MAAA,GAAAf,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAa,MAAA,EAAAZ,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAW,MAAA,CAAAX,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,MAAA,CAAAX,GAAA;IAAA;EAAA;AAAA;AACA,IAAAY,OAAA,GAAAhB,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAc,OAAA,EAAAb,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAY,OAAA,CAAAZ,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,OAAA,CAAAZ,GAAA;IAAA;EAAA;AAAA;AACA,IAAAa,
|
|
1
|
+
{"version":3,"names":["_Box","require","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","_Button","_Checkbox","_Input","_Select","_Switch","_Stack","_Text"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { Switch as RNSwitch } from 'react-native';
|
|
5
|
+
import { cn } from '@cdx-ui/utils';
|
|
6
|
+
import { switchIosBgVariants, switchThumbColorVariants, switchTrackOffVariants, switchTrackOnVariants } from './styles';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
export const BaseSwitch = /*#__PURE__*/forwardRef(({
|
|
9
|
+
states,
|
|
10
|
+
className,
|
|
11
|
+
disabled,
|
|
12
|
+
value,
|
|
13
|
+
...props
|
|
14
|
+
}, ref) => {
|
|
15
|
+
const isChecked = value ?? states?.checked ?? false;
|
|
16
|
+
const isDisabled = disabled ?? states?.disabled ?? false;
|
|
17
|
+
const isInvalid = states?.invalid ?? false;
|
|
18
|
+
const uniwindProps = {
|
|
19
|
+
className,
|
|
20
|
+
thumbColorClassName: cn(switchThumbColorVariants({
|
|
21
|
+
isDisabled
|
|
22
|
+
})),
|
|
23
|
+
trackColorOnClassName: cn(switchTrackOnVariants({
|
|
24
|
+
isInvalid
|
|
25
|
+
})),
|
|
26
|
+
trackColorOffClassName: cn(switchTrackOffVariants({
|
|
27
|
+
isInvalid
|
|
28
|
+
})),
|
|
29
|
+
ios_backgroundColorClassName: cn(switchIosBgVariants({
|
|
30
|
+
isInvalid
|
|
31
|
+
}))
|
|
32
|
+
};
|
|
33
|
+
return /*#__PURE__*/_jsx(RNSwitch, {
|
|
34
|
+
ref: ref,
|
|
35
|
+
value: isChecked,
|
|
36
|
+
disabled: isDisabled,
|
|
37
|
+
...uniwindProps,
|
|
38
|
+
...props
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
BaseSwitch.displayName = 'BaseSwitch';
|
|
42
|
+
//# sourceMappingURL=BaseSwitch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","Switch","RNSwitch","cn","switchIosBgVariants","switchThumbColorVariants","switchTrackOffVariants","switchTrackOnVariants","jsx","_jsx","BaseSwitch","states","className","disabled","value","props","ref","isChecked","checked","isDisabled","isInvalid","invalid","uniwindProps","thumbColorClassName","trackColorOnClassName","trackColorOffClassName","ios_backgroundColorClassName","displayName"],"sourceRoot":"../../../../src","sources":["components/Switch/BaseSwitch.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,MAAM,IAAIC,QAAQ,QAA0B,cAAc;AACnE,SAASC,EAAE,QAAQ,eAAe;AAClC,SACEC,mBAAmB,EACnBC,wBAAwB,EACxBC,sBAAsB,EACtBC,qBAAqB,QAChB,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASlB,OAAO,MAAMC,UAAU,gBAAGV,UAAU,CAClC,CAAC;EAAEW,MAAM;EAAEC,SAAS;EAAEC,QAAQ;EAAEC,KAAK;EAAE,GAAGC;AAAM,CAAC,EAAEC,GAAG,KAAK;EACzD,MAAMC,SAAS,GAAGH,KAAK,IAAIH,MAAM,EAAEO,OAAO,IAAI,KAAK;EACnD,MAAMC,UAAU,GAAGN,QAAQ,IAAIF,MAAM,EAAEE,QAAQ,IAAI,KAAK;EACxD,MAAMO,SAAS,GAAGT,MAAM,EAAEU,OAAO,IAAI,KAAK;EAE1C,MAAMC,YAAgD,GAAG;IACvDV,SAAS;IACTW,mBAAmB,EAAEpB,EAAE,CAACE,wBAAwB,CAAC;MAAEc;IAAW,CAAC,CAAC,CAAC;IACjEK,qBAAqB,EAAErB,EAAE,CAACI,qBAAqB,CAAC;MAAEa;IAAU,CAAC,CAAC,CAAC;IAC/DK,sBAAsB,EAAEtB,EAAE,CAACG,sBAAsB,CAAC;MAAEc;IAAU,CAAC,CAAC,CAAC;IACjEM,4BAA4B,EAAEvB,EAAE,CAACC,mBAAmB,CAAC;MAAEgB;IAAU,CAAC,CAAC;EACrE,CAAC;EAED,oBACEX,IAAA,CAACP,QAAQ;IAACc,GAAG,EAAEA,GAAI;IAACF,KAAK,EAAEG,SAAU;IAACJ,QAAQ,EAAEM,UAAW;IAAA,GAAKG,YAAY;IAAA,GAAMP;EAAK,CAAG,CAAC;AAE/F,CACF,CAAC;AAEDL,UAAU,CAACiB,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { forwardRef } from 'react';
|
|
4
|
+
import { Pressable, View } from 'react-native';
|
|
5
|
+
import { cn } from '@cdx-ui/utils';
|
|
6
|
+
import { switchThumbVariants, switchTrackVariants, switchWebTrackColorVariants } from './styles';
|
|
7
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
|
+
export const BaseSwitch = /*#__PURE__*/forwardRef(({
|
|
9
|
+
value,
|
|
10
|
+
onValueChange,
|
|
11
|
+
disabled,
|
|
12
|
+
states,
|
|
13
|
+
dataSet,
|
|
14
|
+
className,
|
|
15
|
+
size = 'md',
|
|
16
|
+
onFocus,
|
|
17
|
+
onBlur,
|
|
18
|
+
...props
|
|
19
|
+
}, ref) => {
|
|
20
|
+
const isChecked = value ?? states?.checked ?? false;
|
|
21
|
+
const isDisabled = disabled ?? states?.disabled ?? false;
|
|
22
|
+
const isInvalid = states?.invalid ?? false;
|
|
23
|
+
return /*#__PURE__*/_jsx(Pressable, {
|
|
24
|
+
ref: ref,
|
|
25
|
+
role: "switch",
|
|
26
|
+
"aria-checked": isChecked,
|
|
27
|
+
"aria-disabled": isDisabled,
|
|
28
|
+
disabled: isDisabled,
|
|
29
|
+
onPress: () => onValueChange?.(!isChecked),
|
|
30
|
+
onFocus: onFocus,
|
|
31
|
+
onBlur: onBlur,
|
|
32
|
+
tabIndex: 0,
|
|
33
|
+
className: cn(switchTrackVariants({
|
|
34
|
+
size
|
|
35
|
+
}), switchWebTrackColorVariants({
|
|
36
|
+
isChecked,
|
|
37
|
+
isInvalid
|
|
38
|
+
}), className)
|
|
39
|
+
// @ts-expect-error dataSet is a RNW/Uniwind prop not in Pressable types
|
|
40
|
+
,
|
|
41
|
+
dataSet: dataSet,
|
|
42
|
+
...props,
|
|
43
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
44
|
+
className: cn(switchThumbVariants({
|
|
45
|
+
size,
|
|
46
|
+
isChecked
|
|
47
|
+
}))
|
|
48
|
+
})
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
BaseSwitch.displayName = 'BaseSwitch';
|
|
52
|
+
//# sourceMappingURL=BaseSwitch.web.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["forwardRef","Pressable","View","cn","switchThumbVariants","switchTrackVariants","switchWebTrackColorVariants","jsx","_jsx","BaseSwitch","value","onValueChange","disabled","states","dataSet","className","size","onFocus","onBlur","props","ref","isChecked","checked","isDisabled","isInvalid","invalid","role","onPress","tabIndex","children","displayName"],"sourceRoot":"../../../../src","sources":["components/Switch/BaseSwitch.web.tsx"],"mappings":";;AAAA,SAASA,UAAU,QAAQ,OAAO;AAClC,SAASC,SAAS,EAAEC,IAAI,QAAQ,cAAc;AAC9C,SAASC,EAAE,QAAQ,eAAe;AAClC,SACEC,mBAAmB,EACnBC,mBAAmB,EACnBC,2BAA2B,QAEtB,UAAU;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAclB,OAAO,MAAMC,UAAU,gBAAGT,UAAU,CAClC,CACE;EACEU,KAAK;EACLC,aAAa;EACbC,QAAQ;EACRC,MAAM;EACNC,OAAO;EACPC,SAAS;EACTC,IAAI,GAAG,IAAI;EACXC,OAAO;EACPC,MAAM;EACN,GAAGC;AACL,CAAC,EACDC,GAAG,KACA;EACH,MAAMC,SAAS,GAAGX,KAAK,IAAIG,MAAM,EAAES,OAAO,IAAI,KAAK;EACnD,MAAMC,UAAU,GAAGX,QAAQ,IAAIC,MAAM,EAAED,QAAQ,IAAI,KAAK;EACxD,MAAMY,SAAS,GAAGX,MAAM,EAAEY,OAAO,IAAI,KAAK;EAE1C,oBACEjB,IAAA,CAACP,SAAS;IACRmB,GAAG,EAAEA,GAAI;IACTM,IAAI,EAAC,QAAQ;IACb,gBAAcL,SAAU;IACxB,iBAAeE,UAAW;IAC1BX,QAAQ,EAAEW,UAAW;IACrBI,OAAO,EAAEA,CAAA,KAAMhB,aAAa,GAAG,CAACU,SAAS,CAAE;IAC3CJ,OAAO,EAAEA,OAAQ;IACjBC,MAAM,EAAEA,MAAO;IACfU,QAAQ,EAAE,CAAE;IACZb,SAAS,EAAEZ,EAAE,CACXE,mBAAmB,CAAC;MAAEW;IAAK,CAAC,CAAC,EAC7BV,2BAA2B,CAAC;MAAEe,SAAS;MAAEG;IAAU,CAAC,CAAC,EACrDT,SACF;IACA;IAAA;IACAD,OAAO,EAAEA,OAAQ;IAAA,GACbK,KAAK;IAAAU,QAAA,eAETrB,IAAA,CAACN,IAAI;MAACa,SAAS,EAAEZ,EAAE,CAACC,mBAAmB,CAAC;QAAEY,IAAI;QAAEK;MAAU,CAAC,CAAC;IAAE,CAAE;EAAC,CACxD,CAAC;AAEhB,CACF,CAAC;AAEDZ,UAAU,CAACqB,WAAW,GAAG,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createSwitch","BaseSwitch","SwitchPrimitive","Root","Switch"],"sourceRoot":"../../../../src","sources":["components/Switch/index.tsx"],"mappings":";;AAAA,SAA4BA,YAAY,QAAQ,oBAAoB;AACpE,SAASC,UAAU,QAAQ,cAAc;AAGzC,MAAMC,eAAe,GAAGF,YAAY,CAAC;EAAEG,IAAI,EAAEF;AAAW,CAAC,CAAC;AAM1D,OAAO,MAAMG,MAAM,GAAGF,eAAe","ignoreList":[]}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
|
|
5
|
+
// =============================================================================
|
|
6
|
+
// NATIVE — Uniwind className bindings for RN Switch
|
|
7
|
+
// =============================================================================
|
|
8
|
+
|
|
9
|
+
export const switchThumbColorVariants = cva(['accent-white'], {
|
|
10
|
+
variants: {
|
|
11
|
+
isDisabled: {
|
|
12
|
+
true: 'accent-gray-200',
|
|
13
|
+
false: ''
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
isDisabled: false
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
export const switchTrackOnVariants = cva(['accent-blue-500'], {
|
|
21
|
+
variants: {
|
|
22
|
+
isInvalid: {
|
|
23
|
+
true: 'accent-red-500',
|
|
24
|
+
false: ''
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
defaultVariants: {
|
|
28
|
+
isInvalid: false
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
export const switchTrackOffVariants = cva(['accent-gray-300'], {
|
|
32
|
+
variants: {
|
|
33
|
+
isInvalid: {
|
|
34
|
+
true: 'accent-red-300',
|
|
35
|
+
false: ''
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
defaultVariants: {
|
|
39
|
+
isInvalid: false
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
export const switchIosBgVariants = cva(['accent-gray-300'], {
|
|
43
|
+
variants: {
|
|
44
|
+
isInvalid: {
|
|
45
|
+
true: 'accent-red-300',
|
|
46
|
+
false: ''
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
defaultVariants: {
|
|
50
|
+
isInvalid: false
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
// =============================================================================
|
|
55
|
+
// WEB — Tailwind classes for custom Pressable toggle
|
|
56
|
+
// =============================================================================
|
|
57
|
+
|
|
58
|
+
export const switchTrackVariants = cva(['flex-row items-center rounded-full cursor-pointer', 'transition-colors duration-200', 'data-[disabled=true]:opacity-50 data-[disabled=true]:cursor-not-allowed', 'web:data-[focus-visible=true]:ring-3 web:data-[focus-visible=true]:ring-blue-300/50', 'web:data-[invalid=true]:data-[focus-visible=true]:ring-red-300/50'], {
|
|
59
|
+
variants: {
|
|
60
|
+
size: {
|
|
61
|
+
sm: 'w-9 h-5 p-0.5',
|
|
62
|
+
md: 'w-11 h-6 p-0.5',
|
|
63
|
+
lg: 'w-14 h-8 p-1'
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
defaultVariants: {
|
|
67
|
+
size: 'md'
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
export const switchWebTrackColorVariants = cva([], {
|
|
71
|
+
variants: {
|
|
72
|
+
isChecked: {
|
|
73
|
+
true: 'bg-blue-500 data-[hover=true]:bg-blue-600',
|
|
74
|
+
false: 'bg-gray-300 data-[hover=true]:bg-gray-400'
|
|
75
|
+
},
|
|
76
|
+
isInvalid: {
|
|
77
|
+
true: '',
|
|
78
|
+
false: ''
|
|
79
|
+
}
|
|
80
|
+
},
|
|
81
|
+
compoundVariants: [{
|
|
82
|
+
isChecked: true,
|
|
83
|
+
isInvalid: true,
|
|
84
|
+
className: 'bg-red-500 data-[hover=true]:bg-red-600'
|
|
85
|
+
}, {
|
|
86
|
+
isChecked: false,
|
|
87
|
+
isInvalid: true,
|
|
88
|
+
className: 'bg-red-300 data-[hover=true]:bg-red-400'
|
|
89
|
+
}],
|
|
90
|
+
defaultVariants: {
|
|
91
|
+
isChecked: false,
|
|
92
|
+
isInvalid: false
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
export const switchThumbVariants = cva(['rounded-full bg-white shadow-sm', 'transition-transform duration-200'], {
|
|
96
|
+
variants: {
|
|
97
|
+
size: {
|
|
98
|
+
sm: 'w-4 h-4',
|
|
99
|
+
md: 'w-5 h-5',
|
|
100
|
+
lg: 'w-6 h-6'
|
|
101
|
+
},
|
|
102
|
+
isChecked: {
|
|
103
|
+
true: '',
|
|
104
|
+
false: 'translate-x-0'
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
compoundVariants: [{
|
|
108
|
+
size: 'sm',
|
|
109
|
+
isChecked: true,
|
|
110
|
+
className: 'translate-x-4'
|
|
111
|
+
}, {
|
|
112
|
+
size: 'md',
|
|
113
|
+
isChecked: true,
|
|
114
|
+
className: 'translate-x-5'
|
|
115
|
+
}, {
|
|
116
|
+
size: 'lg',
|
|
117
|
+
isChecked: true,
|
|
118
|
+
className: 'translate-x-6'
|
|
119
|
+
}],
|
|
120
|
+
defaultVariants: {
|
|
121
|
+
size: 'md',
|
|
122
|
+
isChecked: false
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["cva","switchThumbColorVariants","variants","isDisabled","true","false","defaultVariants","switchTrackOnVariants","isInvalid","switchTrackOffVariants","switchIosBgVariants","switchTrackVariants","size","sm","md","lg","switchWebTrackColorVariants","isChecked","compoundVariants","className","switchThumbVariants"],"sourceRoot":"../../../../src","sources":["components/Switch/styles.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HStack","VStack"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,YAAY;AAC1B,cAAc,SAAS;AACvB,cAAc,UAAU;AACxB,SAASA,MAAM,EAAEC,MAAM,QAAQ,SAAS;AACxC,cAAc,QAAQ","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["HStack","VStack"],"sourceRoot":"../../../src","sources":["components/index.ts"],"mappings":";;AAAA,cAAc,OAAO;AACrB,cAAc,UAAU;AACxB,cAAc,YAAY;AAC1B,cAAc,SAAS;AACvB,cAAc,UAAU;AACxB,cAAc,UAAU;AACxB,SAASA,MAAM,EAAEC,MAAM,QAAQ,SAAS;AACxC,cAAc,QAAQ","ignoreList":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Switch as RNSwitch, type SwitchProps } from 'react-native';
|
|
2
|
+
export interface BaseSwitchProps extends Omit<SwitchProps, 'className'> {
|
|
3
|
+
states?: Record<string, boolean | undefined>;
|
|
4
|
+
dataSet?: Record<string, string>;
|
|
5
|
+
className?: string;
|
|
6
|
+
size?: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const BaseSwitch: import("react").ForwardRefExoticComponent<BaseSwitchProps & import("react").RefAttributes<RNSwitch>>;
|
|
9
|
+
//# sourceMappingURL=BaseSwitch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseSwitch.d.ts","sourceRoot":"","sources":["../../../../src/components/Switch/BaseSwitch.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AASpE,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,eAAO,MAAM,UAAU,sGAkBtB,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { View } from 'react-native';
|
|
2
|
+
import { type SwitchVariantProps } from './styles';
|
|
3
|
+
export interface BaseSwitchProps {
|
|
4
|
+
value?: boolean;
|
|
5
|
+
onValueChange?: (value: boolean) => void;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
states?: Record<string, boolean | undefined>;
|
|
8
|
+
dataSet?: Record<string, string>;
|
|
9
|
+
className?: string;
|
|
10
|
+
size?: SwitchVariantProps['size'];
|
|
11
|
+
onFocus?: () => void;
|
|
12
|
+
onBlur?: () => void;
|
|
13
|
+
}
|
|
14
|
+
export declare const BaseSwitch: import("react").ForwardRefExoticComponent<BaseSwitchProps & import("react").RefAttributes<View>>;
|
|
15
|
+
//# sourceMappingURL=BaseSwitch.web.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseSwitch.web.d.ts","sourceRoot":"","sources":["../../../../src/components/Switch/BaseSwitch.web.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,IAAI,EAAE,MAAM,cAAc,CAAC;AAE/C,OAAO,EAIL,KAAK,kBAAkB,EACxB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACzC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC,CAAC;IAC7C,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,kGA4CtB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type ISwitchProps } from '@cdx-ui/primitives';
|
|
2
|
+
import type { SwitchVariantProps } from './styles';
|
|
3
|
+
export interface SwitchProps extends ISwitchProps, SwitchVariantProps {
|
|
4
|
+
className?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare const Switch: import("@cdx-ui/primitives").ISwitchComponentType<import("./BaseSwitch").BaseSwitchProps & import("react").RefAttributes<import("react-native").Switch>, unknown>;
|
|
7
|
+
export type { SwitchVariantProps };
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/Switch/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAgB,MAAM,oBAAoB,CAAC;AAErE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAInD,MAAM,WAAW,WAAY,SAAQ,YAAY,EAAE,kBAAkB;IACnE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,MAAM,mKAAkB,CAAC;AAEtC,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
2
|
+
export declare const switchThumbColorVariants: (props?: ({
|
|
3
|
+
isDisabled?: boolean | null | undefined;
|
|
4
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
5
|
+
export declare const switchTrackOnVariants: (props?: ({
|
|
6
|
+
isInvalid?: boolean | null | undefined;
|
|
7
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
+
export declare const switchTrackOffVariants: (props?: ({
|
|
9
|
+
isInvalid?: boolean | null | undefined;
|
|
10
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
11
|
+
export declare const switchIosBgVariants: (props?: ({
|
|
12
|
+
isInvalid?: boolean | null | undefined;
|
|
13
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
14
|
+
export declare const switchTrackVariants: (props?: ({
|
|
15
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
16
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
17
|
+
export declare const switchWebTrackColorVariants: (props?: ({
|
|
18
|
+
isChecked?: boolean | null | undefined;
|
|
19
|
+
isInvalid?: boolean | null | undefined;
|
|
20
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
21
|
+
export declare const switchThumbVariants: (props?: ({
|
|
22
|
+
size?: "sm" | "md" | "lg" | null | undefined;
|
|
23
|
+
isChecked?: boolean | null | undefined;
|
|
24
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
25
|
+
export type SwitchVariantProps = VariantProps<typeof switchTrackVariants>;
|
|
26
|
+
//# sourceMappingURL=styles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../src/components/Switch/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAMlE,eAAO,MAAM,wBAAwB;;8EAQnC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;8EAQhC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;8EAQjC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;8EAQ9B,CAAC;AAMH,eAAO,MAAM,mBAAmB;;8EAoB/B,CAAC;AAEF,eAAO,MAAM,2BAA2B;;;8EAmBtC,CAAC;AAEH,eAAO,MAAM,mBAAmB;;;8EAwB/B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACzC,cAAc,QAAQ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACzC,cAAc,QAAQ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cdx-ui/components",
|
|
3
|
-
"version": "0.0.1-alpha.
|
|
3
|
+
"version": "0.0.1-alpha.9",
|
|
4
4
|
"main": "lib/commonjs/index.js",
|
|
5
5
|
"module": "lib/module/index.js",
|
|
6
6
|
"react-native": "src/index.ts",
|
|
@@ -60,8 +60,8 @@
|
|
|
60
60
|
"dependencies": {
|
|
61
61
|
"class-variance-authority": "^0.7.1",
|
|
62
62
|
"uniwind": "1.4.1",
|
|
63
|
-
"@cdx-ui/primitives": "0.0.1-alpha.
|
|
64
|
-
"@cdx-ui/utils": "0.0.1-alpha.
|
|
63
|
+
"@cdx-ui/primitives": "0.0.1-alpha.9",
|
|
64
|
+
"@cdx-ui/utils": "0.0.1-alpha.9"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
67
67
|
"@types/react": "*",
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import { Switch as RNSwitch, type SwitchProps } from 'react-native';
|
|
3
|
+
import { cn } from '@cdx-ui/utils';
|
|
4
|
+
import {
|
|
5
|
+
switchIosBgVariants,
|
|
6
|
+
switchThumbColorVariants,
|
|
7
|
+
switchTrackOffVariants,
|
|
8
|
+
switchTrackOnVariants,
|
|
9
|
+
} from './styles';
|
|
10
|
+
|
|
11
|
+
export interface BaseSwitchProps extends Omit<SwitchProps, 'className'> {
|
|
12
|
+
states?: Record<string, boolean | undefined>;
|
|
13
|
+
dataSet?: Record<string, string>;
|
|
14
|
+
className?: string;
|
|
15
|
+
size?: string;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export const BaseSwitch = forwardRef<RNSwitch, BaseSwitchProps>(
|
|
19
|
+
({ states, className, disabled, value, ...props }, ref) => {
|
|
20
|
+
const isChecked = value ?? states?.checked ?? false;
|
|
21
|
+
const isDisabled = disabled ?? states?.disabled ?? false;
|
|
22
|
+
const isInvalid = states?.invalid ?? false;
|
|
23
|
+
|
|
24
|
+
const uniwindProps: Record<string, string | undefined> = {
|
|
25
|
+
className,
|
|
26
|
+
thumbColorClassName: cn(switchThumbColorVariants({ isDisabled })),
|
|
27
|
+
trackColorOnClassName: cn(switchTrackOnVariants({ isInvalid })),
|
|
28
|
+
trackColorOffClassName: cn(switchTrackOffVariants({ isInvalid })),
|
|
29
|
+
ios_backgroundColorClassName: cn(switchIosBgVariants({ isInvalid })),
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
return (
|
|
33
|
+
<RNSwitch ref={ref} value={isChecked} disabled={isDisabled} {...uniwindProps} {...props} />
|
|
34
|
+
);
|
|
35
|
+
},
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
BaseSwitch.displayName = 'BaseSwitch';
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { forwardRef } from 'react';
|
|
2
|
+
import { Pressable, View } from 'react-native';
|
|
3
|
+
import { cn } from '@cdx-ui/utils';
|
|
4
|
+
import {
|
|
5
|
+
switchThumbVariants,
|
|
6
|
+
switchTrackVariants,
|
|
7
|
+
switchWebTrackColorVariants,
|
|
8
|
+
type SwitchVariantProps,
|
|
9
|
+
} from './styles';
|
|
10
|
+
|
|
11
|
+
export interface BaseSwitchProps {
|
|
12
|
+
value?: boolean;
|
|
13
|
+
onValueChange?: (value: boolean) => void;
|
|
14
|
+
disabled?: boolean;
|
|
15
|
+
states?: Record<string, boolean | undefined>;
|
|
16
|
+
dataSet?: Record<string, string>;
|
|
17
|
+
className?: string;
|
|
18
|
+
size?: SwitchVariantProps['size'];
|
|
19
|
+
onFocus?: () => void;
|
|
20
|
+
onBlur?: () => void;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export const BaseSwitch = forwardRef<View, BaseSwitchProps>(
|
|
24
|
+
(
|
|
25
|
+
{
|
|
26
|
+
value,
|
|
27
|
+
onValueChange,
|
|
28
|
+
disabled,
|
|
29
|
+
states,
|
|
30
|
+
dataSet,
|
|
31
|
+
className,
|
|
32
|
+
size = 'md',
|
|
33
|
+
onFocus,
|
|
34
|
+
onBlur,
|
|
35
|
+
...props
|
|
36
|
+
},
|
|
37
|
+
ref,
|
|
38
|
+
) => {
|
|
39
|
+
const isChecked = value ?? states?.checked ?? false;
|
|
40
|
+
const isDisabled = disabled ?? states?.disabled ?? false;
|
|
41
|
+
const isInvalid = states?.invalid ?? false;
|
|
42
|
+
|
|
43
|
+
return (
|
|
44
|
+
<Pressable
|
|
45
|
+
ref={ref}
|
|
46
|
+
role="switch"
|
|
47
|
+
aria-checked={isChecked}
|
|
48
|
+
aria-disabled={isDisabled}
|
|
49
|
+
disabled={isDisabled}
|
|
50
|
+
onPress={() => onValueChange?.(!isChecked)}
|
|
51
|
+
onFocus={onFocus}
|
|
52
|
+
onBlur={onBlur}
|
|
53
|
+
tabIndex={0}
|
|
54
|
+
className={cn(
|
|
55
|
+
switchTrackVariants({ size }),
|
|
56
|
+
switchWebTrackColorVariants({ isChecked, isInvalid }),
|
|
57
|
+
className,
|
|
58
|
+
)}
|
|
59
|
+
// @ts-expect-error dataSet is a RNW/Uniwind prop not in Pressable types
|
|
60
|
+
dataSet={dataSet}
|
|
61
|
+
{...props}
|
|
62
|
+
>
|
|
63
|
+
<View className={cn(switchThumbVariants({ size, isChecked }))} />
|
|
64
|
+
</Pressable>
|
|
65
|
+
);
|
|
66
|
+
},
|
|
67
|
+
);
|
|
68
|
+
|
|
69
|
+
BaseSwitch.displayName = 'BaseSwitch';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ISwitchProps, createSwitch } from '@cdx-ui/primitives';
|
|
2
|
+
import { BaseSwitch } from './BaseSwitch';
|
|
3
|
+
import type { SwitchVariantProps } from './styles';
|
|
4
|
+
|
|
5
|
+
const SwitchPrimitive = createSwitch({ Root: BaseSwitch });
|
|
6
|
+
|
|
7
|
+
export interface SwitchProps extends ISwitchProps, SwitchVariantProps {
|
|
8
|
+
className?: string;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const Switch = SwitchPrimitive;
|
|
12
|
+
|
|
13
|
+
export type { SwitchVariantProps };
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { cva, type VariantProps } from 'class-variance-authority';
|
|
2
|
+
|
|
3
|
+
// =============================================================================
|
|
4
|
+
// NATIVE — Uniwind className bindings for RN Switch
|
|
5
|
+
// =============================================================================
|
|
6
|
+
|
|
7
|
+
export const switchThumbColorVariants = cva(['accent-white'], {
|
|
8
|
+
variants: {
|
|
9
|
+
isDisabled: {
|
|
10
|
+
true: 'accent-gray-200',
|
|
11
|
+
false: '',
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
defaultVariants: { isDisabled: false },
|
|
15
|
+
});
|
|
16
|
+
|
|
17
|
+
export const switchTrackOnVariants = cva(['accent-blue-500'], {
|
|
18
|
+
variants: {
|
|
19
|
+
isInvalid: {
|
|
20
|
+
true: 'accent-red-500',
|
|
21
|
+
false: '',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
defaultVariants: { isInvalid: false },
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
export const switchTrackOffVariants = cva(['accent-gray-300'], {
|
|
28
|
+
variants: {
|
|
29
|
+
isInvalid: {
|
|
30
|
+
true: 'accent-red-300',
|
|
31
|
+
false: '',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
defaultVariants: { isInvalid: false },
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
export const switchIosBgVariants = cva(['accent-gray-300'], {
|
|
38
|
+
variants: {
|
|
39
|
+
isInvalid: {
|
|
40
|
+
true: 'accent-red-300',
|
|
41
|
+
false: '',
|
|
42
|
+
},
|
|
43
|
+
},
|
|
44
|
+
defaultVariants: { isInvalid: false },
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
// =============================================================================
|
|
48
|
+
// WEB — Tailwind classes for custom Pressable toggle
|
|
49
|
+
// =============================================================================
|
|
50
|
+
|
|
51
|
+
export const switchTrackVariants = cva(
|
|
52
|
+
[
|
|
53
|
+
'flex-row items-center rounded-full cursor-pointer',
|
|
54
|
+
'transition-colors duration-200',
|
|
55
|
+
'data-[disabled=true]:opacity-50 data-[disabled=true]:cursor-not-allowed',
|
|
56
|
+
'web:data-[focus-visible=true]:ring-3 web:data-[focus-visible=true]:ring-blue-300/50',
|
|
57
|
+
'web:data-[invalid=true]:data-[focus-visible=true]:ring-red-300/50',
|
|
58
|
+
],
|
|
59
|
+
{
|
|
60
|
+
variants: {
|
|
61
|
+
size: {
|
|
62
|
+
sm: 'w-9 h-5 p-0.5',
|
|
63
|
+
md: 'w-11 h-6 p-0.5',
|
|
64
|
+
lg: 'w-14 h-8 p-1',
|
|
65
|
+
},
|
|
66
|
+
},
|
|
67
|
+
defaultVariants: {
|
|
68
|
+
size: 'md',
|
|
69
|
+
},
|
|
70
|
+
},
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
export const switchWebTrackColorVariants = cva([], {
|
|
74
|
+
variants: {
|
|
75
|
+
isChecked: {
|
|
76
|
+
true: 'bg-blue-500 data-[hover=true]:bg-blue-600',
|
|
77
|
+
false: 'bg-gray-300 data-[hover=true]:bg-gray-400',
|
|
78
|
+
},
|
|
79
|
+
isInvalid: {
|
|
80
|
+
true: '',
|
|
81
|
+
false: '',
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
compoundVariants: [
|
|
85
|
+
{ isChecked: true, isInvalid: true, className: 'bg-red-500 data-[hover=true]:bg-red-600' },
|
|
86
|
+
{ isChecked: false, isInvalid: true, className: 'bg-red-300 data-[hover=true]:bg-red-400' },
|
|
87
|
+
],
|
|
88
|
+
defaultVariants: {
|
|
89
|
+
isChecked: false,
|
|
90
|
+
isInvalid: false,
|
|
91
|
+
},
|
|
92
|
+
});
|
|
93
|
+
|
|
94
|
+
export const switchThumbVariants = cva(
|
|
95
|
+
['rounded-full bg-white shadow-sm', 'transition-transform duration-200'],
|
|
96
|
+
{
|
|
97
|
+
variants: {
|
|
98
|
+
size: {
|
|
99
|
+
sm: 'w-4 h-4',
|
|
100
|
+
md: 'w-5 h-5',
|
|
101
|
+
lg: 'w-6 h-6',
|
|
102
|
+
},
|
|
103
|
+
isChecked: {
|
|
104
|
+
true: '',
|
|
105
|
+
false: 'translate-x-0',
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
compoundVariants: [
|
|
109
|
+
{ size: 'sm', isChecked: true, className: 'translate-x-4' },
|
|
110
|
+
{ size: 'md', isChecked: true, className: 'translate-x-5' },
|
|
111
|
+
{ size: 'lg', isChecked: true, className: 'translate-x-6' },
|
|
112
|
+
],
|
|
113
|
+
defaultVariants: {
|
|
114
|
+
size: 'md',
|
|
115
|
+
isChecked: false,
|
|
116
|
+
},
|
|
117
|
+
},
|
|
118
|
+
);
|
|
119
|
+
|
|
120
|
+
export type SwitchVariantProps = VariantProps<typeof switchTrackVariants>;
|