initial commit
This commit is contained in:
40
node_modules/@headlessui/react/dist/components/switch/switch.d.ts
generated
vendored
Normal file
40
node_modules/@headlessui/react/dist/components/switch/switch.d.ts
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
import React, { ElementType, Ref } from 'react';
|
||||
import { Props } from '../../types.js';
|
||||
import { HasDisplayName, RefProp } from '../../utils/render.js';
|
||||
import { ComponentLabel } from '../label/label.js';
|
||||
import { ComponentDescription } from '../description/description.js';
|
||||
declare let DEFAULT_GROUP_TAG: React.ExoticComponent<{
|
||||
children?: React.ReactNode;
|
||||
}>;
|
||||
export type SwitchGroupProps<TTag extends ElementType> = Props<TTag>;
|
||||
declare function GroupFn<TTag extends ElementType = typeof DEFAULT_GROUP_TAG>(props: SwitchGroupProps<TTag>): JSX.Element;
|
||||
declare let DEFAULT_SWITCH_TAG: "button";
|
||||
interface SwitchRenderPropArg {
|
||||
checked: boolean;
|
||||
}
|
||||
type SwitchPropsWeControl = 'aria-checked' | 'aria-describedby' | 'aria-labelledby' | 'role' | 'tabIndex';
|
||||
export type SwitchProps<TTag extends ElementType> = Props<TTag, SwitchRenderPropArg, SwitchPropsWeControl, {
|
||||
checked?: boolean;
|
||||
defaultChecked?: boolean;
|
||||
onChange?(checked: boolean): void;
|
||||
name?: string;
|
||||
value?: string;
|
||||
form?: string;
|
||||
}>;
|
||||
declare function SwitchFn<TTag extends ElementType = typeof DEFAULT_SWITCH_TAG>(props: SwitchProps<TTag>, ref: Ref<HTMLButtonElement>): JSX.Element;
|
||||
interface ComponentSwitch extends HasDisplayName {
|
||||
<TTag extends ElementType = typeof DEFAULT_SWITCH_TAG>(props: SwitchProps<TTag> & RefProp<typeof SwitchFn>): JSX.Element;
|
||||
}
|
||||
interface ComponentSwitchGroup extends HasDisplayName {
|
||||
<TTag extends ElementType = typeof DEFAULT_GROUP_TAG>(props: SwitchGroupProps<TTag> & RefProp<typeof GroupFn>): JSX.Element;
|
||||
}
|
||||
interface ComponentSwitchLabel extends ComponentLabel {
|
||||
}
|
||||
interface ComponentSwitchDescription extends ComponentDescription {
|
||||
}
|
||||
export declare let Switch: ComponentSwitch & {
|
||||
Group: ComponentSwitchGroup;
|
||||
Label: ComponentSwitchLabel;
|
||||
Description: ComponentSwitchDescription;
|
||||
};
|
||||
export {};
|
||||
1
node_modules/@headlessui/react/dist/components/switch/switch.js
generated
vendored
Normal file
1
node_modules/@headlessui/react/dist/components/switch/switch.js
generated
vendored
Normal file
@@ -0,0 +1 @@
|
||||
import i,{Fragment as x,createContext as A,useContext as H,useMemo as E,useRef as F,useState as M,useEffect as _}from"react";import{forwardRefWithAs as U,render as P,compact as K}from'../../utils/render.js';import{useId as B}from'../../hooks/use-id.js';import{Keys as g}from'../keyboard.js';import{isDisabledReactIssue7711 as I}from'../../utils/bugs.js';import{Label as O,useLabels as W}from'../label/label.js';import{Description as N,useDescriptions as J}from'../description/description.js';import{useResolveButtonType as X}from'../../hooks/use-resolve-button-type.js';import{useSyncRefs as j}from'../../hooks/use-sync-refs.js';import{Hidden as $,Features as q}from'../../internal/hidden.js';import{attemptSubmit as z}from'../../utils/form.js';import{useEvent as m}from'../../hooks/use-event.js';import{useControllable as Q}from'../../hooks/use-controllable.js';import{useDisposables as V}from'../../hooks/use-disposables.js';let y=A(null);y.displayName="GroupContext";let Y=x;function Z(s){var d;let[n,p]=M(null),[c,f]=W(),[r,h]=J(),l=E(()=>({switch:n,setSwitch:p,labelledby:c,describedby:r}),[n,p,c,r]),T={},b=s;return i.createElement(h,{name:"Switch.Description"},i.createElement(f,{name:"Switch.Label",props:{htmlFor:(d=l.switch)==null?void 0:d.id,onClick(t){n&&(t.currentTarget.tagName==="LABEL"&&t.preventDefault(),n.click(),n.focus({preventScroll:!0}))}}},i.createElement(y.Provider,{value:l},P({ourProps:T,theirProps:b,defaultTag:Y,name:"Switch.Group"}))))}let ee="button";function te(s,n){let p=B(),{id:c=`headlessui-switch-${p}`,checked:f,defaultChecked:r=!1,onChange:h,name:l,value:T,form:b,...d}=s,t=H(y),u=F(null),D=j(u,n,t===null?null:t.setSwitch),[o,a]=Q(f,h,r),S=m(()=>a==null?void 0:a(!o)),C=m(e=>{if(I(e.currentTarget))return e.preventDefault();e.preventDefault(),S()}),L=m(e=>{e.key===g.Space?(e.preventDefault(),S()):e.key===g.Enter&&z(e.currentTarget)}),v=m(e=>e.preventDefault()),G=E(()=>({checked:o}),[o]),R={id:c,ref:D,role:"switch",type:X(s,u),tabIndex:0,"aria-checked":o,"aria-labelledby":t==null?void 0:t.labelledby,"aria-describedby":t==null?void 0:t.describedby,onClick:C,onKeyUp:L,onKeyPress:v},k=V();return _(()=>{var w;let e=(w=u.current)==null?void 0:w.closest("form");e&&r!==void 0&&k.addEventListener(e,"reset",()=>{a(r)})},[u,a]),i.createElement(i.Fragment,null,l!=null&&o&&i.createElement($,{features:q.Hidden,...K({as:"input",type:"checkbox",hidden:!0,readOnly:!0,form:b,checked:o,name:l,value:T})}),P({ourProps:R,theirProps:d,slot:G,defaultTag:ee,name:"Switch"}))}let ne=U(te),re=Z,Ge=Object.assign(ne,{Group:re,Label:O,Description:N});export{Ge as Switch};
|
||||
Reference in New Issue
Block a user