plume-ui-react 0.5.0 → 0.6.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/README.md +1 -1
- package/dist/chunk-LWLHCHAV.mjs +1 -0
- package/dist/chunk-MAOSYNN2.mjs +1 -0
- package/dist/chunk-MREJ5C76.mjs +1 -0
- package/dist/chunk-V7QXMR67.mjs +1 -0
- package/dist/components/form/checkbox/checkbox.mjs +1 -1
- package/dist/components/form/radio/radio.mjs +1 -1
- package/dist/components/form/select/index.mjs +1 -0
- package/dist/components/form/select/select-content.mjs +1 -0
- package/dist/components/form/select/select-context.mjs +1 -0
- package/dist/components/form/select/select-dom.mjs +1 -0
- package/dist/components/form/select/select-group.mjs +1 -0
- package/dist/components/form/select/select-option.mjs +1 -0
- package/dist/components/form/select/select-trigger.mjs +1 -0
- package/dist/components/form/select/select-value.mjs +1 -0
- package/dist/components/form/select/select.mjs +1 -0
- package/dist/components/form/select/use-select-keyboard.mjs +1 -0
- package/dist/components/form/select/use-select-registry.mjs +1 -0
- package/dist/components/form/select/use-select-value.mjs +1 -0
- package/dist/components/form/toggle/toggle.mjs +1 -1
- package/dist/components/interaction/dropdown/dropdown-context.mjs +1 -0
- package/dist/components/interaction/dropdown/dropdown-item.mjs +1 -0
- package/dist/components/interaction/dropdown/dropdown-label.mjs +1 -0
- package/dist/components/interaction/dropdown/dropdown-menu.mjs +1 -0
- package/dist/components/interaction/dropdown/dropdown-separator.mjs +1 -0
- package/dist/components/interaction/dropdown/dropdown-trigger.mjs +1 -0
- package/dist/components/interaction/dropdown/dropdown.mjs +1 -0
- package/dist/components/interaction/dropdown/index.mjs +1 -0
- package/dist/components/overlay/modal/modal-body.mjs +1 -1
- package/dist/components/overlay/modal/modal-close.mjs +1 -1
- package/dist/components/overlay/modal/modal-content.mjs +1 -1
- package/dist/components/overlay/modal/modal-footer.mjs +1 -1
- package/dist/components/overlay/modal/modal-header.mjs +1 -1
- package/dist/components/overlay/popover/popover-content.mjs +1 -1
- package/dist/components/overlay/toast/index.mjs +1 -1
- package/dist/components/overlay/toast/toast-item.mjs +1 -1
- package/dist/components/overlay/toast/toast-provider.mjs +1 -1
- package/dist/components/presentation/badge/badge.mjs +1 -1
- package/dist/components/presentation/chip/chip.mjs +1 -0
- package/dist/components/presentation/chip/index.mjs +1 -0
- package/dist/components/presentation/shared/tag-vars.mjs +1 -0
- package/dist/index.d.mts +185 -9
- package/dist/index.d.ts +185 -9
- package/dist/index.js +6 -6
- package/dist/index.mjs +1 -1
- package/dist/overlay/class-names.mjs +1 -0
- package/dist/overlay/icons.mjs +1 -0
- package/dist/overlay/overlay-close.mjs +1 -1
- package/dist/overlay/use-floating-panel.mjs +1 -0
- package/dist/overlay/use-typeahead.mjs +1 -0
- package/dist/styles.css +1 -1
- package/package.json +1 -1
- package/dist/chunk-O5UHJVHD.mjs +0 -1
package/README.md
CHANGED
|
@@ -38,7 +38,7 @@ export function App() {
|
|
|
38
38
|
|
|
39
39
|
## Components
|
|
40
40
|
|
|
41
|
-
`Badge`, `Button`, `Card` (with `CardHeader`, `CardBody` and `CardFooter`), `Checkbox`, `DatePicker`, `Field`, `Icon`, `Input`, `List` (with `ListDivider`, `ListItem`, `ListItemButton`, `ListItemIcon`, `ListItemText` and `ListSubheader`), `Modal` (with `ModalBody`, `ModalClose`, `ModalContent`, `ModalFooter`, `ModalHeader` and `ModalTrigger`), `Popover` (with `PopoverClose`, `PopoverContent` and `PopoverTrigger`), `Radio`, `RadioGroup`, `Spinner`, `Tabs` (with `TabList`, `Tab`, `TabPanels` and `TabPanel`), `Textarea`, `ToastProvider` (with the `useToast` hook), `Toggle` and `Tooltip`.
|
|
41
|
+
`Badge`, `Button`, `Card` (with `CardHeader`, `CardBody` and `CardFooter`), `Checkbox`, `Chip`, `DatePicker`, `Dropdown` (with `DropdownItem`, `DropdownLabel`, `DropdownMenu`, `DropdownSeparator` and `DropdownTrigger`), `Field`, `Icon`, `Input`, `List` (with `ListDivider`, `ListItem`, `ListItemButton`, `ListItemIcon`, `ListItemText` and `ListSubheader`), `Modal` (with `ModalBody`, `ModalClose`, `ModalContent`, `ModalFooter`, `ModalHeader` and `ModalTrigger`), `Popover` (with `PopoverClose`, `PopoverContent` and `PopoverTrigger`), `Radio`, `RadioGroup`, `Select` (with `SelectContent`, `SelectGroup`, `SelectOption`, `SelectTrigger` and `SelectValue`), `Spinner`, `Tabs` (with `TabList`, `Tab`, `TabPanels` and `TabPanel`), `Textarea`, `ToastProvider` (with the `useToast` hook), `Toggle` and `Tooltip`.
|
|
42
42
|
|
|
43
43
|
The [documentation site](https://darioegb.github.io/plume-ui-react/) has a live playground, props and examples for each one, plus the color palette, design tokens and framework integration guides.
|
|
44
44
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _={sm:"_sm_1n0lm_1",md:"_md_1n0lm_6",lg:"_lg_1n0lm_11",rounded:"_rounded_1n0lm_16",pill:"_pill_1n0lm_20",solid:"_solid_1n0lm_24",outline:"_outline_1n0lm_29",subtle:"_subtle_1n0lm_34"};export{_ as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _={backdrop:"_backdrop_1mek9_25",content:"_content_1mek9_37",sm:"_sm_1mek9_53",md:"_md_1mek9_57",lg:"_lg_1mek9_61",header:"_header_1mek9_65",body:"_body_1mek9_73",footer:"_footer_1mek9_84",close:"_close_1mek9_93","backdrop-in":"_backdrop-in_1mek9_1","content-in":"_content-in_1mek9_1"};export{_ as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var _={menu:"_menu_jjmbf_22",sm:"_sm_jjmbf_38",md:"_md_jjmbf_42",lg:"_lg_jjmbf_46",elevated:"_elevated_jjmbf_50",outline:"_outline_jjmbf_54",item:"_item_jjmbf_58",icon:"_icon_jjmbf_105",label:"_label_jjmbf_110",shortcut:"_shortcut_jjmbf_115",separator:"_separator_jjmbf_122",groupLabel:"_groupLabel_jjmbf_130","menu-in":"_menu-in_jjmbf_1"};export{_ as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var r={"select-border-color":"var(--plume-border-strong)","select-background-color":"var(--plume-surface-muted)",control:"_control_5rcrc_75",sm:"_sm_5rcrc_87",lg:"_lg_5rcrc_92",outline:"_outline_5rcrc_97",filled:"_filled_5rcrc_101",underline:"_underline_5rcrc_108",pill:"_pill_5rcrc_113",disabled:"_disabled_5rcrc_117",invalid:"_invalid_5rcrc_132",field:"_field_5rcrc_141",trigger:"_trigger_5rcrc_156",chevron:"_chevron_5rcrc_166",clear:"_clear_5rcrc_180",placeholder:"_placeholder_5rcrc_200",value:"_value_5rcrc_207",valueIcon:"_valueIcon_5rcrc_214",optionIcon:"_optionIcon_5rcrc_215",valueText:"_valueText_5rcrc_230",panel:"_panel_5rcrc_236",search:"_search_5rcrc_258",searchInput:"_searchInput_5rcrc_263",list:"_list_5rcrc_283",option:"_option_5rcrc_215",optionBody:"_optionBody_5rcrc_314",description:"_description_5rcrc_321",check:"_check_5rcrc_327",checkbox:"_checkbox_5rcrc_334",group:"_group_5rcrc_353",groupLabel:"_groupLabel_5rcrc_357",empty:"_empty_5rcrc_364","panel-in":"_panel-in_5rcrc_1"};export{r as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{forwardRef as
|
|
1
|
+
"use client";import{forwardRef as M,useEffect as H,useImperativeHandle as L,useRef as T}from"react";import{useControlLabelledBy as g}from"../field/use-control-labelled-by.mjs";var o={root:"_root_effkj_1",sm:"_sm_effkj_11",md:"_md_effkj_16",lg:"_lg_effkj_21",checkbox:"_checkbox_effkj_26",solid:"_solid_effkj_52",outline:"_outline_effkj_62",invalid:"_invalid_effkj_90",label:"_label_effkj_94",disabled:"_disabled_effkj_98"};import{jsx as u,jsxs as B}from"react/jsx-runtime";var R=(e,a)=>({"--checkbox-solid":`var(--plume-color-${e}-solid)`,"--checkbox-contrast":`var(--plume-color-${e}-solid-contrast)`,"--checkbox-text":`var(--plume-color-${e}-text)`,...a}),b=M(({children:e,className:a="",inputClassName:m="",labelClassName:k="",colorScheme:C="primary",disabled:s=!1,onChange:d,indeterminate:c=!1,readOnly:r=!1,size:_="md",style:h,variant:p="solid",...l},x)=>{let n=T(null),t=p!=="unstyled",{labelledBy:y,textId:v}=g({hasText:!!e,id:l.id,labelledBy:l["aria-labelledby"]}),j=e?"label":"span",f=l["aria-invalid"]===!0||l["aria-invalid"]==="true";L(x,()=>n.current),H(()=>{n.current&&(n.current.indeterminate=c)},[c]);let I=[t&&o.root,t&&o[_],s&&o.disabled,a].filter(Boolean).join(" "),S=[t&&o.checkbox,t&&o[p],t&&f&&o.invalid,m].filter(Boolean).join(" ")||void 0,E=i=>{r&&i.preventDefault()},P=i=>{r||d?.(i)};return B(j,{className:I,style:R(f?"error":C,h),children:[u("input",{"aria-readonly":r||void 0,className:S,disabled:s,onChange:d?P:void 0,onClick:E,ref:n,type:"checkbox",...l,"aria-labelledby":y}),e?u("span",{className:[t&&o.label,k].filter(Boolean).join(" ")||void 0,id:v,children:e}):null]})});b.displayName="Checkbox";var W=Object.assign(b,{labelsItself:!0});export{W as Checkbox};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{forwardRef as
|
|
1
|
+
"use client";import{forwardRef as A}from"react";import{useControlLabelledBy as V}from"../field/use-control-labelled-by.mjs";import{useRadioGroupContext as j}from"./radio-group-context.mjs";var o={root:"_root_ge9em_1",sm:"_sm_ge9em_11",md:"_md_ge9em_16",lg:"_lg_ge9em_21",radio:"_radio_ge9em_26",solid:"_solid_ge9em_52",outline:"_outline_ge9em_61",invalid:"_invalid_ge9em_82",label:"_label_ge9em_86",disabled:"_disabled_ge9em_90"};import{jsx as b,jsxs as W}from"react/jsx-runtime";var F=(i,a)=>({"--radio-solid":`var(--plume-color-${i}-solid)`,"--radio-contrast":`var(--plume-color-${i}-solid-contrast)`,"--radio-text":`var(--plume-color-${i}-text)`,...a}),_=A(({checked:i,children:a,className:f="",inputClassName:v="",labelClassName:y="",colorScheme:C,defaultChecked:g,disabled:R=!1,name:S,onChange:s,readOnly:h=!1,required:d=!1,size:P,style:B,value:n,variant:x,...l},I)=>{let e=j(),p=x??e?.variant??"solid",{labelledBy:E,textId:M}=V({hasText:!!a,id:l.id,labelledBy:l["aria-labelledby"]}),L=a?"label":"span",t=p!=="unstyled",m=l["aria-invalid"]===!0||l["aria-invalid"]==="true"||!!e?.invalid,u=R||!!e?.disabled,c=h||!!e?.readOnly,O=P??e?.size??"md",T=C??e?.colorScheme??"primary",H=[t&&o.root,t&&o[O],u&&o.disabled,f].filter(Boolean).join(" "),N=[t&&o.radio,t&&o[p],t&&m&&o.invalid,v].filter(Boolean).join(" ")||void 0,k=r=>{c&&r.preventDefault()},w=r=>{c||(s?.(r),e?.select(String(n??""),r))},z=e?{checked:e.value===String(n??""),name:e.name,required:e.required||d}:{checked:i,defaultChecked:g,name:S,required:d};return W(L,{className:H,style:F(m?"error":T,B),children:[b("input",{className:N,disabled:u,onChange:s||e?w:void 0,onClick:k,ref:I,type:"radio",value:n,...z,...l,"aria-labelledby":E}),a?b("span",{className:[t&&o.label,y].filter(Boolean).join(" ")||void 0,id:M,children:a}):null]})});_.displayName="Radio";var K=Object.assign(_,{labelsItself:!0});export{K as Radio};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Select as r}from"./select.mjs";import{SelectContent as p}from"./select-content.mjs";import{SelectGroup as c}from"./select-group.mjs";import{SelectOption as n}from"./select-option.mjs";import{SelectTrigger as P}from"./select-trigger.mjs";import{SelectValue as x}from"./select-value.mjs";export{r as Select,p as SelectContent,c as SelectGroup,n as SelectOption,P as SelectTrigger,x as SelectValue};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as n}from"../../../chunk-V7QXMR67.mjs";import{forwardRef as B,useEffect as f,useState as h}from"react";import{Portal as F}from"../../../overlay/index.mjs";import{useFloatingPanel as O}from"../../../overlay/use-floating-panel.mjs";import{joinClasses as c}from"../../../overlay/class-names.mjs";import{mergeRefs as k}from"../../../overlay/trigger.mjs";import{useSelectContext as K}from"./select-context.mjs";import{jsx as a,jsxs as j}from"react/jsx-runtime";var W=B(({"aria-label":m,children:b,className:C="",classNames:r,emptyText:y="No results",searchLabel:v="Search",searchPlaceholder:S,style:P},g)=>{let e=K("SelectContent"),{close:x,flip:L,isStyled:l,labelling:u,multiple:w,offset:R,open:t,placement:E,query:i,shift:M,trigger:s}=e,[p,T]=h(null),[H,I]=h(void 0),{position:d,setPanel:N}=O({anchor:s,enabled:t,flip:L,offset:R,onDismiss:o=>x(o==="escape"),placement:E,shift:M});f(()=>{t&&s&&I(s.getBoundingClientRect().width)},[t,s]),f(()=>{t&&p&&p.focus({preventScroll:!0})},[t,p]);let D=[l&&n.panel,C].filter(Boolean).join(" "),A=e.options.some(o=>!i||o.label.toLowerCase().includes(i.toLowerCase()));return a(F,{children:j("div",{className:D||void 0,"data-placement":d.placement,"data-plume-select-panel":"",hidden:!t,ref:k(N,g),style:{...d.style,minWidth:H,opacity:d.isPositioned?void 0:0,...P},children:[e.searchable?a("div",{className:c(l&&n.search,r?.search),children:a("input",{"aria-activedescendant":e.activeId,"aria-autocomplete":"list","aria-controls":e.listboxId,"aria-expanded":t,"aria-label":v,autoComplete:"off",className:c(l&&n.searchInput,r?.searchInput),onChange:o=>e.setQuery(o.target.value),onKeyDown:o=>e.onListKeyDown(o,!0),placeholder:S,ref:T,role:"combobox",spellCheck:!1,type:"text",value:i})}):null,a("div",{"aria-label":m??u.label,"aria-labelledby":m?void 0:u.labelledBy,"aria-multiselectable":w||void 0,className:c(l&&n.list,r?.list),"data-plume-select-list":"",id:e.listboxId,ref:e.setListbox,role:"listbox",children:b}),i&&!A?a("div",{className:c(l&&n.empty,r?.empty),children:y}):null]})})});W.displayName="SelectContent";export{W as SelectContent};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{createContext as n,useContext as o}from"react";var l=n(void 0);function r(t){let e=o(l);if(!e)throw new Error(`${t} must be used within a <Select>`);return e}export{l as SelectContext,r as useSelectContext};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var u='[role="option"]:not([aria-disabled="true"]):not([hidden])',c=e=>e?Array.from(e.querySelectorAll(u)):[];function f(e,l,n){if(e.length===0)return;let t=e.findIndex(i=>i.id===l);if(t===-1)return e[n<0?e.length-1:0];let d=Math.min(Math.max(t+n,0),e.length-1),r=Math.abs(n)===1;return r&&t+n<0?e[e.length-1]:r&&t+n>e.length-1?e[0]:e[d]}var a=e=>{typeof e?.scrollIntoView=="function"&&e.scrollIntoView({block:"nearest"})};export{c as getEnabledOptions,a as scrollOptionIntoView,f as stepOption};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as e}from"../../../chunk-V7QXMR67.mjs";import{forwardRef as d,useId as c}from"react";import{useSelectContext as m}from"./select-context.mjs";import{jsx as f,jsxs as S}from"react/jsx-runtime";var u=d(({children:t,className:l="",label:p,labelClassName:s="",style:a},i)=>{let{isStyled:o}=m("SelectGroup"),r=c(),n=[o&&e.group,l].filter(Boolean).join(" ");return S("div",{"aria-labelledby":r,className:n||void 0,ref:i,role:"group",style:a,children:[f("div",{className:[o&&e.groupLabel,s].filter(Boolean).join(" ")||void 0,id:r,children:p}),t]})});u.displayName="SelectGroup";export{u as SelectGroup};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a}from"../../../chunk-V7QXMR67.mjs";import{forwardRef as j,useEffect as w,useId as h,useRef as P,useState as A}from"react";import{joinClasses as O}from"../../../overlay/class-names.mjs";import{CheckIcon as D}from"../../../overlay/icons.mjs";import{useSelectContext as F}from"./select-context.mjs";import{Fragment as J,jsx as n,jsxs as S}from"react/jsx-runtime";var $=(e,o)=>e.toLowerCase().includes(o.toLowerCase()),q=e=>e==="Enter"||e===" ";function y({children:e,className:o,show:t}){return t?n("span",{"aria-hidden":"true",className:o,children:e}):null}function Q({children:e,className:o,id:t}){return e?S(J,{children:[" ",n("span",{className:o,id:t,children:e})]}):null}function z({children:e,disabled:o,icon:t,label:r,value:i},d){let f=P(null),m=P(t),[s,R]=A(r??""),c=r??s;return m.current=t,w(()=>{r===void 0&&R(f.current?.textContent??"")},[e,r]),w(()=>d({disabled:!!o,get icon(){return m.current},label:c,value:i}),[o,d,c,i]),{resolved:c,textRef:f}}var G=j(({children:e,className:o="",classNames:t,description:r,disabled:i=!1,icon:d,label:f,style:m,value:s},R)=>{let c=F("SelectOption"),u=h(),N=h(),x=h(),{isStyled:l,multiple:M,query:E,register:g,select:b,setActiveId:C}=c,{resolved:k,textRef:I}=z({children:e,disabled:i,icon:d,label:f,value:s},g),v=c.isSelected(s),L=$(k,E),T=[l&&a.option,o].filter(Boolean).join(" "),H=()=>{!i&&c.activeId!==u&&C(u)},K=p=>{p.preventDefault(),i||b(s)},B=p=>{q(p.key)&&(p.preventDefault(),i||b(s))};return S("div",{"aria-disabled":i||void 0,"aria-labelledby":r?`${x} ${N}`:void 0,"aria-selected":v,className:T||void 0,"data-active":c.activeId===u?"":void 0,"data-label":k,"data-plume-select-option":"","data-value":s,hidden:!L,id:u,onClick:K,onKeyDown:B,onMouseDown:p=>p.preventDefault(),onPointerMove:H,ref:R,role:"option",style:m,tabIndex:-1,children:[n(y,{className:O(l&&a.checkbox,t?.checkbox),show:M,children:v?n(D,{}):null}),n(y,{className:O(l&&a.optionIcon,t?.icon),show:!!d,children:d}),S("span",{className:l?a.optionBody:void 0,"data-plume-select-option-body":"",children:[n("span",{id:x,ref:I,children:e??f}),n(Q,{className:O(l&&a.description,t?.description),id:N,children:r})]}),n(y,{className:O(l&&a.check,t?.check),show:!M&&v,children:n(D,{})})]})});G.displayName="SelectOption";export{G as SelectOption};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as i}from"../../../chunk-V7QXMR67.mjs";import{forwardRef as N,useEffect as O,useRef as V}from"react";import{ChevronDownIcon as D,CloseIcon as E}from"../../../overlay/icons.mjs";import{joinClasses as g}from"../../../overlay/class-names.mjs";import{mergeRefs as H}from"../../../overlay/trigger.mjs";import{Chip as S}from"../../presentation/chip/index.mjs";import{useFieldContext as M}from"../field/field-context.mjs";import{useSelectContext as R}from"./select-context.mjs";import{SelectValue as x}from"./select-value.mjs";import{Fragment as P,jsx as a,jsxs as b}from"react/jsx-runtime";var k={border:0,clip:"rect(0 0 0 0)",height:1,margin:-1,overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:1};function z({classNames:l,context:t,maxDisplay:n,removeLabel:e}){let{isStyled:o,selectedOptions:c}=t,d=c.slice(0,n),p=c.length-d.length,m=!t.disabled&&!t.readOnly,u=o?"subtle":"unstyled";return b(P,{children:[d.map(s=>a(S,{className:l?.chip,classNames:{remove:l?.chipRemove},icon:s.icon,onRemove:m?()=>t.remove(s.value):void 0,removeLabel:e(s.label),size:t.size,variant:u,children:a("span",{"aria-hidden":"true",children:s.label})},s.value)),p>0?b(S,{className:l?.chip,size:t.size,variant:u,children:["+",p]}):null]})}function F(l,t){let{isStyled:n}=l;return[n&&i.control,n&&i[l.variant],n&&i[l.size],n&&i[l.shape],n&&l.invalid&&i.invalid,n&&l.disabled&&i.disabled,t].filter(Boolean).join(" ")||void 0}var T=N(({ariaLabel:l,children:t,classNames:n,context:e,labelledBy:o,placeholder:c,showChips:d},p)=>{let{isStyled:m,open:u}=e,s=e.selected.length>0,f=e.selectedOptions.map(r=>r.label).join(", ");return a("button",{"aria-activedescendant":u&&!e.searchable?e.activeId:void 0,"aria-controls":e.listboxId,"aria-describedby":e.describedBy,"aria-expanded":u,"aria-invalid":e.invalid||void 0,"aria-label":l,"aria-labelledby":o,"aria-readonly":e.readOnly||void 0,"aria-required":e.required||void 0,className:g(m&&i.trigger,n?.trigger),"data-placeholder":s?void 0:"","data-plume-select-trigger":"",disabled:e.disabled,id:e.controlId,onClick:()=>u?e.close(!1):e.setOpen(!0),onKeyDown:r=>e.onListKeyDown(r,!1),ref:p,role:"combobox",type:"button",children:d?b(P,{children:[s?null:a("span",{className:m?i.placeholder:void 0,children:c}),s?a("span",{style:k,children:f}):null]}):t??a(x,{placeholder:c})})});T.displayName="ComboboxButton";function j({classNames:l,clearLabel:t,context:n}){return a("button",{"aria-label":t,className:g(n.isStyled&&i.clear,l?.clear),"data-plume-select-clear":"",onClick:n.clear,type:"button",children:a(E,{})})}function q({classNames:l,context:t,onToggle:n}){return a("button",{"aria-hidden":"true",className:g(t.isStyled&&i.chevron,l?.chevron),"data-plume-select-chevron":"",disabled:t.disabled,onClick:n,onMouseDown:e=>e.preventDefault(),tabIndex:-1,type:"button",children:a(D,{})})}function K(l,t,n){let e=M(),{setLabelling:o}=l,c=e?.controlId===l.controlId?e.labelId:void 0,d=n??(t?void 0:c);return O(()=>{o({label:t,labelledBy:d})},[t,d,o]),d}var $=N(({"aria-label":l,"aria-labelledby":t,children:n,className:e="",classNames:o,clearLabel:c="Clear",display:d="chips",maxDisplay:p=Number.POSITIVE_INFINITY,placeholder:m,removeLabel:u=r=>`Remove ${r}`,style:s},f)=>{let r=R("SelectTrigger"),h=V(null),B=K(r,l,t),{isStyled:w,name:y,open:v}=r,C=r.multiple&&d==="chips"&&n===void 0,L={"--select-color":`var(--plume-color-${r.colorScheme}-text)`,...s},I=()=>{h.current?.focus(),v?r.close(!1):r.setOpen(!0)};return b("div",{className:F(r,e),"data-open":v?"":void 0,"data-plume-select-control":"",ref:r.setTrigger,style:L,children:[b("div",{className:g(w&&i.field,o?.field),"data-plume-select-field":"",children:[C?a(z,{classNames:o,context:r,maxDisplay:p,removeLabel:u}):null,a(T,{ariaLabel:l,classNames:o,context:r,labelledBy:B,placeholder:m,ref:H(h,f),showChips:C,children:n})]}),r.canClear&&r.selected.length>0?a(j,{classNames:o,clearLabel:c,context:r}):null,a(q,{classNames:o,context:r,onToggle:I}),y?a(Y,{name:y}):null]})});function Y({name:l}){let{multiple:t,selected:n}=R("SelectTrigger");return t?n.map(e=>a("input",{name:l,type:"hidden",value:e},e)):a("input",{name:l,type:"hidden",value:n[0]??""})}$.displayName="SelectTrigger";export{$ as SelectTrigger};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as n}from"../../../chunk-V7QXMR67.mjs";import{useSelectContext as s}from"./select-context.mjs";import{Fragment as u,jsx as t,jsxs as r}from"react/jsx-runtime";function i({option:e}){let{isStyled:l}=s("SelectValue");return r(u,{children:[e.icon?t("span",{"aria-hidden":"true",className:l?n.valueIcon:void 0,children:e.icon}):null,t("span",{className:l?n.valueText:void 0,children:e.label})]})}function S({children:e,placeholder:l}){let{isStyled:o,multiple:c,selected:d,selectedOptions:a}=s("SelectValue");return d.length===0?l?t("span",{className:o?n.placeholder:void 0,children:l}):null:e?e(a):c?t("span",{className:o?n.valueText:void 0,children:a.map(p=>p.label).join(", ")}):a[0]?t("span",{className:o?n.value:void 0,children:t(i,{option:a[0]})}):null}export{i as OptionContent,S as SelectValue};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{useCallback as i,useId as ie,useMemo as G,useState as L}from"react";import{useOpenState as ae}from"../../../overlay/use-open-state.mjs";import{SelectContext as ce}from"./select-context.mjs";import{useSelectKeyboard as ue}from"./use-select-keyboard.mjs";import{useSelectRegistry as de}from"./use-select-registry.mjs";import{useSelectValue as fe}from"./use-select-value.mjs";import{jsx as Se}from"react/jsx-runtime";function pe(s,l,S){return S?s.includes(l)?s.filter(c=>c!==l):[...s,l]:l===s[0]?void 0:[l]}function Pe({"aria-describedby":s,"aria-invalid":l,children:S,clearable:c=!1,closeOnSelect:J,colorScheme:x="secondary",defaultOpen:U=!1,defaultValue:W,disabled:g=!1,flip:M=!0,id:X,multiple:n=!1,name:V,offset:O=4,onOpenChange:Y,onValueChange:Z,open:_,placement:R="bottom-start",readOnly:b=!1,required:I=!1,searchable:m=!1,shape:E="rounded",shift:T=!0,size:H="md",value:j,variant:v="outline"}){let ee=ie(),y=X??ee,[f,te]=L(null),[oe,ne]=L(null),[N,le]=L({}),[h,p]=ae({defaultOpen:U,onOpenChange:Y,open:_}),{commit:r,selected:e}=fe({defaultValue:W,multiple:n,onValueChange:Z,value:j}),{options:u,register:q}=de(),t=!g&&!b,z=J??!n,P=i(o=>{(!o||t)&&p(o)},[t,p]),d=i(o=>{p(!1),o&&f?.querySelector('[role="combobox"]')?.focus()},[p,f]),C=i(o=>{if(!t)return;let a=pe(e,o,n);a&&r(a),z&&d(!0)},[t,d,r,n,e,z]),K=i(()=>{t&&e.length>0&&r([])},[t,r,e]),k=i(o=>{t&&r(e.filter(a=>a!==o))},[t,r,e]),re=i(()=>{!t||e.length===0||r(n?e.slice(0,-1):[])},[t,r,n,e]),w=i(o=>e.includes(o),[e]),{activeId:A,onListKeyDown:B,query:D,setActiveId:Q,setQuery:$}=ue({canEdit:t,canRemove:t&&(n||c),clearLast:re,close:d,commit:o=>r([o]),listbox:oe,multiple:n,open:h,openList:()=>P(!0),options:u,searchable:m,select:C,selected:e}),F=G(()=>e.flatMap(o=>u.find(a=>a.value===o)??[]),[u,e]),se=G(()=>({activeId:A,canClear:c&&t,clear:K,close:d,colorScheme:x,controlId:y,describedBy:s,disabled:g,flip:M,invalid:l===!0||l==="true",isSelected:w,isStyled:v!=="unstyled",labelling:N,listboxId:`${y}-listbox`,multiple:n,name:V,offset:O,onListKeyDown:B,open:h,options:u,placement:R,query:D,readOnly:b,register:q,remove:k,required:I,searchable:m,select:C,selected:e,selectedOptions:F,setActiveId:Q,setLabelling:le,setListbox:ne,setOpen:P,setQuery:$,setTrigger:te,shape:E,shift:T,size:H,trigger:f,variant:v}),[A,l,y,t,F,K,c,d,x,s,g,M,w,N,n,V,O,B,h,u,R,D,b,q,k,I,m,C,e,Q,P,$,E,T,H,f,v]);return Se(ce.Provider,{value:se,children:S})}export{Pe as Select};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{useCallback as x,useEffect as T,useRef as g,useState as k}from"react";import{isTypeaheadKey as p,matchTypeahead as E,useTypeahead as U}from"../../../overlay/use-typeahead.mjs";import{getEnabledOptions as b,scrollOptionIntoView as w,stepOption as H}from"./select-dom.mjs";var q=new Set(["ArrowDown","ArrowUp","Enter"," "]),C=new Set(["Backspace","Delete"]),D={ArrowDown:1,ArrowUp:-1,PageDown:10,PageUp:-10};function B(d){let{listbox:c,open:u}=d,[i,l]=k(void 0),[m,y]=k(""),v=U(),r=g(d);r.current=d,T(()=>{if(!u){l(void 0),y("");return}let e=b(c),n=e.find(o=>r.current.selected.includes(o.dataset.value??""))??e[0];l(n?.id),w(n)},[u,c,m]);let f=e=>{e&&(l(e.id),w(e))},O=e=>{let t=b(c),n=t.map(s=>s.dataset.label??""),o=t.findIndex(s=>s.id===i);f(t[E(n,v(e),o)])},S=e=>{let t=r.current.options,n=t.map(a=>a.label),o=t.findIndex(a=>r.current.selected.includes(a.value)),s=E(n,v(e),o,a=>t[a].disabled);s>=0&&r.current.commit(t[s].value)},L=(e,t)=>{let n=b(c);if(e.key in D)e.preventDefault(),f(H(n,i,D[e.key]));else if(!t&&(e.key==="Home"||e.key==="End"))e.preventDefault(),f(e.key==="Home"?n[0]:n[n.length-1]);else if(e.key==="Enter"||e.key===" "&&!t){e.preventDefault();let o=n.find(s=>s.id===i);o?.dataset.value!==void 0&&r.current.select(o.dataset.value)}else e.key==="Tab"?r.current.close(!1):!t&&p(e)&&O(e.key)},A=e=>{let{canEdit:t,canRemove:n,clearLast:o,multiple:s,openList:a,searchable:R}=r.current;q.has(e.key)?(e.preventDefault(),a()):C.has(e.key)&&n?(e.preventDefault(),o()):p(e)&&R?(e.preventDefault(),y(e.key),a()):p(e)&&!s&&t&&S(e.key)},K=(e,t)=>{u?L(e,t):A(e)},h=g(K);h.current=K;let I=x((e,t)=>h.current(e,t),[]);return{activeId:i,onListKeyDown:I,query:m,setActiveId:l,setQuery:y}}export{B as useSelectKeyboard};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{useCallback as u,useRef as i,useState as l}from"react";function d(){let t=i(new Map),[o,c]=l(0),s=u(e=>(t.current.set(e.value,e),c(n=>n+1),()=>{t.current.get(e.value)===e&&(t.current.delete(e.value),c(n=>n+1))}),[]),r=i(void 0);return r.current?.version!==o&&(r.current={list:Array.from(t.current.values()),version:o}),{options:r.current.list,register:s}}export{d as useSelectRegistry};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{useCallback as d,useState as g}from"react";var o=e=>Array.isArray(e)?e:e?[e]:[];function S({defaultValue:e,multiple:r,onValueChange:i,value:s}){let[a,l]=g(()=>o(e)),t=s!==void 0,c=t?o(s):a;return{commit:d(n=>{t||l(n);let u=r?n:n[0]??"";i?.(u)},[t,r,i]),selected:c}}export{S as useSelectValue};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{forwardRef as
|
|
1
|
+
"use client";import{forwardRef as x}from"react";import{useControlLabelledBy as I}from"../field/use-control-labelled-by.mjs";var o={root:"_root_1soij_1",sm:"_sm_1soij_11",md:"_md_1soij_16",lg:"_lg_1soij_21",toggle:"_toggle_1soij_26",solid:"_solid_1soij_62",outline:"_outline_1soij_70",raised:"_raised_1soij_90",invalid:"_invalid_1soij_125",label:"_label_1soij_130",disabled:"_disabled_1soij_134"};import{jsx as g,jsxs as M}from"react/jsx-runtime";var E=(e,i)=>({"--toggle-solid":`var(--plume-color-${e}-solid)`,"--toggle-contrast":`var(--plume-color-${e}-solid-contrast)`,"--toggle-text":`var(--plume-color-${e}-text)`,...i}),u=x(({children:e,className:i="",inputClassName:m="",labelClassName:_="",colorScheme:c="primary",disabled:r=!1,onChange:n,readOnly:a=!1,size:b="md",style:f,variant:d="solid",...t},y)=>{let l=d!=="unstyled",{labelledBy:C,textId:T}=I({hasText:!!e,id:t.id,labelledBy:t["aria-labelledby"]}),v=e?"label":"span",p=t["aria-invalid"]===!0||t["aria-invalid"]==="true",j=[l&&o.root,l&&o[b],r&&o.disabled,i].filter(Boolean).join(" "),S=[l&&o.toggle,l&&o[d],l&&p&&o.invalid,m].filter(Boolean).join(" ")||void 0,P=s=>{a&&s.preventDefault()},h=s=>{a||n?.(s)};return M(v,{className:j,style:E(p?"error":c,f),children:[g("input",{"aria-readonly":a||void 0,className:S,disabled:r,onChange:n?h:void 0,onClick:P,ref:y,role:"switch",type:"checkbox",...t,"aria-labelledby":C}),e?g("span",{className:[l&&o.label,_].filter(Boolean).join(" ")||void 0,id:T,children:e}):null]})});u.displayName="Toggle";var w=Object.assign(u,{labelsItself:!0});export{w as Toggle};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{createContext as o,useContext as n}from"react";var r=o(void 0);function l(t){let e=n(r);if(!e)throw new Error(`${t} must be used within a <Dropdown>`);return e}export{r as DropdownContext,l as useDropdownContext};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as o}from"../../../chunk-MREJ5C76.mjs";import{forwardRef as P}from"react";import{useDropdownContext as T}from"./dropdown-context.mjs";import{Fragment as I,jsx as r,jsxs as R}from"react/jsx-runtime";var h=P(({children:y,className:E="",closeOnSelect:M,disabled:n=!1,href:l,icon:d,onSelect:D,rel:b,shortcut:i,style:s,target:v,...m},c)=>{let t=T("DropdownItem"),p=[t.isStyled&&o.item,E].filter(Boolean).join(" "),u=e=>{if(n){e.preventDefault();return}D?.(e),!e.defaultPrevented&&(M??t.closeOnSelect)&&t.setOpen(!1)},f=e=>{!n&&document.activeElement!==e.currentTarget&&e.currentTarget.focus({preventScroll:!0})},w=R(I,{children:[d?r("span",{"aria-hidden":"true",className:t.isStyled?o.icon:void 0,children:d}):null,r("span",{className:t.isStyled?o.label:void 0,"data-plume-menu-item-label":"",children:y}),i?r("span",{className:t.isStyled?o.shortcut:void 0,children:i}):null]});return l!==void 0?r("a",{...m,"aria-disabled":n||void 0,className:p,"data-plume-menu-item":"",href:n?void 0:l,onClick:u,onKeyDown:a=>{a.key===" "&&(a.preventDefault(),a.currentTarget.click())},onPointerMove:f,ref:c,rel:b,role:"menuitem",style:s,tabIndex:-1,target:v,children:w}):r("button",{...m,className:p,"data-plume-menu-item":"",disabled:n,onClick:u,onPointerMove:f,ref:c,role:"menuitem",style:s,tabIndex:-1,type:"button",children:w})});h.displayName="DropdownItem";export{h as DropdownItem};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as o}from"../../../chunk-MREJ5C76.mjs";import{forwardRef as i}from"react";import{useDropdownContext as s}from"./dropdown-context.mjs";import{jsx as a}from"react/jsx-runtime";var l=i(({children:e,className:t="",style:r},p)=>{let{isStyled:n}=s("DropdownLabel"),d=[n&&o.groupLabel,t].filter(Boolean).join(" ");return a("div",{className:d||void 0,ref:p,style:r,children:e})});l.displayName="DropdownLabel";export{l as DropdownLabel};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as s}from"../../../chunk-MREJ5C76.mjs";import{forwardRef as K,useEffect as C}from"react";import{Portal as N,useFocusTrap as O}from"../../../overlay/index.mjs";import{useFloatingPanel as S}from"../../../overlay/use-floating-panel.mjs";import{mergeRefs as B}from"../../../overlay/trigger.mjs";import{isTypeaheadKey as q,matchTypeahead as z,useTypeahead as U}from"../../../overlay/use-typeahead.mjs";import{useDropdownContext as j}from"./dropdown-context.mjs";import{jsx as T}from"react/jsx-runtime";var D=n=>Array.from(n.querySelectorAll('[role="menuitem"]')).filter(i=>i.getAttribute("aria-disabled")!=="true"&&!i.disabled),d=n=>n?.focus({preventScroll:!0}),G=K(({children:n,className:i="",style:w,...m},E)=>{let p=j("DropdownMenu"),{flip:h,initialItem:u,isStyled:f,menuId:H,offset:L,open:r,placement:g,setOpen:b,shift:P,trigger:c}=p,A=U(),{isTopmost:v,panel:l,position:y,setPanel:x}=S({anchor:c,enabled:r,flip:h,offset:L,onDismiss:()=>b(!1),placement:g,shift:P});if(O(l,{active:r,isTopmost:v,returnFocus:c}),C(()=>{if(!r||!l)return;let e=D(l);u.current==="first"?d(e[0]):u.current==="last"&&d(e[e.length-1])},[u,r,l]),!r)return null;let R=e=>{let t=D(e.currentTarget),a=t.indexOf(document.activeElement),o;if(e.key==="ArrowDown")o=(a+1)%t.length;else if(e.key==="ArrowUp")o=a<=0?t.length-1:a-1;else if(e.key==="Home")o=0;else if(e.key==="End")o=t.length-1;else if(e.key==="Tab"){e.preventDefault(),b(!1);return}else if(q(e)){let F=t.map(I=>I.textContent??""),M=z(F,A(e.key),a);M>=0&&d(t[M]);return}o!==void 0&&(e.preventDefault(),d(t[o]))},k=[f&&s.menu,f&&s[p.size],f&&s[p.variant],i].filter(Boolean).join(" ");return T(N,{children:T("div",{"aria-labelledby":m["aria-label"]?void 0:m["aria-labelledby"]??c?.id,...m,className:k,"data-placement":y.placement,id:H,onKeyDown:R,ref:B(x,E),role:"menu",style:{...y.style,opacity:y.isPositioned?void 0:0,...w},tabIndex:-1,children:n})})});G.displayName="DropdownMenu";export{G as DropdownMenu};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as o}from"../../../chunk-MREJ5C76.mjs";import{forwardRef as n}from"react";import{useDropdownContext as s}from"./dropdown-context.mjs";import{jsx as m}from"react/jsx-runtime";var d=n(({className:r="",style:e},t)=>{let{isStyled:p}=s("DropdownSeparator"),a=[p&&o.separator,r].filter(Boolean).join(" ");return m("hr",{className:a||void 0,ref:t,style:e})});d.displayName="DropdownSeparator";export{d as DropdownSeparator};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{forwardRef as m,isValidElement as a}from"react";import{cloneWithProps as l,mergeRefs as u}from"../../../overlay/trigger.mjs";import{useDropdownContext as w}from"./dropdown-context.mjs";import{jsx as D}from"react/jsx-runtime";var c=m(({children:o,className:p},t)=>{let{open:n,openMenu:r,setOpen:d,setTrigger:s,triggerId:f}=w("DropdownTrigger"),g=a(o)?o.props.id:void 0,i={"aria-expanded":n,"aria-haspopup":"menu",id:g??f,onClick:e=>{n?d(!1):r(e.detail===0?"first":"none")},onKeyDown:e=>{e.key==="ArrowDown"?(e.preventDefault(),r("first")):e.key==="ArrowUp"&&(e.preventDefault(),r("last"))}};return a(o)?l(o,i,s,t):D("button",{...i,className:p,ref:u(s,t),type:"button",children:o})});c.displayName="DropdownTrigger";export{c as DropdownTrigger};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{useCallback as y,useId as v,useMemo as P,useRef as R,useState as S}from"react";import{useOpenState as x}from"../../../overlay/use-open-state.mjs";import{DropdownContext as C}from"./dropdown-context.mjs";import{jsx as O}from"react/jsx-runtime";function z({children:c,closeOnSelect:n=!0,defaultOpen:f=!1,flip:r=!0,offset:p=4,onOpenChange:I,open:b,placement:a="bottom-start",shift:i=!0,size:l="md",variant:o="elevated"}){let t=v(),[d,w]=S(null),[m,e]=x({defaultOpen:f,onOpenChange:I,open:b}),u=R("none"),s=y(g=>{u.current=g,e(!0)},[e]),D=P(()=>({closeOnSelect:n,flip:r,initialItem:u,isStyled:o!=="unstyled",menuId:`${t}-menu`,offset:p,open:m,openMenu:s,placement:a,setOpen:e,setTrigger:w,shift:i,size:l,trigger:d,triggerId:`${t}-trigger`,variant:o}),[t,n,r,p,m,s,a,e,i,l,d,o]);return O(C.Provider,{value:D,children:c})}export{z as Dropdown};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Dropdown as p}from"./dropdown.mjs";import{DropdownItem as t}from"./dropdown-item.mjs";import{DropdownLabel as d}from"./dropdown-label.mjs";import{DropdownMenu as D}from"./dropdown-menu.mjs";import{DropdownSeparator as a}from"./dropdown-separator.mjs";import{DropdownTrigger as s}from"./dropdown-trigger.mjs";export{p as Dropdown,t as DropdownItem,d as DropdownLabel,D as DropdownMenu,a as DropdownSeparator,s as DropdownTrigger};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as s}from"../../../chunk-
|
|
1
|
+
"use client";import{a as s}from"../../../chunk-MAOSYNN2.mjs";import{forwardRef as u,useEffect as M,useRef as b,useState as B}from"react";import{mergeRefs as H}from"../../../overlay/trigger.mjs";import{useModalContext as R}from"./modal-context.mjs";import{jsx as L}from"react/jsx-runtime";var P=u(({children:l,className:n="",style:d},i)=>{let{bodyId:a,isStyled:c,titleId:m}=R("ModalBody"),o=b(null),[f,p]=B(!1),y=[c&&s.body,n].filter(Boolean).join(" ");return M(()=>{let e=o.current;if(!e)return;let t=()=>p(e.scrollHeight>e.clientHeight);t();let r=typeof ResizeObserver>"u"?void 0:new ResizeObserver(t);return r?.observe(e),()=>r?.disconnect()},[]),L("section",{...f?{"aria-labelledby":m,tabIndex:0}:void 0,className:y,id:a,ref:H(o,i),style:d,children:l})});P.displayName="ModalBody";export{P as ModalBody};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as e}from"../../../chunk-
|
|
1
|
+
"use client";import{a as e}from"../../../chunk-MAOSYNN2.mjs";import{forwardRef as t}from"react";import{OverlayClose as a}from"../../../overlay/overlay-close.mjs";import{useModalContext as p}from"./modal-context.mjs";import{jsx as m}from"react/jsx-runtime";var d=t((o,l)=>{let{isStyled:r,setOpen:s}=p("ModalClose");return m(a,{...o,closeClassName:r?e.close:void 0,onClose:()=>s(!1),ref:l})});d.displayName="ModalClose";export{d as ModalClose};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as
|
|
1
|
+
"use client";import{a as t}from"../../../chunk-MAOSYNN2.mjs";import{forwardRef as L,useState as T}from"react";import{Portal as R,useDismiss as D,useFocusTrap as H,useLayer as O,useScrollLock as E}from"../../../overlay/index.mjs";import{joinClasses as F}from"../../../overlay/class-names.mjs";import{mergeRefs as N}from"../../../overlay/trigger.mjs";import{useModalContext as k}from"./modal-context.mjs";import{jsx as n}from"react/jsx-runtime";var w=L(({backdropClassName:i="",children:d,className:p="",style:m,...a},c)=>{let o=k("ModalContent"),{closeOnEscape:u,closeOnOutside:b,contentId:f,initialFocus:M,isStyled:l,open:e,setOpen:y}=o,[r,C]=T(null),s=O(e);if(E(e),D({enabled:e,onDismiss:()=>y(!1),elements:[r],isTopmost:s,escapeKey:u,outsidePress:b}),H(r,{active:e,initialFocus:M?.current??null,isTopmost:s,returnFocus:o.trigger}),!e)return null;let g=[l&&t.content,l&&t[o.size],p].filter(Boolean).join(" "),P=a["aria-labelledby"]??(a["aria-label"]?void 0:o.titleId);return n(R,{children:n("div",{className:F(l&&t.backdrop,i),"data-plume-modal-backdrop":"",children:n("dialog",{...a,"aria-labelledby":P,"aria-modal":"true",className:g,"data-plume-dialog":"",id:f,open:!0,ref:N(C,c),style:m,children:d})})})});w.displayName="ModalContent";export{w as ModalContent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as o}from"../../../chunk-
|
|
1
|
+
"use client";import{a as o}from"../../../chunk-MAOSYNN2.mjs";import{forwardRef as d}from"react";import{useModalContext as p}from"./modal-context.mjs";import{jsx as m}from"react/jsx-runtime";var a=d(({children:t,className:e="",style:r},s)=>{let{isStyled:i}=p("ModalFooter"),l=[i&&o.footer,e].filter(Boolean).join(" ");return m("div",{className:l,ref:s,style:r,children:t})});a.displayName="ModalFooter";export{a as ModalFooter};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as e}from"../../../chunk-
|
|
1
|
+
"use client";import{a as e}from"../../../chunk-MAOSYNN2.mjs";import{createElement as n,forwardRef as p}from"react";import{useModalContext as m}from"./modal-context.mjs";var H=p(({as:o="h2",children:t,className:r="",style:a},d)=>{let{isStyled:s,titleId:l}=m("ModalHeader"),i=[s&&e.header,r].filter(Boolean).join(" ");return n(o,{className:i,id:l,ref:d,style:a},t)});H.displayName="ModalHeader";export{H as ModalHeader};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as
|
|
1
|
+
"use client";import{a as e}from"../../../chunk-LFT6MZ6P.mjs";import{forwardRef as T}from"react";import{Portal as H,useFocusTrap as L}from"../../../overlay/index.mjs";import{useFloatingPanel as M}from"../../../overlay/use-floating-panel.mjs";import{mergeRefs as D}from"../../../overlay/trigger.mjs";import{usePopoverContext as F}from"./popover-context.mjs";import{jsx as a}from"react/jsx-runtime";var h=T(({children:s,className:p="",style:l,...m},d)=>{let o=F("PopoverContent"),{contentId:c,flip:f,isStyled:t,offset:P,open:r,placement:u,setOpen:y,shift:g,trigger:i}=o,{isTopmost:v,panel:C,position:n,setPanel:b}=M({anchor:i,enabled:r,flip:f,offset:P,onDismiss:()=>y(!1),placement:u,shift:g});if(L(C,{active:r,isTopmost:v,returnFocus:i}),!r)return null;let R=[t&&e.content,t&&e[o.size],t&&e[o.variant],p].filter(Boolean).join(" ");return a(H,{children:a("dialog",{...m,className:R,"data-placement":n.placement,"data-plume-dialog":"",id:c,open:!0,ref:D(b,d),style:{...n.style,opacity:n.isPositioned?void 0:0,...l},children:s})})});h.displayName="PopoverContent";export{h as PopoverContent};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ToastProvider as s}from"./toast-provider.mjs";import{useToast as
|
|
1
|
+
import{ToastProvider as s}from"./toast-provider.mjs";import{useToast as e}from"./toast-context.mjs";export{s as ToastProvider,e as useToast};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as
|
|
1
|
+
"use client";import{a as c}from"../../../chunk-EAIGXNMG.mjs";import{useCallback as y}from"react";import{CloseIcon as R}from"../../../overlay/icons.mjs";import{joinClasses as S}from"../../../overlay/class-names.mjs";import{useToastTimer as C}from"./use-toast-timer.mjs";import{jsx as e,jsxs as p}from"react/jsx-runtime";var M={error:"M15 9l-6 6M9 9l6 6M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z",info:"M12 16v-4m0-4h.01M12 22a10 10 0 1 0 0-20 10 10 0 0 0 0 20z",success:"M22 11.1V12a10 10 0 1 1-5.9-9.1M22 4 12 14l-3-3",warning:"M12 9v4m0 4h.01M10.3 3.9 1.8 18a2 2 0 0 0 1.7 3h17a2 2 0 0 0 1.7-3L13.7 3.9a2 2 0 0 0-3.4 0z"};function P({status:s}){return e("svg",{"aria-hidden":"true",fill:"none",focusable:"false",height:"1.25em",stroke:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:"2",viewBox:"0 0 24 24",width:"1.25em",children:e("path",{d:M[s]})})}function k(s,o){if(s.icon!==void 0)return s.icon;if(o===!1)return null;let a=o?.[s.status];return a!==void 0?a:s.status==="neutral"?null:e(P,{status:s.status})}var I={error:"error",info:"info",neutral:"secondary",success:"success",warning:"warning"};function x(s){let o=I[s];return{"--toast-contrast":`var(--plume-color-${o}-solid-contrast)`,"--toast-solid":`var(--plume-color-${o}-solid)`,"--toast-tint":`var(--plume-color-${o}-tint)`,"--toast-tint-text":`var(--plume-color-${o}-tint-text)`}}function $({className:s,classNames:o,dismissLabel:a,icons:f,isStyled:l,onDismiss:u,toast:t}){let{duration:T,id:d}=t,i=y(()=>u(d),[d,u]),v=C(T,i),b=r=>{r.key==="Escape"&&t.dismissible&&i()},N=()=>{t.action?.onClick?.(),i()},n=r=>S(l&&c[r],o?.[r]),m=k(t,f),g=t.status==="error",h=[l&&c.toast,l&&c[t.status],s].filter(Boolean).join(" ")||void 0;return p("div",{className:h,...v,onKeyDown:b,role:g?"alert":"status",style:x(t.status),children:[m?e("span",{"aria-hidden":"true",className:n("icon"),children:m}):null,p("div",{className:n("content"),children:[t.title?e("span",{className:n("title"),children:t.title}):null,t.description?e("span",{className:n("description"),children:t.description}):null,t.action?e("button",{className:n("action"),onClick:N,type:"button",children:t.action.label}):null]}),t.dismissible?e("button",{"aria-label":a,className:n("dismiss"),onClick:i,type:"button",children:e(R,{})}):null]})}export{$ as ToastItem,x as toastColorVars};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use client";import{a as
|
|
1
|
+
"use client";import{a as l}from"../../../chunk-EAIGXNMG.mjs";import{isValidElement as h,useCallback as x,useId as k,useMemo as j,useRef as C,useState as B}from"react";import{Portal as E}from"../../../overlay/index.mjs";import{ToastContext as M}from"./toast-context.mjs";import{ToastItem as q}from"./toast-item.mjs";import{jsx as T,jsxs as F}from"react/jsx-runtime";var z=i=>typeof i=="object"&&i!==null&&!h(i)&&!Array.isArray(i);function U({children:i,className:D="",classNames:O,dismissLabel:R="Dismiss notification",duration:f=5e3,icons:A,max:y=5,position:I="bottom-end",regionLabel:S="Notifications",toastClassName:$="",variant:b="subtle"}){let v=k(),g=C(0),[w,d]=B([]),n=b!=="unstyled",m=C({duration:f,max:y});m.current={duration:f,max:y};let p=x(t=>{d(s=>{let a=s.find(o=>o.id===t);return a?(a.onDismiss?.(),s.filter(o=>o.id!==t)):s})},[]),e=x((t,s={},a)=>{let o=z(t)?{...t,...s}:{title:t,...s};g.current+=1;let r=o.id??`${v}-${g.current}`,P={action:o.action,description:o.description,dismissible:o.dismissible??!0,duration:o.duration??m.current.duration,icon:o.icon,id:r,onDismiss:o.onDismiss,status:o.status??a??"neutral",title:o.title};return d(u=>{let N=u.find(c=>c.id===r);return N?u.map(c=>c.id===r?{...P,revision:N.revision+1}:c):[...u,{...P,revision:0}].slice(-m.current.max)}),r},[v]),L=j(()=>({dismiss:p,dismissAll:()=>d([]),error:(t,s)=>e(t,s,"error"),info:(t,s)=>e(t,s,"info"),success:(t,s)=>e(t,s,"success"),toast:(t,s)=>e(t,s),warning:(t,s)=>e(t,s,"warning")}),[p,e]),V=[n&&l.region,n&&l[I],n&&l[b],D].filter(Boolean).join(" ");return F(M.Provider,{value:L,children:[i,T(E,{children:T("section",{"aria-label":S,"aria-live":"polite",className:V||void 0,children:w.map(t=>T(q,{dismissLabel:R,className:$,classNames:O,icons:A,isStyled:n,onDismiss:p,toast:t},`${t.id}-${t.revision}`))})})]})}export{U as ToastProvider};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{forwardRef as
|
|
1
|
+
import{a as o}from"../../../chunk-LWLHCHAV.mjs";import{forwardRef as B}from"react";import{tagColorVars as S}from"../shared/tag-vars.mjs";var t={badge:"_badge_se0rb_1",dotOnly:"_dotOnly_se0rb_12",dot:"_dot_se0rb_12"};import{jsx as _,jsxs as P}from"react/jsx-runtime";var h=B(({children:r,className:s="",colorScheme:n="primary",dot:d=!1,role:i,shape:p="rounded",size:m="md",style:b,variant:l="solid",...a},g)=>{let e=l!=="unstyled",y=d&&!r,f=!!(a["aria-label"]??a["aria-labelledby"]),c=i??(f?"img":void 0),u=[e&&t.badge,e&&o[m],e&&o[p],e&&o[l],e&&y&&t.dotOnly,s].filter(Boolean).join(" ");return P("span",{className:u,ref:g,role:c,style:S("badge",n,b),...a,children:[d&&e?_("span",{"aria-hidden":"true",className:t.dot}):null,r]})});h.displayName="Badge";export{h as Badge};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use client";import{a as o}from"../../../chunk-LWLHCHAV.mjs";import{forwardRef as R,useId as h}from"react";import{joinClasses as i}from"../../../overlay/class-names.mjs";import{CloseIcon as M}from"../../../overlay/icons.mjs";import{tagColorVars as x}from"../shared/tag-vars.mjs";var t={chip:"_chip_plt30_19",disabled:"_disabled_plt30_27",icon:"_icon_plt30_32",label:"_label_plt30_46",remove:"_remove_plt30_53"};import{jsx as a,jsxs as H}from"react/jsx-runtime";var E=R(({children:b,className:u="",classNames:l,colorScheme:C="secondary",disabled:p=!1,icon:r,onRemove:n,removeLabel:s,shape:f="pill",size:y="md",style:_,variant:d="subtle",...v},P)=>{let e=d!=="unstyled",m=h(),c=h(),S=i(e&&t.chip,e&&o[y],e&&o[f],e&&o[d],e&&p&&t.disabled,u);return H("span",{className:S,"data-plume-chip":"",ref:P,style:x("chip",C,_),...v,children:[r?a("span",{"aria-hidden":"true",className:i(e&&t.icon,l?.icon),children:r}):null,a("span",{className:i(e&&t.label,l?.label),id:m,children:b}),n?a("button",{"aria-label":s??"Remove","aria-labelledby":s?void 0:`${c} ${m}`,className:i(e&&t.remove,l?.remove),"data-plume-chip-remove":"",disabled:p,id:c,onClick:n,type:"button",children:a(M,{})}):null]})});E.displayName="Chip";export{E as Chip};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Chip as i}from"./chip.mjs";export{i as Chip};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var i=(t,r,o)=>({[`--${t}-solid`]:`var(--plume-color-${r}-solid)`,[`--${t}-contrast`]:`var(--plume-color-${r}-solid-contrast)`,[`--${t}-text`]:`var(--plume-color-${r}-text)`,[`--${t}-tint`]:`var(--plume-color-${r}-tint)`,[`--${t}-tint-text`]:`var(--plume-color-${r}-tint-text)`,"--tag-solid":`var(--${t}-solid)`,"--tag-contrast":`var(--${t}-contrast)`,"--tag-text":`var(--${t}-text)`,"--tag-tint":`var(--${t}-tint)`,"--tag-tint-text":`var(--${t}-tint-text)`,...o});export{i as tagColorVars};
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as react from 'react';
|
|
2
|
-
import { CSSProperties, ReactNode, RefObject, ChangeEvent, LazyExoticComponent, HTMLAttributes, ButtonHTMLAttributes, InputHTMLAttributes, Ref, ReactElement, LiHTMLAttributes, HtmlHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
2
|
+
import { CSSProperties, ReactNode, RefObject, ChangeEvent, LazyExoticComponent, HTMLAttributes, ButtonHTMLAttributes, InputHTMLAttributes, MouseEvent, Ref, AnchorHTMLAttributes, ReactElement, LiHTMLAttributes, HtmlHTMLAttributes, TextareaHTMLAttributes } from 'react';
|
|
3
3
|
|
|
4
4
|
type RadiusValue = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 'full';
|
|
5
5
|
type SizeValue = 'max' | 'min' | 'full';
|
|
@@ -282,6 +282,8 @@ type CardHeaderProps = Omit<ComponentProps, 'index'> & CardHeaderRootAttributes;
|
|
|
282
282
|
declare const CardHeader: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & CardHeaderRootAttributes & react.RefAttributes<HTMLDivElement>>;
|
|
283
283
|
|
|
284
284
|
interface CheckboxOwnProps {
|
|
285
|
+
inputClassName?: string;
|
|
286
|
+
labelClassName?: string;
|
|
285
287
|
colorScheme?: ColorScheme;
|
|
286
288
|
indeterminate?: boolean;
|
|
287
289
|
readOnly?: boolean;
|
|
@@ -295,6 +297,23 @@ declare const Checkbox: react.ForwardRefExoticComponent<Omit<ComponentProps, "in
|
|
|
295
297
|
labelsItself: boolean;
|
|
296
298
|
};
|
|
297
299
|
|
|
300
|
+
type ChipPart = 'icon' | 'label' | 'remove';
|
|
301
|
+
type ChipVariant = 'solid' | 'outline' | 'subtle' | 'unstyled';
|
|
302
|
+
interface ChipOwnProps {
|
|
303
|
+
classNames?: Partial<Record<ChipPart, string>>;
|
|
304
|
+
colorScheme?: ColorScheme;
|
|
305
|
+
disabled?: boolean;
|
|
306
|
+
icon?: ReactNode;
|
|
307
|
+
onRemove?: (event: MouseEvent<HTMLButtonElement>) => void;
|
|
308
|
+
removeLabel?: string;
|
|
309
|
+
shape?: Shape;
|
|
310
|
+
size?: Size;
|
|
311
|
+
variant?: ChipVariant;
|
|
312
|
+
}
|
|
313
|
+
type ChipRootAttributes = Pick<HTMLAttributes<HTMLSpanElement>, 'aria-label' | 'aria-labelledby' | 'children' | 'hidden' | 'id' | 'title'>;
|
|
314
|
+
type ChipProps = Omit<ComponentProps, 'index'> & ChipRootAttributes & ChipOwnProps;
|
|
315
|
+
declare const Chip: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & ChipRootAttributes & ChipOwnProps & react.RefAttributes<HTMLSpanElement>>;
|
|
316
|
+
|
|
298
317
|
interface DatePickerOwnProps {
|
|
299
318
|
colorScheme?: ColorScheme;
|
|
300
319
|
config?: DatePickerConfig;
|
|
@@ -329,6 +348,59 @@ type DatePickerRootAttributes = Pick<InputHTMLAttributes<HTMLInputElement>, 'ari
|
|
|
329
348
|
type DatePickerProps = ComponentProps & DatePickerRootAttributes & DatePickerOwnProps;
|
|
330
349
|
declare const DatePicker: react.ForwardRefExoticComponent<ComponentProps & DatePickerRootAttributes & DatePickerOwnProps & react.RefAttributes<HTMLDivElement>>;
|
|
331
350
|
|
|
351
|
+
type Side = 'top' | 'bottom' | 'left' | 'right';
|
|
352
|
+
type Align = 'start' | 'center' | 'end';
|
|
353
|
+
type Placement = Side | `${Side}-${Align}`;
|
|
354
|
+
|
|
355
|
+
type DropdownVariant = 'elevated' | 'outline' | 'unstyled';
|
|
356
|
+
|
|
357
|
+
interface DropdownProps {
|
|
358
|
+
children: ReactNode;
|
|
359
|
+
closeOnSelect?: boolean;
|
|
360
|
+
defaultOpen?: boolean;
|
|
361
|
+
flip?: boolean;
|
|
362
|
+
offset?: number;
|
|
363
|
+
onOpenChange?: (open: boolean) => void;
|
|
364
|
+
open?: boolean;
|
|
365
|
+
placement?: Placement;
|
|
366
|
+
shift?: boolean;
|
|
367
|
+
size?: Size;
|
|
368
|
+
variant?: DropdownVariant;
|
|
369
|
+
}
|
|
370
|
+
declare function Dropdown({ children, closeOnSelect, defaultOpen, flip, offset, onOpenChange, open: openProp, placement, shift, size, variant, }: Readonly<DropdownProps>): ReactNode;
|
|
371
|
+
|
|
372
|
+
interface DropdownItemOwnProps {
|
|
373
|
+
children?: ReactNode;
|
|
374
|
+
closeOnSelect?: boolean;
|
|
375
|
+
disabled?: boolean;
|
|
376
|
+
href?: string;
|
|
377
|
+
icon?: ReactNode;
|
|
378
|
+
onSelect?: (event: MouseEvent<HTMLElement>) => void;
|
|
379
|
+
rel?: string;
|
|
380
|
+
shortcut?: ReactNode;
|
|
381
|
+
target?: string;
|
|
382
|
+
}
|
|
383
|
+
type DropdownItemRootAttributes = Pick<AnchorHTMLAttributes<HTMLElement>, 'aria-label'>;
|
|
384
|
+
type DropdownItemProps = Omit<ComponentProps, 'index'> & DropdownItemRootAttributes & DropdownItemOwnProps;
|
|
385
|
+
declare const DropdownItem: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & DropdownItemRootAttributes & DropdownItemOwnProps & react.RefAttributes<HTMLElement>>;
|
|
386
|
+
|
|
387
|
+
type DropdownLabelRootAttributes = Pick<HTMLAttributes<HTMLDivElement>, 'children'>;
|
|
388
|
+
type DropdownLabelProps = Omit<ComponentProps, 'index'> & DropdownLabelRootAttributes;
|
|
389
|
+
declare const DropdownLabel: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & DropdownLabelRootAttributes & react.RefAttributes<HTMLDivElement>>;
|
|
390
|
+
|
|
391
|
+
type DropdownMenuRootAttributes = Pick<HTMLAttributes<HTMLDivElement>, 'aria-label' | 'aria-labelledby' | 'children'>;
|
|
392
|
+
type DropdownMenuProps = Omit<ComponentProps, 'index'> & DropdownMenuRootAttributes;
|
|
393
|
+
declare const DropdownMenu: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & DropdownMenuRootAttributes & react.RefAttributes<HTMLDivElement>>;
|
|
394
|
+
|
|
395
|
+
type DropdownSeparatorProps = Omit<ComponentProps, 'index'>;
|
|
396
|
+
declare const DropdownSeparator: react.ForwardRefExoticComponent<DropdownSeparatorProps & react.RefAttributes<HTMLHRElement>>;
|
|
397
|
+
|
|
398
|
+
interface DropdownTriggerProps {
|
|
399
|
+
children: ReactNode;
|
|
400
|
+
className?: string;
|
|
401
|
+
}
|
|
402
|
+
declare const DropdownTrigger: react.ForwardRefExoticComponent<DropdownTriggerProps & react.RefAttributes<HTMLElement>>;
|
|
403
|
+
|
|
332
404
|
interface FieldOwnProps {
|
|
333
405
|
disabled?: boolean;
|
|
334
406
|
errorText?: ReactNode;
|
|
@@ -458,8 +530,11 @@ type ModalCloseProps = OverlayCloseProps;
|
|
|
458
530
|
declare const ModalClose: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & OverlayCloseOwnProps & react.RefAttributes<HTMLElement>>;
|
|
459
531
|
|
|
460
532
|
type ModalContentRootAttributes = Pick<HTMLAttributes<HTMLDialogElement>, 'aria-describedby' | 'aria-label' | 'aria-labelledby' | 'children'>;
|
|
461
|
-
|
|
462
|
-
|
|
533
|
+
interface ModalContentOwnProps {
|
|
534
|
+
backdropClassName?: string;
|
|
535
|
+
}
|
|
536
|
+
type ModalContentProps = Omit<ComponentProps, 'index'> & ModalContentRootAttributes & ModalContentOwnProps;
|
|
537
|
+
declare const ModalContent: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & ModalContentRootAttributes & ModalContentOwnProps & react.RefAttributes<HTMLDialogElement>>;
|
|
463
538
|
|
|
464
539
|
type ModalFooterRootAttributes = Pick<HTMLAttributes<HTMLDivElement>, 'children'>;
|
|
465
540
|
type ModalFooterProps = Omit<ComponentProps, 'index'> & ModalFooterRootAttributes;
|
|
@@ -478,10 +553,6 @@ interface ModalTriggerProps {
|
|
|
478
553
|
}
|
|
479
554
|
declare const ModalTrigger: react.ForwardRefExoticComponent<ModalTriggerProps & react.RefAttributes<HTMLElement>>;
|
|
480
555
|
|
|
481
|
-
type Side = 'top' | 'bottom' | 'left' | 'right';
|
|
482
|
-
type Align = 'start' | 'center' | 'end';
|
|
483
|
-
type Placement = Side | `${Side}-${Align}`;
|
|
484
|
-
|
|
485
556
|
type PopoverVariant = 'elevated' | 'outline' | 'unstyled';
|
|
486
557
|
|
|
487
558
|
interface PopoverProps {
|
|
@@ -512,6 +583,8 @@ interface PopoverTriggerProps {
|
|
|
512
583
|
declare const PopoverTrigger: react.ForwardRefExoticComponent<PopoverTriggerProps & react.RefAttributes<HTMLElement>>;
|
|
513
584
|
|
|
514
585
|
interface RadioOwnProps {
|
|
586
|
+
inputClassName?: string;
|
|
587
|
+
labelClassName?: string;
|
|
515
588
|
colorScheme?: ColorScheme;
|
|
516
589
|
readOnly?: boolean;
|
|
517
590
|
size?: Size;
|
|
@@ -542,6 +615,105 @@ type RadioGroupRootAttributes = Pick<HTMLAttributes<HTMLDivElement>, 'aria-descr
|
|
|
542
615
|
type RadioGroupProps = Omit<ComponentProps, 'index'> & RadioGroupRootAttributes & RadioGroupOwnProps;
|
|
543
616
|
declare const RadioGroup: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & RadioGroupRootAttributes & RadioGroupOwnProps & react.RefAttributes<HTMLDivElement>>;
|
|
544
617
|
|
|
618
|
+
type SelectVariant = 'outline' | 'filled' | 'underline' | 'unstyled';
|
|
619
|
+
interface SelectedOption {
|
|
620
|
+
icon?: ReactNode;
|
|
621
|
+
label: string;
|
|
622
|
+
value: string;
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
interface SelectBaseProps {
|
|
626
|
+
'aria-describedby'?: string;
|
|
627
|
+
'aria-invalid'?: boolean | 'true' | 'false';
|
|
628
|
+
children: ReactNode;
|
|
629
|
+
clearable?: boolean;
|
|
630
|
+
closeOnSelect?: boolean;
|
|
631
|
+
colorScheme?: ColorScheme;
|
|
632
|
+
defaultOpen?: boolean;
|
|
633
|
+
disabled?: boolean;
|
|
634
|
+
flip?: boolean;
|
|
635
|
+
id?: string;
|
|
636
|
+
name?: string;
|
|
637
|
+
offset?: number;
|
|
638
|
+
onOpenChange?: (open: boolean) => void;
|
|
639
|
+
open?: boolean;
|
|
640
|
+
placement?: Placement;
|
|
641
|
+
readOnly?: boolean;
|
|
642
|
+
required?: boolean;
|
|
643
|
+
searchable?: boolean;
|
|
644
|
+
shape?: Shape;
|
|
645
|
+
shift?: boolean;
|
|
646
|
+
size?: Size;
|
|
647
|
+
variant?: SelectVariant;
|
|
648
|
+
}
|
|
649
|
+
interface SelectSingleProps {
|
|
650
|
+
defaultValue?: string;
|
|
651
|
+
multiple?: false;
|
|
652
|
+
onValueChange?: (value: string) => void;
|
|
653
|
+
value?: string;
|
|
654
|
+
}
|
|
655
|
+
interface SelectMultipleProps {
|
|
656
|
+
defaultValue?: string[];
|
|
657
|
+
multiple: true;
|
|
658
|
+
onValueChange?: (value: string[]) => void;
|
|
659
|
+
value?: string[];
|
|
660
|
+
}
|
|
661
|
+
type SelectProps = SelectBaseProps & (SelectMultipleProps | SelectSingleProps);
|
|
662
|
+
declare function Select({ 'aria-describedby': describedBy, 'aria-invalid': ariaInvalid, children, clearable, closeOnSelect, colorScheme, defaultOpen, defaultValue, disabled, flip, id, multiple, name, offset, onOpenChange, onValueChange, open: openProp, placement, readOnly, required, searchable, shape, shift, size, value, variant, }: Readonly<SelectProps>): ReactNode;
|
|
663
|
+
|
|
664
|
+
type SelectContentRootAttributes = Pick<HTMLAttributes<HTMLDivElement>, 'aria-label' | 'children'>;
|
|
665
|
+
type SelectContentPart = 'empty' | 'list' | 'search' | 'searchInput';
|
|
666
|
+
interface SelectContentOwnProps {
|
|
667
|
+
classNames?: Partial<Record<SelectContentPart, string>>;
|
|
668
|
+
emptyText?: ReactNode;
|
|
669
|
+
searchLabel?: string;
|
|
670
|
+
searchPlaceholder?: string;
|
|
671
|
+
}
|
|
672
|
+
type SelectContentProps = Omit<ComponentProps, 'index'> & SelectContentRootAttributes & SelectContentOwnProps;
|
|
673
|
+
declare const SelectContent: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & SelectContentRootAttributes & SelectContentOwnProps & react.RefAttributes<HTMLDivElement>>;
|
|
674
|
+
|
|
675
|
+
interface SelectGroupOwnProps {
|
|
676
|
+
children?: ReactNode;
|
|
677
|
+
label: ReactNode;
|
|
678
|
+
labelClassName?: string;
|
|
679
|
+
}
|
|
680
|
+
type SelectGroupProps = Omit<ComponentProps, 'index'> & SelectGroupOwnProps;
|
|
681
|
+
declare const SelectGroup: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & SelectGroupOwnProps & react.RefAttributes<HTMLDivElement>>;
|
|
682
|
+
|
|
683
|
+
type SelectOptionPart = 'check' | 'checkbox' | 'description' | 'icon';
|
|
684
|
+
interface SelectOptionOwnProps {
|
|
685
|
+
children?: ReactNode;
|
|
686
|
+
classNames?: Partial<Record<SelectOptionPart, string>>;
|
|
687
|
+
description?: ReactNode;
|
|
688
|
+
disabled?: boolean;
|
|
689
|
+
icon?: ReactNode;
|
|
690
|
+
label?: string;
|
|
691
|
+
value: string;
|
|
692
|
+
}
|
|
693
|
+
type SelectOptionProps = Omit<ComponentProps, 'index'> & SelectOptionOwnProps;
|
|
694
|
+
declare const SelectOption: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & SelectOptionOwnProps & react.RefAttributes<HTMLDivElement>>;
|
|
695
|
+
|
|
696
|
+
type SelectTriggerPart = 'chevron' | 'chip' | 'chipRemove' | 'clear' | 'field' | 'trigger';
|
|
697
|
+
interface SelectTriggerOwnProps {
|
|
698
|
+
'aria-label'?: string;
|
|
699
|
+
'aria-labelledby'?: string;
|
|
700
|
+
children?: ReactNode;
|
|
701
|
+
classNames?: Partial<Record<SelectTriggerPart, string>>;
|
|
702
|
+
clearLabel?: string;
|
|
703
|
+
display?: 'chips' | 'text';
|
|
704
|
+
maxDisplay?: number;
|
|
705
|
+
placeholder?: ReactNode;
|
|
706
|
+
removeLabel?: (label: string) => string;
|
|
707
|
+
}
|
|
708
|
+
type SelectTriggerProps = Omit<ComponentProps, 'index'> & SelectTriggerOwnProps;
|
|
709
|
+
declare const SelectTrigger: react.ForwardRefExoticComponent<Omit<ComponentProps, "index"> & SelectTriggerOwnProps & react.RefAttributes<HTMLButtonElement>>;
|
|
710
|
+
|
|
711
|
+
interface SelectValueProps {
|
|
712
|
+
children?: (selected: readonly SelectedOption[]) => ReactNode;
|
|
713
|
+
placeholder?: ReactNode;
|
|
714
|
+
}
|
|
715
|
+
declare function SelectValue({ children, placeholder }: Readonly<SelectValueProps>): ReactNode;
|
|
716
|
+
|
|
545
717
|
interface SpinnerOwnProps {
|
|
546
718
|
color?: ColorShade;
|
|
547
719
|
size?: Size;
|
|
@@ -634,9 +806,11 @@ declare function useToast(): ToastApi;
|
|
|
634
806
|
|
|
635
807
|
type ToastPosition = 'top-start' | 'top' | 'top-end' | 'center-start' | 'center' | 'center-end' | 'bottom-start' | 'bottom' | 'bottom-end';
|
|
636
808
|
type ToastVariant = 'solid' | 'subtle' | 'outline' | 'unstyled';
|
|
809
|
+
type ToastPart = 'action' | 'content' | 'description' | 'dismiss' | 'icon' | 'title';
|
|
637
810
|
interface ToastProviderProps {
|
|
638
811
|
children: ReactNode;
|
|
639
812
|
className?: string;
|
|
813
|
+
classNames?: Partial<Record<ToastPart, string>>;
|
|
640
814
|
dismissLabel?: string;
|
|
641
815
|
duration?: number;
|
|
642
816
|
icons?: false | ToastIcons;
|
|
@@ -646,9 +820,11 @@ interface ToastProviderProps {
|
|
|
646
820
|
toastClassName?: string;
|
|
647
821
|
variant?: ToastVariant;
|
|
648
822
|
}
|
|
649
|
-
declare function ToastProvider({ children, className, dismissLabel, duration, icons, max, position, regionLabel, toastClassName, variant, }: Readonly<ToastProviderProps>): ReactNode;
|
|
823
|
+
declare function ToastProvider({ children, className, classNames, dismissLabel, duration, icons, max, position, regionLabel, toastClassName, variant, }: Readonly<ToastProviderProps>): ReactNode;
|
|
650
824
|
|
|
651
825
|
interface ToggleOwnProps {
|
|
826
|
+
inputClassName?: string;
|
|
827
|
+
labelClassName?: string;
|
|
652
828
|
colorScheme?: ColorScheme;
|
|
653
829
|
readOnly?: boolean;
|
|
654
830
|
size?: Size;
|
|
@@ -680,4 +856,4 @@ interface TooltipProps {
|
|
|
680
856
|
type TooltipVariant = 'solid' | 'outline' | 'unstyled';
|
|
681
857
|
declare function Tooltip({ children, className, closeDelay, content, defaultOpen, disabled, offset, onOpenChange, open: openProp, openDelay, placement, size, style, variant, }: Readonly<TooltipProps>): ReactNode;
|
|
682
858
|
|
|
683
|
-
export { Badge, type BadgeProps, type Breakpoints, Button, type ButtonProps, Card, CardBody, type CardBodyProps, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, Checkbox, type CheckboxProps, type ColorMode, type ColorModeSetting, type ColorPalette, type ColorScheme, type ColorShade, type ComponentProps, DatePicker, type DatePickerConfig, type DatePickerProps, type DateRange, type DeepPartial, Field, type FieldControlProps, type FieldOrientation, type FieldProps, type FontSizes, type FontWeights, Icon, type IconProps, Input, type InputProps, type LazyLoadedComponent, type LineHeights, List, ListDivider, type ListDividerProps, ListItem, ListItemButton, type ListItemButtonProps, ListItemIcon, type ListItemIconProps, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, type MaskChangeHandler, Modal, ModalBody, type ModalBodyProps, ModalClose, type ModalCloseProps, ModalContent, type ModalContentProps, ModalFooter, type ModalFooterProps, ModalHeader, type ModalHeaderProps, type ModalProps, ModalTrigger, type ModalTriggerProps, Popover, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, type PopoverTriggerProps, type Radii, Radio, RadioGroup, type RadioGroupProps, type RadioProps, type SemanticColors, type Shade, type ShadeLevel, type Shadows, type Shape, type Size, type Sizes, type Spaces, Spinner, type SpinnerProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, TabPanels, type TabPanelsProps, type TabProps, Tabs, type TabsProps, Textarea, type TextareaProps, type Theme, type ThemeContextValue, ThemeProvider, type ThemeProviderProps, type ToastAction, type ToastApi, type ToastContent, type ToastIcons, type ToastOptions, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastStatus, type ToastVariant, Toggle, type ToggleProps, Tooltip, type TooltipProps, type Typography, type UseClickOutsideProps, type UseDebounceProps, type UseMaskProps, type UseMaskResult, type ZIndeces, applyMask, colorVar, deepMerge, defaultDarkTheme, defaultTheme, formatDate, getContrastColor, getContrastRatio, getDarkenColor, getDateFormatByLanguage, getDateFromDateString, getDateStringByLanguage, getDaysOfWeekByLanguage, getLightenColor, getMonthsByLanguage, lazyLoadContent, themeToCssVars, useClickOutside, useDebounce, useMask, useTheme, useToast, validateFormatDate };
|
|
859
|
+
export { Badge, type BadgeProps, type Breakpoints, Button, type ButtonProps, Card, CardBody, type CardBodyProps, CardFooter, type CardFooterProps, CardHeader, type CardHeaderProps, type CardProps, Checkbox, type CheckboxProps, Chip, type ChipPart, type ChipProps, type ChipVariant, type ColorMode, type ColorModeSetting, type ColorPalette, type ColorScheme, type ColorShade, type ComponentProps, DatePicker, type DatePickerConfig, type DatePickerProps, type DateRange, type DeepPartial, Dropdown, DropdownItem, type DropdownItemProps, DropdownLabel, type DropdownLabelProps, DropdownMenu, type DropdownMenuProps, type DropdownProps, DropdownSeparator, type DropdownSeparatorProps, DropdownTrigger, type DropdownTriggerProps, Field, type FieldControlProps, type FieldOrientation, type FieldProps, type FontSizes, type FontWeights, Icon, type IconProps, Input, type InputProps, type LazyLoadedComponent, type LineHeights, List, ListDivider, type ListDividerProps, ListItem, ListItemButton, type ListItemButtonProps, ListItemIcon, type ListItemIconProps, type ListItemProps, ListItemText, type ListItemTextProps, type ListProps, ListSubheader, type ListSubheaderProps, type MaskChangeHandler, Modal, ModalBody, type ModalBodyProps, ModalClose, type ModalCloseProps, ModalContent, type ModalContentProps, ModalFooter, type ModalFooterProps, ModalHeader, type ModalHeaderProps, type ModalProps, ModalTrigger, type ModalTriggerProps, Popover, PopoverClose, type PopoverCloseProps, PopoverContent, type PopoverContentProps, type PopoverProps, PopoverTrigger, type PopoverTriggerProps, type Radii, Radio, RadioGroup, type RadioGroupProps, type RadioProps, Select, SelectContent, type SelectContentPart, type SelectContentProps, SelectGroup, type SelectGroupProps, SelectOption, type SelectOptionPart, type SelectOptionProps, type SelectProps, SelectTrigger, type SelectTriggerPart, type SelectTriggerProps, SelectValue, type SelectValueProps, type SelectVariant, type SelectedOption, type SemanticColors, type Shade, type ShadeLevel, type Shadows, type Shape, type Size, type Sizes, type Spaces, Spinner, type SpinnerProps, Tab, TabList, type TabListProps, TabPanel, type TabPanelProps, TabPanels, type TabPanelsProps, type TabProps, Tabs, type TabsProps, Textarea, type TextareaProps, type Theme, type ThemeContextValue, ThemeProvider, type ThemeProviderProps, type ToastAction, type ToastApi, type ToastContent, type ToastIcons, type ToastOptions, type ToastPart, type ToastPosition, ToastProvider, type ToastProviderProps, type ToastStatus, type ToastVariant, Toggle, type ToggleProps, Tooltip, type TooltipProps, type Typography, type UseClickOutsideProps, type UseDebounceProps, type UseMaskProps, type UseMaskResult, type ZIndeces, applyMask, colorVar, deepMerge, defaultDarkTheme, defaultTheme, formatDate, getContrastColor, getContrastRatio, getDarkenColor, getDateFormatByLanguage, getDateFromDateString, getDateStringByLanguage, getDaysOfWeekByLanguage, getLightenColor, getMonthsByLanguage, lazyLoadContent, themeToCssVars, useClickOutside, useDebounce, useMask, useTheme, useToast, validateFormatDate };
|