@tamagui/checkbox-headless 2.0.0-rc.8 → 2.0.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/dist/cjs/BubbleInput.cjs +47 -41
- package/dist/cjs/BubbleInput.native.js +74 -69
- package/dist/cjs/BubbleInput.native.js.map +1 -1
- package/dist/cjs/index.cjs +7 -5
- package/dist/cjs/index.native.js +7 -5
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/useCheckbox.cjs +58 -52
- package/dist/cjs/useCheckbox.native.js +65 -59
- package/dist/cjs/useCheckbox.native.js.map +1 -1
- package/dist/cjs/utils.cjs +12 -10
- package/dist/cjs/utils.native.js +12 -10
- package/dist/cjs/utils.native.js.map +1 -1
- package/dist/esm/BubbleInput.mjs +19 -15
- package/dist/esm/BubbleInput.mjs.map +1 -1
- package/dist/esm/BubbleInput.native.js +19 -16
- package/dist/esm/BubbleInput.native.js.map +1 -1
- package/dist/esm/index.js +2 -2
- package/dist/esm/index.js.map +1 -6
- package/dist/esm/useCheckbox.mjs +26 -22
- package/dist/esm/useCheckbox.mjs.map +1 -1
- package/dist/esm/useCheckbox.native.js +33 -29
- package/dist/esm/useCheckbox.native.js.map +1 -1
- package/dist/jsx/BubbleInput.mjs +19 -15
- package/dist/jsx/BubbleInput.mjs.map +1 -1
- package/dist/jsx/BubbleInput.native.js +74 -69
- package/dist/jsx/BubbleInput.native.js.map +1 -1
- package/dist/jsx/index.js +2 -2
- package/dist/jsx/index.js.map +1 -6
- package/dist/jsx/index.native.js +7 -5
- package/dist/jsx/useCheckbox.mjs +26 -22
- package/dist/jsx/useCheckbox.mjs.map +1 -1
- package/dist/jsx/useCheckbox.native.js +65 -59
- package/dist/jsx/useCheckbox.native.js.map +1 -1
- package/dist/jsx/utils.native.js +12 -10
- package/package.json +16 -20
- package/dist/cjs/BubbleInput.js +0 -65
- package/dist/cjs/BubbleInput.js.map +0 -6
- package/dist/cjs/index.js +0 -16
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/useCheckbox.js +0 -81
- package/dist/cjs/useCheckbox.js.map +0 -6
- package/dist/cjs/utils.js +0 -27
- package/dist/cjs/utils.js.map +0 -6
- package/dist/esm/BubbleInput.js +0 -44
- package/dist/esm/BubbleInput.js.map +0 -6
- package/dist/esm/useCheckbox.js +0 -64
- package/dist/esm/useCheckbox.js.map +0 -6
- package/dist/esm/utils.js +0 -11
- package/dist/esm/utils.js.map +0 -6
- package/dist/jsx/BubbleInput.js +0 -44
- package/dist/jsx/BubbleInput.js.map +0 -6
- package/dist/jsx/useCheckbox.js +0 -64
- package/dist/jsx/useCheckbox.js.map +0 -6
- package/dist/jsx/utils.js +0 -11
- package/dist/jsx/utils.js.map +0 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useCheckbox_exports","__export","useCheckbox","module","exports","import_jsx_runtime","require","import_compose_refs","import_constants","import_helpers","import_label","import_react","__toESM","import_BubbleInput","import_utils","props","param","ref","checked","setChecked","labelledBy","ariaLabelledby","name","required","disabled","onCheckedChange","checkboxProps","button","setButton","default","useState","composedRefs","useComposedRefs","hasConsumerStoppedPropagationRef","useRef","isFormControl","isWeb","closest","labelId","useLabelContext","parentKeyDown","onKeyDown","handleKeyDown","useMemo","composeEventHandlers","event","key","preventDefault","handlePress","onPress","prevChecked","isIndeterminate","current","isPropagationStopped","stopPropagation","bubbleInput","jsx","BubbleInput","isHidden","control","bubbles","checkboxRef","role","type","getState"],"sources":["../../src/useCheckbox.tsx"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","useCheckbox_exports","__export","useCheckbox","module","exports","import_jsx_runtime","require","import_compose_refs","import_constants","import_helpers","import_label","import_react","__toESM","import_BubbleInput","import_utils","props","param","ref","checked","setChecked","labelledBy","ariaLabelledby","name","required","disabled","onCheckedChange","checkboxProps","button","setButton","default","useState","composedRefs","useComposedRefs","hasConsumerStoppedPropagationRef","useRef","isFormControl","isWeb","Boolean","closest","labelId","useLabelContext","parentKeyDown","onKeyDown","handleKeyDown","useMemo","composeEventHandlers","event","key","preventDefault","handlePress","onPress","prevChecked","isIndeterminate","current","isPropagationStopped","stopPropagation","bubbleInput","jsx","BubbleInput","isHidden","control","bubbles","checkboxRef","role","type","getState"],"sources":["../../src/useCheckbox.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/utils.cjs
CHANGED
|
@@ -3,20 +3,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
3
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
5
|
var __export = (target, all) => {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
6
|
+
for (var name in all) __defProp(target, name, {
|
|
7
|
+
get: all[name],
|
|
8
|
+
enumerable: true
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
13
14
|
get: () => from[key],
|
|
14
15
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
15
16
|
});
|
|
16
|
-
|
|
17
|
-
|
|
17
|
+
}
|
|
18
|
+
return to;
|
|
19
|
+
};
|
|
18
20
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
19
|
-
value:
|
|
21
|
+
value: true
|
|
20
22
|
}), mod);
|
|
21
23
|
var utils_exports = {};
|
|
22
24
|
__export(utils_exports, {
|
package/dist/cjs/utils.native.js
CHANGED
|
@@ -5,20 +5,22 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
|
5
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
7
|
var __export = (target, all) => {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
8
|
+
for (var name in all) __defProp(target, name, {
|
|
9
|
+
get: all[name],
|
|
10
|
+
enumerable: true
|
|
11
|
+
});
|
|
12
|
+
};
|
|
13
|
+
var __copyProps = (to, from, except, desc) => {
|
|
14
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
15
|
+
for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
|
|
15
16
|
get: () => from[key],
|
|
16
17
|
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
17
18
|
});
|
|
18
|
-
|
|
19
|
-
|
|
19
|
+
}
|
|
20
|
+
return to;
|
|
21
|
+
};
|
|
20
22
|
var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
|
|
21
|
-
value:
|
|
23
|
+
value: true
|
|
22
24
|
}), mod);
|
|
23
25
|
var utils_exports = {};
|
|
24
26
|
__export(utils_exports, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","utils_exports","__export","getState","isIndeterminate","module","exports","checked"],"sources":["../../src/utils.tsx"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","utils_exports","__export","getState","isIndeterminate","module","exports","checked"],"sources":["../../src/utils.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,aAAA;AAAAC,QAAA,CAAAD,aAAA;EAAAE,QAAA,EAAAA,CAAA,KAAAA,QAAA;EAAAC,eAAA,EAAAA,CAAA,KAAAA;AAAA;AAEOC,MAAA,CAAAC,OAAS,GAAAV,YAAgB,CAAAK,aAAoD;AAClF,SAAOG,eAAYA,CAAAG,OAAA;EACrB,OAAAA,OAAA;AAEO;AACL,SAAOJ,SAAAI,OAAgB;EACzB,OAAAH,eAAA,CAAAG,OAAA,sBAAAA,OAAA","ignoreList":[]}
|
package/dist/esm/BubbleInput.mjs
CHANGED
|
@@ -4,27 +4,31 @@ import { isIndeterminate } from "./utils.mjs";
|
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
5
|
const BubbleInput = props => {
|
|
6
6
|
const {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const input = ref.current
|
|
17
|
-
|
|
18
|
-
|
|
7
|
+
checked,
|
|
8
|
+
bubbles = true,
|
|
9
|
+
control,
|
|
10
|
+
isHidden,
|
|
11
|
+
...inputProps
|
|
12
|
+
} = props;
|
|
13
|
+
const ref = React.useRef(null);
|
|
14
|
+
const prevChecked = usePrevious(checked);
|
|
15
|
+
React.useEffect(() => {
|
|
16
|
+
const input = ref.current;
|
|
17
|
+
const inputProto = window.HTMLInputElement.prototype;
|
|
18
|
+
const descriptor = Object.getOwnPropertyDescriptor(inputProto, "checked");
|
|
19
|
+
const setChecked = descriptor.set;
|
|
19
20
|
if (prevChecked !== checked && setChecked) {
|
|
20
21
|
const event = new Event("click", {
|
|
21
22
|
bubbles
|
|
22
23
|
});
|
|
23
|
-
input.indeterminate = isIndeterminate(checked)
|
|
24
|
+
input.indeterminate = isIndeterminate(checked);
|
|
25
|
+
setChecked.call(input, isIndeterminate(checked) ? false : checked);
|
|
26
|
+
input.dispatchEvent(event);
|
|
24
27
|
}
|
|
25
|
-
}, [prevChecked, checked, bubbles])
|
|
28
|
+
}, [prevChecked, checked, bubbles]);
|
|
29
|
+
return /* @__PURE__ */jsx("input", {
|
|
26
30
|
type: "checkbox",
|
|
27
|
-
defaultChecked: isIndeterminate(checked) ?
|
|
31
|
+
defaultChecked: isIndeterminate(checked) ? false : checked,
|
|
28
32
|
...inputProps,
|
|
29
33
|
tabIndex: -1,
|
|
30
34
|
ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["usePrevious","React","isIndeterminate","jsx","BubbleInput","props","checked","bubbles","control","isHidden","inputProps","ref","useRef","prevChecked","useEffect","input","current","inputProto","window","HTMLInputElement","prototype","
|
|
1
|
+
{"version":3,"names":["usePrevious","React","isIndeterminate","jsx","BubbleInput","props","checked","bubbles","control","isHidden","inputProps","ref","useRef","prevChecked","useEffect","input","current","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","event","Event","indeterminate","call","dispatchEvent","type","defaultChecked","tabIndex","style","position","pointerEvents","opacity","margin","appearance","accentColor"],"sources":["../../src/BubbleInput.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAC5B,YAAYC,KAAA,MAAW;AAGvB,SAASC,eAAA,QAAuB;AAkC5B,SAAAC,GAAA;AAxBG,MAAMC,WAAA,GAAeC,KAAA,IAA4B;EACtD,MAAM;IAAEC,OAAA;IAASC,OAAA,GAAU;IAAMC,OAAA;IAASC,QAAA;IAAU,GAAGC;EAAW,IAAIL,KAAA;EACtE,MAAMM,GAAA,GAAMV,KAAA,CAAMW,MAAA,CAAyB,IAAI;EAC/C,MAAMC,WAAA,GAAcb,WAAA,CAAYM,OAAO;EAGvCL,KAAA,CAAMa,SAAA,CAAU,MAAM;IACpB,MAAMC,KAAA,GAAQJ,GAAA,CAAIK,OAAA;IAClB,MAAMC,UAAA,GAAaC,MAAA,CAAOC,gBAAA,CAAiBC,SAAA;IAC3C,MAAMC,UAAA,GAAaC,MAAA,CAAOC,wBAAA,CACxBN,UAAA,EACA,SACF;IACA,MAAMO,UAAA,GAAaH,UAAA,CAAWI,GAAA;IAE9B,IAAIZ,WAAA,KAAgBP,OAAA,IAAWkB,UAAA,EAAY;MACzC,MAAME,KAAA,GAAQ,IAAIC,KAAA,CAAM,SAAS;QAAEpB;MAAQ,CAAC;MAC5CQ,KAAA,CAAMa,aAAA,GAAgB1B,eAAA,CAAgBI,OAAO;MAC7CkB,UAAA,CAAWK,IAAA,CAAKd,KAAA,EAAOb,eAAA,CAAgBI,OAAO,IAAI,QAAQA,OAAO;MACjES,KAAA,CAAMe,aAAA,CAAcJ,KAAK;IAC3B;EACF,GAAG,CAACb,WAAA,EAAaP,OAAA,EAASC,OAAO,CAAC;EAElC,OACE,eAAAJ,GAAA,CAAC;IACC4B,IAAA,EAAK;IACLC,cAAA,EAAgB9B,eAAA,CAAgBI,OAAO,IAAI,QAAQA,OAAA;IAClD,GAAGI,UAAA;IACJuB,QAAA,EAAU;IACVtB,GAAA;IACA,eAAaF,QAAA;IACbyB,KAAA,EAAO;MACL,IAAIzB,QAAA,GACA;QAAA;QAEE0B,QAAA,EAAU;QACVC,aAAA,EAAe;QACfC,OAAA,EAAS;QACTC,MAAA,EAAQ;MACV,IACA;QACEC,UAAA,EAAY;QACZC,WAAA,EAAa;MACf;MAEJ,GAAGnC,KAAA,CAAM6B;IACX;EAAA,CACF;AAEJ","ignoreList":[]}
|
|
@@ -4,28 +4,31 @@ import * as React from "react";
|
|
|
4
4
|
import { isIndeterminate } from "./utils.native.js";
|
|
5
5
|
var BubbleInput = function (props) {
|
|
6
6
|
var {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
var input = ref.current
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
7
|
+
checked,
|
|
8
|
+
bubbles = true,
|
|
9
|
+
control,
|
|
10
|
+
isHidden,
|
|
11
|
+
...inputProps
|
|
12
|
+
} = props;
|
|
13
|
+
var ref = React.useRef(null);
|
|
14
|
+
var prevChecked = usePrevious(checked);
|
|
15
|
+
React.useEffect(function () {
|
|
16
|
+
var input = ref.current;
|
|
17
|
+
var inputProto = window.HTMLInputElement.prototype;
|
|
18
|
+
var descriptor = Object.getOwnPropertyDescriptor(inputProto, "checked");
|
|
19
|
+
var setChecked = descriptor.set;
|
|
20
20
|
if (prevChecked !== checked && setChecked) {
|
|
21
21
|
var event = new Event("click", {
|
|
22
22
|
bubbles
|
|
23
23
|
});
|
|
24
|
-
input.indeterminate = isIndeterminate(checked)
|
|
24
|
+
input.indeterminate = isIndeterminate(checked);
|
|
25
|
+
setChecked.call(input, isIndeterminate(checked) ? false : checked);
|
|
26
|
+
input.dispatchEvent(event);
|
|
25
27
|
}
|
|
26
|
-
}, [prevChecked, checked, bubbles])
|
|
28
|
+
}, [prevChecked, checked, bubbles]);
|
|
29
|
+
return /* @__PURE__ */_jsx("input", {
|
|
27
30
|
type: "checkbox",
|
|
28
|
-
defaultChecked: isIndeterminate(checked) ?
|
|
31
|
+
defaultChecked: isIndeterminate(checked) ? false : checked,
|
|
29
32
|
...inputProps,
|
|
30
33
|
tabIndex: -1,
|
|
31
34
|
ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","usePrevious","React","isIndeterminate","BubbleInput","props","checked","bubbles","control","isHidden","inputProps","ref","useRef","prevChecked","useEffect","input","current","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","event","Event","indeterminate","call","dispatchEvent","type","defaultChecked","tabIndex","style","position","pointerEvents","opacity","margin","appearance","accentColor"],"sources":["../../src/BubbleInput.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,QAAmB;AAC5B,SAAAC,WAAY,QAAW;AAGvB,YAASC,KAAA;AAkCL,SAAAC,eAAA;AAxBG,IAAAC,WAAM,YAAAA,CAAeC,KAA4B;EACtD;
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","usePrevious","React","isIndeterminate","BubbleInput","props","checked","bubbles","control","isHidden","inputProps","ref","useRef","prevChecked","useEffect","input","current","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","event","Event","indeterminate","call","dispatchEvent","type","defaultChecked","tabIndex","style","position","pointerEvents","opacity","margin","appearance","accentColor"],"sources":["../../src/BubbleInput.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,QAAmB;AAC5B,SAAAC,WAAY,QAAW;AAGvB,YAASC,KAAA;AAkCL,SAAAC,eAAA;AAxBG,IAAAC,WAAM,YAAAA,CAAeC,KAA4B;EACtD;IAAMC,OAAE;IAAAC,OAAS,OAAU;IAAAC,OAAM;IAAAC,QAAS;IAAA,GAAUC;EAAG,IAAWL,KAAI;EACtE,IAAAM,GAAM,GAAAT,KAAM,CAAAU,MAAM,KAAyB;EAC3C,IAAAC,WAAM,GAAAZ,WAAc,CAAAK,OAAY;EAGhCJ,KAAA,CAAMY,SAAA,CAAU,YAAM;IACpB,IAAAC,KAAM,GAAAJ,GAAQ,CAAAK,OAAI;IAClB,IAAAC,UAAM,GAAAC,MAAa,CAAAC,gBAAO,CAAAC,SAAiB;IAC3C,IAAAC,UAAM,GAAAC,MAAa,CAAAC,wBAAO,CAAAN,UAAA;IAAA,IACxBO,UAAA,GAAAH,UAAA,CAAAI,GAAA;IAAA,IACAZ,WAAA,KAAAP,OAAA,IAAAkB,UAAA;MACF,IAAAE,KAAA,OAAAC,KAAA;QACApB;MAEA,EAAI;MACFQ,KAAA,CAAMa,aAAY,GAAAzB,eAAiB,CAAAG,OAAS;MAC5CkB,UAAM,CAAAK,IAAA,CAAAd,KAAA,EAAgBZ,eAAgB,CAAAG,OAAO,YAAAA,OAAA;MAC7CS,KAAA,CAAAe,aAAgB,CAAAJ,KAAO;IACvB;EAAyB,GAC3B,CACFb,WAAI,EAEJP,OACE,EAACC,OAAA;EAAA,OACC,eAAKP,IAAA;IAAA+B,IACL;IAAmDC,cAC/C,EAAA7B,eAAA,CAAAG,OAAA,YAAAA,OAAA;IAAA,GACJI,UAAU;IAAAuB,QACV;IAAAtB,GACA;IAAa,aACN,EAAAF,QAAA;IAAAyB,KACL,EAAI;MACA,IAAAzB,QAAA;QAAA;QAEY0B,QACV,YAAe;QAAAC,aACN;QAAAC,OACT,GAAQ;QACVC,MACA;MAAA,IACE;QAAYC,UACZ,QAAa;QACfC,WAAA;MAAA;MAGN,GAAAnC,KAAA,CAAA6B;IAAA;EACF;AAEJ","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export * from "./useCheckbox";
|
|
2
|
-
export * from "./utils";
|
|
1
|
+
export * from "./useCheckbox.mjs";
|
|
2
|
+
export * from "./utils.mjs";
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
package/dist/esm/useCheckbox.mjs
CHANGED
|
@@ -8,30 +8,34 @@ import { getState, isIndeterminate } from "./utils.mjs";
|
|
|
8
8
|
import { jsx } from "react/jsx-runtime";
|
|
9
9
|
function useCheckbox(props, [checked, setChecked], ref) {
|
|
10
10
|
const {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
11
|
+
labelledBy: ariaLabelledby,
|
|
12
|
+
name,
|
|
13
|
+
required,
|
|
14
|
+
disabled,
|
|
15
|
+
value = "on",
|
|
16
|
+
onCheckedChange,
|
|
17
|
+
...checkboxProps
|
|
18
|
+
} = props;
|
|
19
|
+
const [button, setButton] = React.useState(null);
|
|
20
|
+
const composedRefs = useComposedRefs(ref, setButton);
|
|
21
|
+
const hasConsumerStoppedPropagationRef = React.useRef(false);
|
|
22
|
+
const isFormControl = isWeb ? button ? Boolean(button.closest("form")) : true : false;
|
|
23
|
+
const labelId = useLabelContext(button);
|
|
24
|
+
const labelledBy = ariaLabelledby || labelId;
|
|
25
|
+
const parentKeyDown = props.onKeyDown;
|
|
26
|
+
const handleKeyDown = useMemo(() => composeEventHandlers(parentKeyDown, event => {
|
|
27
|
+
if (event.key === "Enter") event.preventDefault();
|
|
28
|
+
}), [parentKeyDown]);
|
|
29
|
+
const handlePress = useMemo(() => composeEventHandlers(props.onPress, event => {
|
|
30
|
+
setChecked(prevChecked => isIndeterminate(prevChecked) ? true : !prevChecked);
|
|
31
|
+
if (isFormControl && "isPropagationStopped" in event) {
|
|
32
|
+
hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
|
|
33
|
+
if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();
|
|
34
|
+
}
|
|
35
|
+
}), [isFormControl]);
|
|
32
36
|
return {
|
|
33
37
|
bubbleInput: isWeb && isFormControl ? /* @__PURE__ */jsx(BubbleInput, {
|
|
34
|
-
isHidden:
|
|
38
|
+
isHidden: true,
|
|
35
39
|
control: button,
|
|
36
40
|
bubbles: !hasConsumerStoppedPropagationRef.current,
|
|
37
41
|
name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useComposedRefs","isWeb","composeEventHandlers","useLabelContext","React","useMemo","BubbleInput","getState","isIndeterminate","jsx","useCheckbox","props","checked","setChecked","ref","labelledBy","ariaLabelledby","name","required","disabled","value","onCheckedChange","checkboxProps","button","setButton","useState","composedRefs","hasConsumerStoppedPropagationRef","useRef","isFormControl","closest","labelId","parentKeyDown","onKeyDown","handleKeyDown","event","key","preventDefault","handlePress","onPress","prevChecked","current","isPropagationStopped","stopPropagation","bubbleInput","isHidden","control","bubbles","checkboxRef","role","type"],"sources":["../../src/useCheckbox.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,KAAA,QAAa;AAEtB,SAASC,oBAAA,QAA4B;AACrC,SAASC,eAAA,QAAuB;AAChC,OAAOC,KAAA,IAASC,OAAA,QAAe;AAG/B,SAASC,WAAA,QAAmB;AAC5B,SAASC,QAAA,EAAUC,eAAA,QAAuB;AAiFlC,SAAAC,GAAA;AAvDD,SAASC,YACdC,KAAA,EACA,CAACC,OAAA,EAASC,UAAU,GAIpBC,GAAA,EACA;EACA,MAAM;
|
|
1
|
+
{"version":3,"names":["useComposedRefs","isWeb","composeEventHandlers","useLabelContext","React","useMemo","BubbleInput","getState","isIndeterminate","jsx","useCheckbox","props","checked","setChecked","ref","labelledBy","ariaLabelledby","name","required","disabled","value","onCheckedChange","checkboxProps","button","setButton","useState","composedRefs","hasConsumerStoppedPropagationRef","useRef","isFormControl","Boolean","closest","labelId","parentKeyDown","onKeyDown","handleKeyDown","event","key","preventDefault","handlePress","onPress","prevChecked","current","isPropagationStopped","stopPropagation","bubbleInput","isHidden","control","bubbles","checkboxRef","role","type"],"sources":["../../src/useCheckbox.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,eAAA,QAAuB;AAChC,SAASC,KAAA,QAAa;AAEtB,SAASC,oBAAA,QAA4B;AACrC,SAASC,eAAA,QAAuB;AAChC,OAAOC,KAAA,IAASC,OAAA,QAAe;AAG/B,SAASC,WAAA,QAAmB;AAC5B,SAASC,QAAA,EAAUC,eAAA,QAAuB;AAiFlC,SAAAC,GAAA;AAvDD,SAASC,YACdC,KAAA,EACA,CAACC,OAAA,EAASC,UAAU,GAIpBC,GAAA,EACA;EACA,MAAM;IACJC,UAAA,EAAYC,cAAA;IACZC,IAAA;IACAC,QAAA;IACAC,QAAA;IACAC,KAAA,GAAQ;IACRC,eAAA;IACA,GAAGC;EACL,IAAIX,KAAA;EACJ,MAAM,CAACY,MAAA,EAAQC,SAAS,IAAIpB,KAAA,CAAMqB,QAAA,CAAmC,IAAI;EACzE,MAAMC,YAAA,GAAe1B,eAAA,CAAgBc,GAAA,EAAKU,SAAgB;EAC1D,MAAMG,gCAAA,GAAmCvB,KAAA,CAAMwB,MAAA,CAAO,KAAK;EAE3D,MAAMC,aAAA,GAAgB5B,KAAA,GAASsB,MAAA,GAASO,OAAA,CAAQP,MAAA,CAAOQ,OAAA,CAAQ,MAAM,CAAC,IAAI,OAAQ;EAElF,MAAMC,OAAA,GAAU7B,eAAA,CAAgBoB,MAAM;EACtC,MAAMR,UAAA,GAAaC,cAAA,IAAkBgB,OAAA;EAErC,MAAMC,aAAA,GAAiBtB,KAAA,CAA6CuB,SAAA;EAEpE,MAAMC,aAAA,GAAgB9B,OAAA,CACpB,MACEH,oBAAA,CAAqB+B,aAAA,EAAgBG,KAAA,IAAU;IAE7C,IAAIA,KAAA,CAAMC,GAAA,KAAQ,SAASD,KAAA,CAAME,cAAA,CAAe;EAClD,CAAC,GACH,CAACL,aAAa,CAChB;EAEA,MAAMM,WAAA,GAAclC,OAAA,CAClB,MACEH,oBAAA,CAAqBS,KAAA,CAAM6B,OAAA,EAAiBJ,KAAA,IAAgC;IAC1EvB,UAAA,CAAY4B,WAAA,IAAiBjC,eAAA,CAAgBiC,WAAW,IAAI,OAAO,CAACA,WAAY;IAChF,IAAIZ,aAAA,IAAiB,0BAA0BO,KAAA,EAAO;MACpDT,gCAAA,CAAiCe,OAAA,GAAUN,KAAA,CAAMO,oBAAA,CAAqB;MAItE,IAAI,CAAChB,gCAAA,CAAiCe,OAAA,EAASN,KAAA,CAAMQ,eAAA,CAAgB;IACvE;EACF,CAAC,GACH,CAACf,aAAa,CAChB;EAEA,OAAO;IACLgB,WAAA,EACE5C,KAAA,IAAS4B,aAAA,GACP,eAAApB,GAAA,CAACH,WAAA;MACCwC,QAAA,EAAQ;MACRC,OAAA,EAASxB,MAAA;MACTyB,OAAA,EAAS,CAACrB,gCAAA,CAAiCe,OAAA;MAC3CzB,IAAA;MACAG,KAAA;MACAR,OAAA;MACAM,QAAA;MACAC;IAAA,CACF,IACE;IACN8B,WAAA,EAAavB,YAAA;IACbJ,aAAA,EAAe;MACb4B,IAAA,EAAM;MACN,mBAAmBnC,UAAA;MACnB,gBAAgBP,eAAA,CAAgBI,OAAO,IAAI,UAAUA,OAAA;MACrD,GAAGU,aAAA;MACH,IAAIrB,KAAA,IAAS;QACXkD,IAAA,EAAM;QACN/B,KAAA;QACA,cAAcb,QAAA,CAASK,OAAO;QAC9B,iBAAiBO,QAAA,GAAW,KAAK;QACjCA,QAAA;QACAe,SAAA,EAAWf,QAAA,GAAW,SAAYgB;MACpC;MACAK,OAAA,EAASrB,QAAA,GAAW,SAAYoB;IAClC;EACF;AACF","ignoreList":[]}
|
|
@@ -7,38 +7,42 @@ import React, { useMemo } from "react";
|
|
|
7
7
|
import { BubbleInput } from "./BubbleInput.native.js";
|
|
8
8
|
import { getState, isIndeterminate } from "./utils.native.js";
|
|
9
9
|
function useCheckbox(props, param, ref) {
|
|
10
|
-
var [checked, setChecked] = param
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}), isFormControl && "isPropagationStopped" in event && (hasConsumerStoppedPropagationRef.current = event.isPropagationStopped(), hasConsumerStoppedPropagationRef.current || event.stopPropagation());
|
|
10
|
+
var [checked, setChecked] = param;
|
|
11
|
+
var {
|
|
12
|
+
labelledBy: ariaLabelledby,
|
|
13
|
+
name,
|
|
14
|
+
required,
|
|
15
|
+
disabled,
|
|
16
|
+
value = "on",
|
|
17
|
+
onCheckedChange,
|
|
18
|
+
...checkboxProps
|
|
19
|
+
} = props;
|
|
20
|
+
var [button, setButton] = React.useState(null);
|
|
21
|
+
var composedRefs = useComposedRefs(ref, setButton);
|
|
22
|
+
var hasConsumerStoppedPropagationRef = React.useRef(false);
|
|
23
|
+
var isFormControl = isWeb ? button ? Boolean(button.closest("form")) : true : false;
|
|
24
|
+
var labelId = useLabelContext(button);
|
|
25
|
+
var labelledBy = ariaLabelledby || labelId;
|
|
26
|
+
var parentKeyDown = props.onKeyDown;
|
|
27
|
+
var handleKeyDown = useMemo(function () {
|
|
28
|
+
return composeEventHandlers(parentKeyDown, function (event) {
|
|
29
|
+
if (event.key === "Enter") event.preventDefault();
|
|
30
|
+
});
|
|
31
|
+
}, [parentKeyDown]);
|
|
32
|
+
var handlePress = useMemo(function () {
|
|
33
|
+
return composeEventHandlers(props.onPress, function (event) {
|
|
34
|
+
setChecked(function (prevChecked) {
|
|
35
|
+
return isIndeterminate(prevChecked) ? true : !prevChecked;
|
|
37
36
|
});
|
|
38
|
-
|
|
37
|
+
if (isFormControl && "isPropagationStopped" in event) {
|
|
38
|
+
hasConsumerStoppedPropagationRef.current = event.isPropagationStopped();
|
|
39
|
+
if (!hasConsumerStoppedPropagationRef.current) event.stopPropagation();
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}, [isFormControl]);
|
|
39
43
|
return {
|
|
40
44
|
bubbleInput: isWeb && isFormControl ? /* @__PURE__ */_jsx(BubbleInput, {
|
|
41
|
-
isHidden:
|
|
45
|
+
isHidden: true,
|
|
42
46
|
control: button,
|
|
43
47
|
bubbles: !hasConsumerStoppedPropagationRef.current,
|
|
44
48
|
name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","useComposedRefs","isWeb","composeEventHandlers","useLabelContext","React","useMemo","BubbleInput","getState","isIndeterminate","useCheckbox","props","param","ref","checked","setChecked","labelledBy","ariaLabelledby","name","required","disabled","value","onCheckedChange","checkboxProps","button","setButton","useState","composedRefs","hasConsumerStoppedPropagationRef","useRef","isFormControl","closest","labelId","parentKeyDown","onKeyDown","handleKeyDown","event","key","preventDefault","handlePress","onPress","prevChecked","current","isPropagationStopped","stopPropagation","bubbleInput","isHidden","control","bubbles","checkboxRef","role","type"],"sources":["../../src/useCheckbox.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,2BAAuB;AAChC,SAASC,eAAa;AAEtB,SAASC,KAAA,4BAA4B;AACrC,SAASC,oBAAA,QAAuB;AAChC,SAAOC,eAAS,QAAe;AAG/B,OAAAC,KAAS,IAAAC,OAAA,QAAmB;AAC5B,SAASC,WAAU,iCAAuB;AAiFlC,SAAAC,QAAA,EAAAC,eAAA;AAvDD,SAASC,YACdC,KAAA,EACAC,KAAC,EAAAC,GAAS;EAMV,KAAAC,OAAM,EAAAC,UAAA,IAAAH,KAAA;
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","useComposedRefs","isWeb","composeEventHandlers","useLabelContext","React","useMemo","BubbleInput","getState","isIndeterminate","useCheckbox","props","param","ref","checked","setChecked","labelledBy","ariaLabelledby","name","required","disabled","value","onCheckedChange","checkboxProps","button","setButton","useState","composedRefs","hasConsumerStoppedPropagationRef","useRef","isFormControl","Boolean","closest","labelId","parentKeyDown","onKeyDown","handleKeyDown","event","key","preventDefault","handlePress","onPress","prevChecked","current","isPropagationStopped","stopPropagation","bubbleInput","isHidden","control","bubbles","checkboxRef","role","type"],"sources":["../../src/useCheckbox.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,GAAA,IAAAC,IAAA,2BAAuB;AAChC,SAASC,eAAa;AAEtB,SAASC,KAAA,4BAA4B;AACrC,SAASC,oBAAA,QAAuB;AAChC,SAAOC,eAAS,QAAe;AAG/B,OAAAC,KAAS,IAAAC,OAAA,QAAmB;AAC5B,SAASC,WAAU,iCAAuB;AAiFlC,SAAAC,QAAA,EAAAC,eAAA;AAvDD,SAASC,YACdC,KAAA,EACAC,KAAC,EAAAC,GAAS;EAMV,KAAAC,OAAM,EAAAC,UAAA,IAAAH,KAAA;EAAA,IACJ;IAAAI,UAAY,EAAAC,cAAA;IAAAC,IAAA;IAAAC,QAAA;IAAAC,QAAA;IAAAC,KAAA;IAAAC,eAAA;IAAA,GAAAC;EAAA,IAAAZ,KAAA;EAAA,IACZ,CAAAa,MAAA,EAAAC,SAAA,IAAApB,KAAA,CAAAqB,QAAA;EAAA,IACAC,YAAA,GAAA1B,eAAA,CAAAY,GAAA,EAAAY,SAAA;EAAA,IACAG,gCAAA,GAAAvB,KAAA,CAAAwB,MAAA;EAAA,IACAC,aAAQ,GAAA5B,KAAA,GAAAsB,MAAA,GAAAO,OAAA,CAAAP,MAAA,CAAAQ,OAAA;EAAA,IACRC,OAAA,GAAA7B,eAAA,CAAAoB,MAAA;EAAA,IACAR,UAAG,GAAAC,cAAA,IAAAgB,OAAA;EACL,IAAIC,aAAA,GAAAvB,KAAA,CAAAwB,SAAA;EACJ,IAAAC,aAAe,GAAA9B,OAAS,CAAI,YAAM;IAClC,OAAMH,oBAAe,CAAA+B,aAAqB,YAAgBG,KAAA;MAC1D,IAAMA,KAAA,CAAAC,GAAA,cAAAD,KAAA,CAAAE,cAAyC;IAE/C;EAEA,IACAL,aAAM,CAEN;EAEA,IAAAM,WAAM,GAAAlC,OAAgB;IACpB,OACEH,oBAAqB,CAAAQ,KAAA,CAAA8B,OAAA,EAAgB,UAAAJ,KAAU;MAE7CtB,UAAU,WAAQ2B,WAAS,EAAM;QAClC,OAAAjC,eAAA,CAAAiC,WAAA,YAAAA,WAAA;MACF;MACH,IAAAZ,aAAA,8BAAAO,KAAA;QAEMT,gCAAc,CAAAe,OAAA,GAAAN,KAAA,CAAAO,oBAAA;QAClB,IACE,CAAAhB,gCAA2B,CAAgBe,OAAC,EAAAN,KAAgC,CAAAQ,eAAA;MAC1E;IACA;EACE,IAIAf,aAAK,CAAgE;EACvE,OACD;IACHgB,WAAC,EAAA5C,KAAa,IAAA4B,aAAA,kBAAA9B,IAAA,CAAAO,WAAA;MAChBwC,QAAA;MAEAC,OAAO,EAAAxB,MAAA;MACLyB,OAAA,GAAArB,gCAEI,CAAAe,OAAA;MAACzB,IAAA;MAAAG,KAAA;MAAAP,OACC;MAAQK,QACR;MAASC;IACkC,KAC3C;IAAA8B,WACA,EAAAvB,YAAA;IAAAJ,aACA;MAAA4B,IACA;MAAA,iBACA,EAAAnC,UAAA;MAAA,gBAAAP,eAAA,CAAAK,OAAA,cAAAA,OAAA;MACF,GACES,aAAA;MACN,IAAArB,KAAA,IAAa;QACbkD,IAAA,UAAe;QACb/B,KAAM;QACN,cAAAb,QAAmB,CAAAM,OAAA;QACnB,eAAgB,EAAAM,QAAA,KAAgB,QAAO;QACvCA,QAAG;QACHe,SAAI,EAASf,QAAA,YAAAgB;MAAA;MACLK,OACN,EAAArB,QAAA,YAAAoB;IAAA;EAC8B;AACG;AACjC,SACkC9B,WACpC","ignoreList":[]}
|
package/dist/jsx/BubbleInput.mjs
CHANGED
|
@@ -4,27 +4,31 @@ import { isIndeterminate } from "./utils.mjs";
|
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
5
|
const BubbleInput = props => {
|
|
6
6
|
const {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
const input = ref.current
|
|
17
|
-
|
|
18
|
-
|
|
7
|
+
checked,
|
|
8
|
+
bubbles = true,
|
|
9
|
+
control,
|
|
10
|
+
isHidden,
|
|
11
|
+
...inputProps
|
|
12
|
+
} = props;
|
|
13
|
+
const ref = React.useRef(null);
|
|
14
|
+
const prevChecked = usePrevious(checked);
|
|
15
|
+
React.useEffect(() => {
|
|
16
|
+
const input = ref.current;
|
|
17
|
+
const inputProto = window.HTMLInputElement.prototype;
|
|
18
|
+
const descriptor = Object.getOwnPropertyDescriptor(inputProto, "checked");
|
|
19
|
+
const setChecked = descriptor.set;
|
|
19
20
|
if (prevChecked !== checked && setChecked) {
|
|
20
21
|
const event = new Event("click", {
|
|
21
22
|
bubbles
|
|
22
23
|
});
|
|
23
|
-
input.indeterminate = isIndeterminate(checked)
|
|
24
|
+
input.indeterminate = isIndeterminate(checked);
|
|
25
|
+
setChecked.call(input, isIndeterminate(checked) ? false : checked);
|
|
26
|
+
input.dispatchEvent(event);
|
|
24
27
|
}
|
|
25
|
-
}, [prevChecked, checked, bubbles])
|
|
28
|
+
}, [prevChecked, checked, bubbles]);
|
|
29
|
+
return /* @__PURE__ */jsx("input", {
|
|
26
30
|
type: "checkbox",
|
|
27
|
-
defaultChecked: isIndeterminate(checked) ?
|
|
31
|
+
defaultChecked: isIndeterminate(checked) ? false : checked,
|
|
28
32
|
...inputProps,
|
|
29
33
|
tabIndex: -1,
|
|
30
34
|
ref,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["usePrevious","React","isIndeterminate","jsx","BubbleInput","props","checked","bubbles","control","isHidden","inputProps","ref","useRef","prevChecked","useEffect","input","current","inputProto","window","HTMLInputElement","prototype","
|
|
1
|
+
{"version":3,"names":["usePrevious","React","isIndeterminate","jsx","BubbleInput","props","checked","bubbles","control","isHidden","inputProps","ref","useRef","prevChecked","useEffect","input","current","inputProto","window","HTMLInputElement","prototype","descriptor","Object","getOwnPropertyDescriptor","setChecked","set","event","Event","indeterminate","call","dispatchEvent","type","defaultChecked","tabIndex","style","position","pointerEvents","opacity","margin","appearance","accentColor"],"sources":["../../src/BubbleInput.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAASA,WAAA,QAAmB;AAC5B,YAAYC,KAAA,MAAW;AAGvB,SAASC,eAAA,QAAuB;AAkC5B,SAAAC,GAAA;AAxBG,MAAMC,WAAA,GAAeC,KAAA,IAA4B;EACtD,MAAM;IAAEC,OAAA;IAASC,OAAA,GAAU;IAAMC,OAAA;IAASC,QAAA;IAAU,GAAGC;EAAW,IAAIL,KAAA;EACtE,MAAMM,GAAA,GAAMV,KAAA,CAAMW,MAAA,CAAyB,IAAI;EAC/C,MAAMC,WAAA,GAAcb,WAAA,CAAYM,OAAO;EAGvCL,KAAA,CAAMa,SAAA,CAAU,MAAM;IACpB,MAAMC,KAAA,GAAQJ,GAAA,CAAIK,OAAA;IAClB,MAAMC,UAAA,GAAaC,MAAA,CAAOC,gBAAA,CAAiBC,SAAA;IAC3C,MAAMC,UAAA,GAAaC,MAAA,CAAOC,wBAAA,CACxBN,UAAA,EACA,SACF;IACA,MAAMO,UAAA,GAAaH,UAAA,CAAWI,GAAA;IAE9B,IAAIZ,WAAA,KAAgBP,OAAA,IAAWkB,UAAA,EAAY;MACzC,MAAME,KAAA,GAAQ,IAAIC,KAAA,CAAM,SAAS;QAAEpB;MAAQ,CAAC;MAC5CQ,KAAA,CAAMa,aAAA,GAAgB1B,eAAA,CAAgBI,OAAO;MAC7CkB,UAAA,CAAWK,IAAA,CAAKd,KAAA,EAAOb,eAAA,CAAgBI,OAAO,IAAI,QAAQA,OAAO;MACjES,KAAA,CAAMe,aAAA,CAAcJ,KAAK;IAC3B;EACF,GAAG,CAACb,WAAA,EAAaP,OAAA,EAASC,OAAO,CAAC;EAElC,OACE,eAAAJ,GAAA,CAAC;IACC4B,IAAA,EAAK;IACLC,cAAA,EAAgB9B,eAAA,CAAgBI,OAAO,IAAI,QAAQA,OAAA;IAClD,GAAGI,UAAA;IACJuB,QAAA,EAAU;IACVtB,GAAA;IACA,eAAaF,QAAA;IACbyB,KAAA,EAAO;MACL,IAAIzB,QAAA,GACA;QAAA;QAEE0B,QAAA,EAAU;QACVC,aAAA,EAAe;QACfC,OAAA,EAAS;QACTC,MAAA,EAAQ;MACV,IACA;QACEC,UAAA,EAAY;QACZC,WAAA,EAAa;MACf;MAEJ,GAAGnC,KAAA,CAAM6B;IACX;EAAA,CACF;AAEJ","ignoreList":[]}
|