@purr-react-tailwindcss/components.switch 0.0.5 → 0.0.6
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 +5 -3
- package/dist/_components/_left-label.d.ts +0 -4
- package/dist/_components/_right-label.d.ts +0 -4
- package/dist/_components/index.d.ts +0 -4
- package/dist/_left-label-K_1UpPNK.js +0 -27
- package/dist/_left-label-ciTiWzfK.cjs +0 -1
- package/dist/_right-label-32-rH0iQ.cjs +0 -1
- package/dist/_right-label-7YaXOwpz.js +0 -27
- package/dist/_types.d.ts +0 -29
- package/dist/index.cjs +0 -1
- package/dist/index.d.ts +0 -2
- package/dist/index.js +0 -88
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purr-react-tailwindcss/components.switch",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.6",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/index.cjs",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
"react": "*",
|
|
26
26
|
"clsx": "*",
|
|
27
27
|
"react-hook-form": "*",
|
|
28
|
-
"@purr-core/utils.definitions": "0.0.
|
|
29
|
-
"@purr-core/hooks.sync-state-with-props": "0.0.
|
|
28
|
+
"@purr-core/utils.definitions": "0.0.11",
|
|
29
|
+
"@purr-core/hooks.sync-state-with-props": "0.0.8"
|
|
30
30
|
},
|
|
31
31
|
"author": "@DinhThienPhuc",
|
|
32
32
|
"license": "ISC",
|
|
@@ -35,6 +35,8 @@
|
|
|
35
35
|
"scripts": {
|
|
36
36
|
"dev": "vite build --watch",
|
|
37
37
|
"build": "tsc && vite build",
|
|
38
|
+
"build:vite": "tsc && vite build",
|
|
39
|
+
"build:tsup": "tsup",
|
|
38
40
|
"lint": "eslint . --ext ts,tsx --max-warnings 0"
|
|
39
41
|
}
|
|
40
42
|
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
-
import i from "clsx";
|
|
3
|
-
import { memo as o } from "react";
|
|
4
|
-
const r = o(
|
|
5
|
-
({
|
|
6
|
-
leftLabel: t = "",
|
|
7
|
-
disabled: e = !1,
|
|
8
|
-
htmlAttributes: l
|
|
9
|
-
}) => t ? /* @__PURE__ */ a(
|
|
10
|
-
"span",
|
|
11
|
-
{
|
|
12
|
-
className: i(
|
|
13
|
-
"mr-2 font-sans text-base",
|
|
14
|
-
e ? "cursor-not-allowed text-white/50 opacity-50" : "text-white opacity-100",
|
|
15
|
-
"switch-label",
|
|
16
|
-
"switch-label__left",
|
|
17
|
-
e && "switch-label__left--disabled"
|
|
18
|
-
),
|
|
19
|
-
...l,
|
|
20
|
-
children: t
|
|
21
|
-
}
|
|
22
|
-
) : null
|
|
23
|
-
);
|
|
24
|
-
r.displayName = "SwitchLabelLeft";
|
|
25
|
-
export {
|
|
26
|
-
r as SwitchLabelLeft
|
|
27
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("react/jsx-runtime"),a=require("clsx"),c=require("react"),l=c.memo(({leftLabel:e="",disabled:t=!1,htmlAttributes:s})=>e?i.jsx("span",{className:a("mr-2 font-sans text-base",t?"cursor-not-allowed text-white/50 opacity-50":"text-white opacity-100","switch-label","switch-label__left",t&&"switch-label__left--disabled"),...s,children:e}):null);l.displayName="SwitchLabelLeft";exports.SwitchLabelLeft=l;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),a=require("clsx"),c=require("react"),i=c.memo(({rightLabel:t="",disabled:e=!1,htmlAttributes:l})=>t?s.jsx("span",{className:a("ml-2 font-sans text-base",e?"cursor-not-allowed text-white/50 opacity-50":"text-white opacity-100","switch-label","switch-label__right",e&&"switch-label__right--disabled"),...l,children:t}):null);i.displayName="SwitchLabelRight";exports.SwitchLabelRight=i;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { jsx as l } from "react/jsx-runtime";
|
|
2
|
-
import a from "clsx";
|
|
3
|
-
import { memo as o } from "react";
|
|
4
|
-
const r = o(
|
|
5
|
-
({
|
|
6
|
-
rightLabel: t = "",
|
|
7
|
-
disabled: e = !1,
|
|
8
|
-
htmlAttributes: i
|
|
9
|
-
}) => t ? /* @__PURE__ */ l(
|
|
10
|
-
"span",
|
|
11
|
-
{
|
|
12
|
-
className: a(
|
|
13
|
-
"ml-2 font-sans text-base",
|
|
14
|
-
e ? "cursor-not-allowed text-white/50 opacity-50" : "text-white opacity-100",
|
|
15
|
-
"switch-label",
|
|
16
|
-
"switch-label__right",
|
|
17
|
-
e && "switch-label__right--disabled"
|
|
18
|
-
),
|
|
19
|
-
...i,
|
|
20
|
-
children: t
|
|
21
|
-
}
|
|
22
|
-
) : null
|
|
23
|
-
);
|
|
24
|
-
r.displayName = "SwitchLabelRight";
|
|
25
|
-
export {
|
|
26
|
-
r as SwitchLabelRight
|
|
27
|
-
};
|
package/dist/_types.d.ts
DELETED
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { ChangeEvent, HTMLAttributes, InputHTMLAttributes } from 'react';
|
|
2
|
-
import { FieldError } from 'react-hook-form';
|
|
3
|
-
import { IExtendable } from '@purr-core/utils.definitions';
|
|
4
|
-
|
|
5
|
-
export interface ISwitchLeftLabelProps {
|
|
6
|
-
leftLabel?: string;
|
|
7
|
-
disabled?: boolean;
|
|
8
|
-
htmlAttributes?: HTMLAttributes<HTMLSpanElement> & IExtendable;
|
|
9
|
-
}
|
|
10
|
-
export interface ISwitchRightLabelProps {
|
|
11
|
-
rightLabel?: string;
|
|
12
|
-
disabled?: boolean;
|
|
13
|
-
htmlAttributes?: HTMLAttributes<HTMLSpanElement> & IExtendable;
|
|
14
|
-
}
|
|
15
|
-
export interface ISwitchProps {
|
|
16
|
-
value?: boolean;
|
|
17
|
-
leftLabel?: string;
|
|
18
|
-
rightLabel?: string;
|
|
19
|
-
htmlAttributes?: HTMLAttributes<HTMLDivElement> & IExtendable;
|
|
20
|
-
inputHtmlAttributes?: InputHTMLAttributes<HTMLInputElement> & IExtendable;
|
|
21
|
-
leftLabelHtmlAttributes?: HTMLAttributes<HTMLSpanElement> & IExtendable;
|
|
22
|
-
rightLabelHtmlAttributes?: HTMLAttributes<HTMLSpanElement> & IExtendable;
|
|
23
|
-
fullWidth?: boolean;
|
|
24
|
-
disabled?: boolean;
|
|
25
|
-
required?: boolean;
|
|
26
|
-
error?: FieldError;
|
|
27
|
-
isStandalone?: boolean;
|
|
28
|
-
onChange?: (value: boolean, e: ChangeEvent<HTMLInputElement>) => void;
|
|
29
|
-
}
|
package/dist/index.cjs
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("react/jsx-runtime"),o=require("clsx"),s=require("react"),b=require("@purr-core/hooks.sync-state-with-props"),m=s.lazy(()=>Promise.resolve().then(()=>require("./_left-label-ciTiWzfK.cjs")).then(a=>({default:a.SwitchLabelLeft}))),j=s.lazy(()=>Promise.resolve().then(()=>require("./_right-label-32-rH0iQ.cjs")).then(a=>({default:a.SwitchLabelRight}))),u=s.forwardRef(({value:a=!1,leftLabel:n="",rightLabel:l="",htmlAttributes:h,inputHtmlAttributes:f,leftLabelHtmlAttributes:w,rightLabelHtmlAttributes:p,onChange:c,disabled:e=!1,required:g=!1,isStandalone:x=!1},S)=>{const{currentValue:t,setCurrentValue:d}=b(a,x),y=i=>{d(i.target.checked),c==null||c(i.target.checked,i)};return r.jsxs("div",{className:"switch inline-flex items-center",...h,children:[r.jsx(s.Suspense,{children:!!n&&r.jsx(m,{htmlAttributes:w,leftLabel:n,disabled:e})}),r.jsx("div",{className:o("relative h-3 w-8 rounded-lg transition-all duration-200 ease-in-out after:pointer-events-none after:absolute after:-left-1 after:-top-1 after:h-5 after:w-5 after:rounded-full after:transition-all after:duration-200 after:ease-in-out",e&&t&&"bg-sky-400/20 after:bg-slate-700",e&&!t&&"bg-white/20 after:bg-gray-500",!e&&t&&"bg-sky-400/50 after:bg-blue-300",!e&&!t&&"bg-white/50 after:bg-gray-200",t?"after:translate-x-5":"after:translate-x-0","switch-pad",t&&"switch-pad--on",e&&"switch-pad--disabled"),children:r.jsx("input",{ref:S,checked:t,onChange:y,disabled:e,type:"checkbox",required:g,className:o("absolute left-0 top-0 h-3 w-8 opacity-0",e?"cursor-not-allowed":"cursor-pointer"),...f})}),r.jsx(s.Suspense,{children:!!l&&r.jsx(j,{htmlAttributes:p,rightLabel:l,disabled:e})})]})});u.displayName="Switch";exports.Switch=u;
|
package/dist/index.d.ts
DELETED
package/dist/index.js
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { jsxs as S, jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import l from "clsx";
|
|
3
|
-
import { lazy as f, forwardRef as x, Suspense as n } from "react";
|
|
4
|
-
import k from "@purr-core/hooks.sync-state-with-props";
|
|
5
|
-
const v = f(
|
|
6
|
-
() => import("./_left-label-K_1UpPNK.js").then((a) => ({
|
|
7
|
-
default: a.SwitchLabelLeft
|
|
8
|
-
}))
|
|
9
|
-
), L = f(
|
|
10
|
-
() => import("./_right-label-7YaXOwpz.js").then((a) => ({
|
|
11
|
-
default: a.SwitchLabelRight
|
|
12
|
-
}))
|
|
13
|
-
), N = x(
|
|
14
|
-
({
|
|
15
|
-
value: a = !1,
|
|
16
|
-
leftLabel: c = "",
|
|
17
|
-
rightLabel: o = "",
|
|
18
|
-
htmlAttributes: h,
|
|
19
|
-
inputHtmlAttributes: u,
|
|
20
|
-
leftLabelHtmlAttributes: p,
|
|
21
|
-
rightLabelHtmlAttributes: m,
|
|
22
|
-
onChange: s,
|
|
23
|
-
disabled: t = !1,
|
|
24
|
-
required: w = !1,
|
|
25
|
-
isStandalone: g = !1
|
|
26
|
-
}, d) => {
|
|
27
|
-
const { currentValue: e, setCurrentValue: b } = k(
|
|
28
|
-
a,
|
|
29
|
-
g
|
|
30
|
-
), y = (i) => {
|
|
31
|
-
b(i.target.checked), s == null || s(i.target.checked, i);
|
|
32
|
-
};
|
|
33
|
-
return /* @__PURE__ */ S("div", { className: "switch inline-flex items-center", ...h, children: [
|
|
34
|
-
/* @__PURE__ */ r(n, { children: !!c && /* @__PURE__ */ r(
|
|
35
|
-
v,
|
|
36
|
-
{
|
|
37
|
-
htmlAttributes: p,
|
|
38
|
-
leftLabel: c,
|
|
39
|
-
disabled: t
|
|
40
|
-
}
|
|
41
|
-
) }),
|
|
42
|
-
/* @__PURE__ */ r(
|
|
43
|
-
"div",
|
|
44
|
-
{
|
|
45
|
-
className: l(
|
|
46
|
-
"relative h-3 w-8 rounded-lg transition-all duration-200 ease-in-out after:pointer-events-none after:absolute after:-left-1 after:-top-1 after:h-5 after:w-5 after:rounded-full after:transition-all after:duration-200 after:ease-in-out",
|
|
47
|
-
t && e && "bg-sky-400/20 after:bg-slate-700",
|
|
48
|
-
t && !e && "bg-white/20 after:bg-gray-500",
|
|
49
|
-
!t && e && "bg-sky-400/50 after:bg-blue-300",
|
|
50
|
-
!t && !e && "bg-white/50 after:bg-gray-200",
|
|
51
|
-
e ? "after:translate-x-5" : "after:translate-x-0",
|
|
52
|
-
"switch-pad",
|
|
53
|
-
e && "switch-pad--on",
|
|
54
|
-
t && "switch-pad--disabled"
|
|
55
|
-
),
|
|
56
|
-
children: /* @__PURE__ */ r(
|
|
57
|
-
"input",
|
|
58
|
-
{
|
|
59
|
-
ref: d,
|
|
60
|
-
checked: e,
|
|
61
|
-
onChange: y,
|
|
62
|
-
disabled: t,
|
|
63
|
-
type: "checkbox",
|
|
64
|
-
required: w,
|
|
65
|
-
className: l(
|
|
66
|
-
"absolute left-0 top-0 h-3 w-8 opacity-0",
|
|
67
|
-
t ? "cursor-not-allowed" : "cursor-pointer"
|
|
68
|
-
),
|
|
69
|
-
...u
|
|
70
|
-
}
|
|
71
|
-
)
|
|
72
|
-
}
|
|
73
|
-
),
|
|
74
|
-
/* @__PURE__ */ r(n, { children: !!o && /* @__PURE__ */ r(
|
|
75
|
-
L,
|
|
76
|
-
{
|
|
77
|
-
htmlAttributes: m,
|
|
78
|
-
rightLabel: o,
|
|
79
|
-
disabled: t
|
|
80
|
-
}
|
|
81
|
-
) })
|
|
82
|
-
] });
|
|
83
|
-
}
|
|
84
|
-
);
|
|
85
|
-
N.displayName = "Switch";
|
|
86
|
-
export {
|
|
87
|
-
N as Switch
|
|
88
|
-
};
|