@aws-amplify/ui-react 4.3.8 → 4.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/{utils-80566d75.js → constants-cedcff37.js} +1 -1
  2. package/dist/esm/components/AccountSettings/ChangePassword/ChangePassword.mjs +1 -1
  3. package/dist/esm/components/AccountSettings/DeleteUser/DeleteUser.mjs +1 -1
  4. package/dist/esm/components/Authenticator/Authenticator.mjs +1 -1
  5. package/dist/esm/components/Storage/FileUploader/FileUploader.mjs +1 -1
  6. package/dist/esm/components/Storage/FileUploader/UploadPreviewer/index.mjs +1 -1
  7. package/dist/esm/components/Storage/FileUploader/UploadTracker/UploadMessage.mjs +1 -1
  8. package/dist/esm/components/Storage/FileUploader/UploadTracker/index.mjs +1 -1
  9. package/dist/esm/components/Storage/FileUploader/hooks/useFileUploader/useFileUploader.mjs +1 -1
  10. package/dist/esm/components/Storage/FileUploader/types.mjs +1 -0
  11. package/dist/esm/helpers/constants.mjs +1 -1
  12. package/dist/esm/hooks/useComposeRefsCallback.mjs +1 -1
  13. package/dist/esm/primitives/Alert/Alert.mjs +1 -1
  14. package/dist/esm/primitives/Autocomplete/Autocomplete.mjs +1 -1
  15. package/dist/esm/primitives/Autocomplete/useAutocomplete.mjs +1 -1
  16. package/dist/esm/primitives/Checkbox/useCheckbox.mjs +1 -1
  17. package/dist/esm/primitives/Collection/Collection.mjs +1 -1
  18. package/dist/esm/primitives/Field/FieldClearButton.mjs +1 -1
  19. package/dist/esm/primitives/SearchField/SearchFieldButton.mjs +1 -1
  20. package/dist/esm/primitives/SearchField/useSearchField.mjs +1 -1
  21. package/dist/esm/primitives/SliderField/SliderField.mjs +1 -1
  22. package/dist/esm/primitives/StepperField/useStepper.mjs +1 -1
  23. package/dist/esm/primitives/SwitchField/useSwitch.mjs +1 -1
  24. package/dist/esm/primitives/ToggleButton/useToggleButton.mjs +1 -1
  25. package/dist/esm/primitives/ToggleButtonGroup/useToggleButtonGroup.mjs +1 -1
  26. package/dist/esm/primitives/shared/utils.mjs +1 -1
  27. package/dist/esm/version.mjs +1 -1
  28. package/dist/index.js +1 -1
  29. package/dist/internal.js +1 -1
  30. package/dist/types/components/Geo/LocationSearch/index.d.ts +1 -1
  31. package/dist/types/components/Geo/types/maplibre-gl-geocoder.d.ts +171 -0
  32. package/dist/types/components/Storage/FileUploader/types.d.ts +9 -1
  33. package/dist/types/primitives/shared/utils.d.ts +0 -1
  34. package/dist/types/version.d.ts +1 -1
  35. package/package.json +3 -3
@@ -1 +1 @@
1
- import*as e from"react";import{ARROW_UP as t,ARROW_DOWN as n,ENTER_KEY as o,ESCAPE_KEY as l}from"../shared/constants.mjs";import{isFunction as s,strHasLength as i}from"../shared/utils.mjs";import{useStableId as c}from"../utils/useStableId.mjs";const a=new Set([n,t,o,l]),u=({defaultValue:u="",value:r,options:d,optionFilter:m,onBlur:f,onChange:h,onClear:p,onClick:g,onSelect:b,onSubmit:C})=>{const I=void 0!==r,[v,k]=e.useState(u),w=I?r:v,[O,B]=e.useState(!1),[E,y]=e.useState(null),S=s(m),T=e.useMemo((()=>{const e=S?e=>m(e,w):e=>{const{label:t}=e;return null==t?void 0:t.toLocaleLowerCase().includes(null==w?void 0:w.toLocaleLowerCase())};return(null==d?void 0:d.filter(e))||[]}),[w,m,S,d]),H=c(),L=c(),M=c(),V=c(),j=T.findIndex((e=>e===E)),x=(null==E?void 0:E.id)||(-1!==j?`${V}-option-${j}`:void 0),D=e.useCallback((e=>{B(!1),y(null),s(f)&&f(e)}),[f]),F=e.useCallback((e=>{y(null),B(!0),I||k(e.target.value),s(h)&&h(e)}),[I,h]),R=e.useCallback((()=>{I||k(""),s(p)&&p()}),[I,p]),$=e.useCallback((e=>{B(!0),s(g)&&g(e)}),[g]);return e.useEffect((()=>{const e=document.getElementById(H),t=document.getElementById(M);if(t&&O&&e){const{bottom:n}=t.getBoundingClientRect(),{offsetParent:o,offsetTop:l}=e;o===document.body&&n>document.documentElement.clientHeight&&window.scrollTo({top:Math.min(n-document.documentElement.clientHeight+window.scrollY+20,l),behavior:"smooth"})}}),[H,O,M]),e.useEffect((()=>{const e=document.getElementById(L),t=i(x)?document.getElementById(x):null;if(t&&e){const{scrollTop:n,clientHeight:o}=e,{offsetHeight:l,offsetTop:s}=t,{top:i,bottom:c}=t.getBoundingClientRect();n>s&&(e.scrollTop=s),n+o<s+l&&(e.scrollTop=s+l-o),(i<0||c>document.documentElement.clientHeight)&&t.scrollIntoView({behavior:"smooth",block:"nearest"})}}),[x,L]),{activeOptionId:x,autocompleteId:H,composedValue:w,filteredOptions:T,handleOnBlur:D,handleOnClear:R,handleOnClick:$,handleOnChange:F,handleOnKeyDown:e=>{const{key:i}=e;if(a.has(i))switch(e.preventDefault(),i){case l:O?(B(!1),y(null)):R();break;case o:if(E){const{label:e}=E;I||k(e),s(b)&&b(E)}else s(C)&&C(w);B(!1),y(null);break;case n:{if(T.length<=0)return;B(!0);const e=j>=T.length-1?0:j+1;y(T[e]);break}case t:{if(T.length<=0)return;B(!0);const e=j<=0?T.length-1:j-1;y(T[e])}}},isControlled:I,isCustomFiltering:S,isMenuOpen:O,listboxId:L,menuId:M,optionBaseId:V,setActiveOption:y,setIsMenuOpen:B,setInternalValue:k}};export{u as useAutocomplete};
1
+ import*as e from"react";import{isFunction as t}from"@aws-amplify/ui";import{ARROW_UP as o,ARROW_DOWN as n,ENTER_KEY as l,ESCAPE_KEY as s}from"../shared/constants.mjs";import{strHasLength as i}from"../shared/utils.mjs";import{useStableId as a}from"../utils/useStableId.mjs";const c=new Set([n,o,l,s]),u=({defaultValue:u="",value:r,options:d,optionFilter:m,onBlur:f,onChange:p,onClear:h,onClick:g,onSelect:b,onSubmit:C})=>{const I=void 0!==r,[v,k]=e.useState(u),w=I?r:v,[O,B]=e.useState(!1),[E,y]=e.useState(null),S=t(m),T=e.useMemo((()=>{const e=S?e=>m(e,w):e=>{const{label:t}=e;return null==t?void 0:t.toLocaleLowerCase().includes(null==w?void 0:w.toLocaleLowerCase())};return(null==d?void 0:d.filter(e))||[]}),[w,m,S,d]),H=a(),L=a(),M=a(),V=a(),j=T.findIndex((e=>e===E)),x=(null==E?void 0:E.id)||(-1!==j?`${V}-option-${j}`:void 0),D=e.useCallback((e=>{B(!1),y(null),t(f)&&f(e)}),[f]),F=e.useCallback((e=>{y(null),B(!0),I||k(e.target.value),t(p)&&p(e)}),[I,p]),R=e.useCallback((()=>{I||k(""),t(h)&&h()}),[I,h]),$=e.useCallback((e=>{B(!0),t(g)&&g(e)}),[g]);return e.useEffect((()=>{const e=document.getElementById(H),t=document.getElementById(M);if(t&&O&&e){const{bottom:o}=t.getBoundingClientRect(),{offsetParent:n,offsetTop:l}=e;n===document.body&&o>document.documentElement.clientHeight&&window.scrollTo({top:Math.min(o-document.documentElement.clientHeight+window.scrollY+20,l),behavior:"smooth"})}}),[H,O,M]),e.useEffect((()=>{const e=document.getElementById(L),t=i(x)?document.getElementById(x):null;if(t&&e){const{scrollTop:o,clientHeight:n}=e,{offsetHeight:l,offsetTop:s}=t,{top:i,bottom:a}=t.getBoundingClientRect();o>s&&(e.scrollTop=s),o+n<s+l&&(e.scrollTop=s+l-n),(i<0||a>document.documentElement.clientHeight)&&t.scrollIntoView({behavior:"smooth",block:"nearest"})}}),[x,L]),{activeOptionId:x,autocompleteId:H,composedValue:w,filteredOptions:T,handleOnBlur:D,handleOnClear:R,handleOnClick:$,handleOnChange:F,handleOnKeyDown:e=>{const{key:i}=e;if(c.has(i))switch(e.preventDefault(),i){case s:O?(B(!1),y(null)):R();break;case l:if(E){const{label:e}=E;I||k(e),t(b)&&b(E)}else t(C)&&C(w);B(!1),y(null);break;case n:{if(T.length<=0)return;B(!0);const e=j>=T.length-1?0:j+1;y(T[e]);break}case o:{if(T.length<=0)return;B(!0);const e=j<=0?T.length-1:j-1;y(T[e])}}},isControlled:I,isCustomFiltering:S,isMenuOpen:O,listboxId:L,menuId:M,optionBaseId:V,setActiveOption:y,setIsMenuOpen:B,setInternalValue:k}};export{u as useAutocomplete};
@@ -1 +1 @@
1
- import{useState as t}from"react";import{isFunction as e}from"../shared/utils.mjs";const o=(o,r)=>{const[a,c]=t(o),[s,n]=t(!1);return{dataChecked:a,dataFocus:s,onBlur:()=>{n(!1)},onChange:t=>{c(t.target.checked),e(r)&&r(t)},onFocus:()=>{n(!0)},setDataChecked:c}};export{o as useCheckbox};
1
+ import{useState as t}from"react";import{isFunction as e}from"@aws-amplify/ui";const o=(o,a)=>{const[r,c]=t(o),[n,s]=t(!1);return{dataChecked:r,dataFocus:n,onBlur:()=>{s(!1)},onChange:t=>{c(t.target.checked),e(a)&&a(t)},onFocus:()=>{s(!0)},setDataChecked:c}};export{o as useCheckbox};
@@ -1 +1 @@
1
- import{__rest as e}from"tslib";import t from"classnames";import*as a from"react";import{debounce as r}from"@aws-amplify/ui";import{Flex as s}from"../Flex/Flex.mjs";import{Grid as l}from"../Grid/Grid.mjs";import{Text as i}from"../Text/Text.mjs";import{Pagination as n}from"../Pagination/Pagination.mjs";import{usePagination as m}from"../Pagination/usePagination.mjs";import{SearchField as o}from"../SearchField/SearchField.mjs";import{ComponentClassNames as c,ComponentText as h}from"../shared/constants.mjs";import{strHasLength as d}from"../shared/utils.mjs";import{getPageCount as u,getItemsAtPage as g,itemHasText as p}from"./utils.mjs";const f=10,j=t=>{var{children:r,direction:l="column",items:i}=t,n=e(t,["children","direction","items"]);return a.createElement(s,Object.assign({direction:l},n),Array.isArray(i)?i.map(r):null)},P=t=>{var{children:r,items:s}=t,i=e(t,["children","items"]);return a.createElement(l,Object.assign({},i),Array.isArray(s)?s.map(r):null)},b=l=>{var{className:b,isSearchable:C,isPaginated:y,items:E,itemsPerPage:N=f,searchFilter:F=p,searchLabel:A=h.Collection.searchButtonLabel,searchNoResultsFound:S,searchPlaceholder:x,type:I="list",testId:O}=l,v=e(l,["className","isSearchable","isPaginated","items","itemsPerPage","searchFilter","searchLabel","searchNoResultsFound","searchPlaceholder","type","testId"]);const[L,R]=a.useState(),G=a.useCallback(r(R,300),[R]);E=Array.isArray(E)?E:[],C&&d(L)&&(E=E.filter((e=>F(e,L))));const T=m({totalPages:u(E.length,N)});y&&(E=g(E,T.currentPage,N));const k="list"===I?a.createElement(j,Object.assign({className:c.CollectionItems,items:E},v)):"grid"===I?a.createElement(P,Object.assign({className:c.CollectionItems,items:E},v)):null;return a.createElement(s,{testId:O,className:t(c.Collection,b)},C?a.createElement(s,{className:c.CollectionSearch},a.createElement(o,{label:A,placeholder:x,onChange:e=>G(e.target.value),onClear:()=>R("")})):null,((e,t,r)=>t.length?e:r||a.createElement(s,{justifyContent:"center"},a.createElement(i,null,h.Collection.searchNoResultsFound)))(k,E,S),y?a.createElement(s,{className:c.CollectionPagination},a.createElement(n,Object.assign({},T))):null)};b.displayName="Collection";export{b as Collection};
1
+ import{__rest as e}from"tslib";import t from"classnames";import*as a from"react";import r from"lodash/debounce.js";import{Flex as s}from"../Flex/Flex.mjs";import{Grid as l}from"../Grid/Grid.mjs";import{Text as i}from"../Text/Text.mjs";import{Pagination as n}from"../Pagination/Pagination.mjs";import{usePagination as o}from"../Pagination/usePagination.mjs";import{SearchField as m}from"../SearchField/SearchField.mjs";import{ComponentClassNames as c,ComponentText as d}from"../shared/constants.mjs";import{strHasLength as h}from"../shared/utils.mjs";import{getPageCount as u,getItemsAtPage as g,itemHasText as p}from"./utils.mjs";const j=10,f=t=>{var{children:r,direction:l="column",items:i}=t,n=e(t,["children","direction","items"]);return a.createElement(s,Object.assign({direction:l},n),Array.isArray(i)?i.map(r):null)},P=t=>{var{children:r,items:s}=t,i=e(t,["children","items"]);return a.createElement(l,Object.assign({},i),Array.isArray(s)?s.map(r):null)},b=l=>{var{className:b,isSearchable:C,isPaginated:E,items:N,itemsPerPage:y=j,searchFilter:F=p,searchLabel:A=d.Collection.searchButtonLabel,searchNoResultsFound:S,searchPlaceholder:x,type:I="list",testId:O}=l,v=e(l,["className","isSearchable","isPaginated","items","itemsPerPage","searchFilter","searchLabel","searchNoResultsFound","searchPlaceholder","type","testId"]);const[L,R]=a.useState(),G=a.useCallback(r(R,300),[R]);N=Array.isArray(N)?N:[],C&&h(L)&&(N=N.filter((e=>F(e,L))));const T=o({totalPages:u(N.length,y)});E&&(N=g(N,T.currentPage,y));const k="list"===I?a.createElement(f,Object.assign({className:c.CollectionItems,items:N},v)):"grid"===I?a.createElement(P,Object.assign({className:c.CollectionItems,items:N},v)):null;return a.createElement(s,{testId:O,className:t(c.Collection,b)},C?a.createElement(s,{className:c.CollectionSearch},a.createElement(m,{label:A,placeholder:x,onChange:e=>G(e.target.value),onClear:()=>R("")})):null,((e,t,r)=>t.length?e:r||a.createElement(s,{justifyContent:"center"},a.createElement(i,null,d.Collection.searchNoResultsFound)))(k,N,S),E?a.createElement(s,{className:c.CollectionPagination},a.createElement(n,Object.assign({},T))):null)};b.displayName="Collection";export{b as Collection};
@@ -1 +1 @@
1
- import{__rest as e}from"tslib";import*as r from"react";import"../FieldGroupIcon/FieldGroupIcon.mjs";import{FieldGroupIconButton as o}from"../FieldGroupIcon/FieldGroupIconButton.mjs";import"classnames";import{ComponentText as i}from"../shared/constants.mjs";import"../View/View.mjs";import{IconClose as t}from"../Icon/icons/IconClose.mjs";const a=i.Fields.clearButtonLabel,s=r.forwardRef(((i,s)=>{var{ariaLabel:m=a,size:l}=i,n=e(i,["ariaLabel","size"]);return r.createElement(o,Object.assign({ariaLabel:m,ref:s},n),r.createElement(t,{size:l}))}));s.displayName="FieldClearButton";export{s as FieldClearButton};
1
+ import{__rest as e}from"tslib";import*as r from"react";import"../FieldGroupIcon/FieldGroupIcon.mjs";import{FieldGroupIconButton as o}from"../FieldGroupIcon/FieldGroupIconButton.mjs";import"classnames";import{ComponentText as i}from"../shared/constants.mjs";import"../View/View.mjs";import{IconClose as t}from"../Icon/icons/IconClose.mjs";const a=i.Fields.clearButtonLabel,s=r.forwardRef(((i,s)=>{var{ariaLabel:m=a,size:l}=i,n=e(i,["ariaLabel","size"]);return r.createElement(o,Object.assign({ariaLabel:m,size:l,ref:s},n),r.createElement(t,null))}));s.displayName="FieldClearButton";export{s as FieldClearButton};
@@ -1 +1 @@
1
- import{__rest as e}from"tslib";import*as r from"react";import{ComponentClassNames as o,ComponentText as t}from"../shared/constants.mjs";import"../FieldGroupIcon/FieldGroupIcon.mjs";import{FieldGroupIconButton as i}from"../FieldGroupIcon/FieldGroupIconButton.mjs";import"classnames";import"../View/View.mjs";import{IconSearch as a}from"../Icon/icons/IconSearch.mjs";const s=t.SearchField.searchButtonLabel,m=r.forwardRef(((t,m)=>{var{size:c}=t,n=e(t,["size"]);return r.createElement(i,Object.assign({ariaLabel:s,className:o.SearchFieldSearch,ref:m,type:"submit"},n),r.createElement(a,{size:c}))}));m.displayName="SearchFieldButton";export{m as SearchFieldButton};
1
+ import{__rest as e}from"tslib";import*as r from"react";import{ComponentClassNames as o,ComponentText as t}from"../shared/constants.mjs";import"../FieldGroupIcon/FieldGroupIcon.mjs";import{FieldGroupIconButton as i}from"../FieldGroupIcon/FieldGroupIconButton.mjs";import"classnames";import"../View/View.mjs";import{IconSearch as a}from"../Icon/icons/IconSearch.mjs";const s=t.SearchField.searchButtonLabel,m=r.forwardRef(((t,m)=>{var{size:c}=t,n=e(t,["size"]);return r.createElement(i,Object.assign({ariaLabel:s,className:o.SearchFieldSearch,size:c,ref:m,type:"submit"},n),r.createElement(a,null))}));m.displayName="SearchFieldButton";export{m as SearchFieldButton};
@@ -1 +1 @@
1
- import*as e from"react";import{ESCAPE_KEY as a,ENTER_KEY as l}from"../shared/constants.mjs";import{isFunction as o}from"../shared/utils.mjs";import{useComposeRefsCallback as n}from"../../hooks/useComposeRefsCallback.mjs";const s=new Set([a,l]),t=({defaultValue:t="",value:r,onChange:u,onClear:c,onSubmit:m,externalRef:f})=>{const C=void 0!==r,[i,d]=e.useState(t),k=C?r:i,p=e.useRef(null),b=n({externalRef:f,internalRef:p}),h=e.useCallback((()=>{var e;C||d(""),null===(e=null==p?void 0:p.current)||void 0===e||e.focus(),o(c)&&c()}),[C,d,c]),v=e.useCallback((e=>{o(m)&&m(e)}),[m]),R=e.useCallback((e=>{const{key:o}=e;s.has(o)&&(e.preventDefault(),o===a?h():o===l&&v(k))}),[k,h,v]),g=e.useCallback((e=>{C||d(e.target.value),o(u)&&u(e)}),[C,u,d]),j=e.useCallback((()=>{v(k)}),[v,k]);return{composedValue:k,onClearHandler:h,onKeyDown:R,onClick:j,handleOnChange:g,composedRefs:b}};export{t as useSearchField};
1
+ import*as e from"react";import{isFunction as a}from"@aws-amplify/ui";import{ESCAPE_KEY as l,ENTER_KEY as o}from"../shared/constants.mjs";import{useComposeRefsCallback as n}from"../../hooks/useComposeRefsCallback.mjs";const s=new Set([l,o]),t=({defaultValue:t="",value:r,onChange:u,onClear:c,onSubmit:m,externalRef:f})=>{const i=void 0!==r,[C,p]=e.useState(t),d=i?r:C,k=e.useRef(null),b=n({externalRef:f,internalRef:k}),v=e.useCallback((()=>{var e;i||p(""),null===(e=null==k?void 0:k.current)||void 0===e||e.focus(),a(c)&&c()}),[i,p,c]),h=e.useCallback((e=>{a(m)&&m(e)}),[m]),R=e.useCallback((e=>{const{key:a}=e;s.has(a)&&(e.preventDefault(),a===l?v():a===o&&h(d))}),[d,v,h]),g=e.useCallback((e=>{i||p(e.target.value),a(u)&&u(e)}),[i,u,p]),w=e.useCallback((()=>{h(d)}),[h,d]);return{composedValue:d,onClearHandler:v,onKeyDown:R,onClick:w,handleOnChange:g,composedRefs:b}};export{t as useSearchField};
@@ -1 +1 @@
1
- import{__rest as e}from"tslib";import r from"classnames";import*as t from"@radix-ui/react-slider";import*as a from"react";import{sanitizeNamespaceImport as l}from"@aws-amplify/ui";import{isFunction as i,classNameModifier as o}from"../shared/utils.mjs";import{ComponentClassNames as s}from"../shared/constants.mjs";import"../Field/FieldClearButton.mjs";import{FieldDescription as d}from"../Field/FieldDescription.mjs";import{FieldErrorMessage as m}from"../Field/FieldErrorMessage.mjs";import{FieldGroup as n}from"../FieldGroup/FieldGroup.mjs";import{Flex as c}from"../Flex/Flex.mjs";import{Label as u}from"../Label/Label.mjs";import{splitPrimitiveProps as p}from"../utils/splitPrimitiveProps.mjs";import{View as b}from"../View/View.mjs";import{useStableId as f}from"../utils/useStableId.mjs";const{Range:F,Root:S,Thumb:g,Track:C}=l(t),E="slider-label",h="slider-root",k="slider-track",v="slider-range",T=a.forwardRef(((t,l)=>{var{ariaValuetext:E,className:h,defaultValue:k=0,descriptiveText:v,emptyTrackColor:T,errorMessage:j,filledTrackColor:y,formatValue:V,hasError:x=!1,id:N,isDisabled:R,isValueHidden:z=!1,label:H,labelHidden:w=!1,onChange:I,orientation:M="horizontal",outerEndComponent:D,outerStartComponent:G,testId:L,thumbColor:P,trackSize:O,value:B,size:q}=t,A=e(t,["ariaValuetext","className","defaultValue","descriptiveText","emptyTrackColor","errorMessage","filledTrackColor","formatValue","hasError","id","isDisabled","isValueHidden","label","labelHidden","onChange","orientation","outerEndComponent","outerStartComponent","testId","thumbColor","trackSize","value","size"]);const J=f(N),K=f(),Q=f(),U=v?Q:void 0,{styleProps:W,rest:X}=p(A),Y=void 0!==B,[Z,$]=a.useState(Y?B:k),_=Y?[B]:void 0,ee=Y?void 0:[k],re=a.useCallback((e=>{$(e[0]),i(I)&&I(e[0])}),[I]),te=a.useMemo((()=>{const e=i(V)?V(Z):Z;return"string"==typeof V?a.createElement(b,{as:"span"},e):e}),[Z,V]),ae="vertical"===M,le=r(s.SliderFieldTrack,o(s.SliderFieldTrack,M),o(s.SliderFieldTrack,q)),ie=r(s.SliderFieldRoot,o(s.SliderFieldRoot,M),o(s.SliderFieldRoot,q),h);return a.createElement(c,Object.assign({className:r(s.Field,o(s.Field,q),s.SliderField),testId:L,"data-size":q},W),a.createElement(u,{className:s.SliderFieldLabel,id:K,testId:"slider-label",visuallyHidden:w},a.createElement(b,{as:"span"},H),z?null:te),a.createElement(d,{id:Q,labelHidden:w,descriptiveText:v}),a.createElement(n,{className:s.SliderFieldGroup,id:J,orientation:M,outerStartComponent:G,outerEndComponent:D},a.createElement(S,Object.assign({className:ie,"data-testid":"slider-root",disabled:R,defaultValue:ee,onValueChange:re,orientation:M,ref:l,value:_},X),a.createElement(C,{className:le,"data-testid":"slider-track",style:{backgroundColor:String(T),[""+(ae?"width":"height")]:O}},a.createElement(F,{className:r(s.SliderFieldRange,o(s.SliderFieldRange,M)),"data-testid":"slider-range",style:{backgroundColor:String(y)}})),a.createElement(g,{"aria-describedby":U,"aria-labelledby":K,"aria-valuetext":E,className:r(s.SliderFieldThumb,o(s.SliderFieldThumb,q)),style:{backgroundColor:String(P)}}))),a.createElement(m,{hasError:x,errorMessage:j}))}));T.displayName="SliderField";export{E as SLIDER_LABEL_TEST_ID,v as SLIDER_RANGE_TEST_ID,h as SLIDER_ROOT_TEST_ID,k as SLIDER_TRACK_TEST_ID,T as SliderField};
1
+ import{__rest as e}from"tslib";import r from"classnames";import*as t from"@radix-ui/react-slider";import*as a from"react";import{sanitizeNamespaceImport as l,isFunction as i}from"@aws-amplify/ui";import{classNameModifier as o}from"../shared/utils.mjs";import{ComponentClassNames as s}from"../shared/constants.mjs";import"../Field/FieldClearButton.mjs";import{FieldDescription as d}from"../Field/FieldDescription.mjs";import{FieldErrorMessage as m}from"../Field/FieldErrorMessage.mjs";import{FieldGroup as n}from"../FieldGroup/FieldGroup.mjs";import{Flex as c}from"../Flex/Flex.mjs";import{Label as u}from"../Label/Label.mjs";import{splitPrimitiveProps as p}from"../utils/splitPrimitiveProps.mjs";import{View as b}from"../View/View.mjs";import{useStableId as f}from"../utils/useStableId.mjs";const{Range:F,Root:S,Thumb:g,Track:C}=l(t),E="slider-label",h="slider-root",k="slider-track",v="slider-range",T=a.forwardRef(((t,l)=>{var{ariaValuetext:E,className:h,defaultValue:k=0,descriptiveText:v,emptyTrackColor:T,errorMessage:j,filledTrackColor:y,formatValue:V,hasError:x=!1,id:N,isDisabled:R,isValueHidden:z=!1,label:H,labelHidden:w=!1,onChange:I,orientation:M="horizontal",outerEndComponent:D,outerStartComponent:G,testId:L,thumbColor:P,trackSize:O,value:B,size:q}=t,A=e(t,["ariaValuetext","className","defaultValue","descriptiveText","emptyTrackColor","errorMessage","filledTrackColor","formatValue","hasError","id","isDisabled","isValueHidden","label","labelHidden","onChange","orientation","outerEndComponent","outerStartComponent","testId","thumbColor","trackSize","value","size"]);const J=f(N),K=f(),Q=f(),U=v?Q:void 0,{styleProps:W,rest:X}=p(A),Y=void 0!==B,[Z,$]=a.useState(Y?B:k),_=Y?[B]:void 0,ee=Y?void 0:[k],re=a.useCallback((e=>{$(e[0]),i(I)&&I(e[0])}),[I]),te=a.useMemo((()=>{const e=i(V)?V(Z):Z;return"string"==typeof V?a.createElement(b,{as:"span"},e):e}),[Z,V]),ae="vertical"===M,le=r(s.SliderFieldTrack,o(s.SliderFieldTrack,M),o(s.SliderFieldTrack,q)),ie=r(s.SliderFieldRoot,o(s.SliderFieldRoot,M),o(s.SliderFieldRoot,q),h);return a.createElement(c,Object.assign({className:r(s.Field,o(s.Field,q),s.SliderField),testId:L,"data-size":q},W),a.createElement(u,{className:s.SliderFieldLabel,id:K,testId:"slider-label",visuallyHidden:w},a.createElement(b,{as:"span"},H),z?null:te),a.createElement(d,{id:Q,labelHidden:w,descriptiveText:v}),a.createElement(n,{className:s.SliderFieldGroup,id:J,orientation:M,outerStartComponent:G,outerEndComponent:D},a.createElement(S,Object.assign({className:ie,"data-testid":"slider-root",disabled:R,defaultValue:ee,onValueChange:re,orientation:M,ref:l,value:_},X),a.createElement(C,{className:le,"data-testid":"slider-track",style:{backgroundColor:String(T),[""+(ae?"width":"height")]:O}},a.createElement(F,{className:r(s.SliderFieldRange,o(s.SliderFieldRange,M)),"data-testid":"slider-range",style:{backgroundColor:String(y)}})),a.createElement(g,{"aria-describedby":U,"aria-labelledby":K,"aria-valuetext":E,className:r(s.SliderFieldThumb,o(s.SliderFieldThumb,q)),style:{backgroundColor:String(P)}}))),a.createElement(m,{hasError:x,errorMessage:j}))}));T.displayName="SliderField";export{E as SLIDER_LABEL_TEST_ID,v as SLIDER_RANGE_TEST_ID,h as SLIDER_ROOT_TEST_ID,k as SLIDER_TRACK_TEST_ID,T as SliderField};
@@ -1 +1 @@
1
- import*as e from"react";import{isFunction as a}from"../shared/utils.mjs";const t=({max:e,min:a,step:t,value:n})=>{const s=(n-a)%t;return n=n-s+Math.round(s/t)*t,(n=Math.max(a,n))>e&&(n=e-(e-a)%t),n},n=({defaultValue:n=0,value:s,step:l=1,max:u=Number.MAX_SAFE_INTEGER,min:r=Number.MIN_SAFE_INTEGER,isDisabled:o,isReadOnly:c,onChange:m,onDecrease:i,onIncrease:h,onStepChange:p})=>{const d=void 0!==s;u=Math.max(r,u);const[b,v]=e.useState((()=>t({min:r,max:u,step:l,value:n}))),x=d?t({min:r,max:u,step:l,value:s}):b,C=o||c||x+l>u,I=o||c||x-l<r,[N,f]=e.useState(x),g=e.useCallback((e=>{f(e.target.value),"function"==typeof m&&m(e)}),[m]),D=e.useCallback((e=>{const n=parseFloat(e.target.value);if(isNaN(n))return;const s=t({min:r,max:u,step:l,value:n});d||v(s),a(p)&&p(s),f(s)}),[r,u,l,d,p]),E=e.useCallback((()=>{d||v(x+l),a(p)&&p(x+l),a(h)&&h(),f(x+l)}),[l,x,d,h,p]),k=e.useCallback((()=>{d||v(x-l),a(p)&&p(x-l),a(i)&&i(),f(x-l)}),[l,x,d,i,p]),M=e.useCallback((e=>{e.currentTarget.blur()}),[]);return{step:l,value:x,inputValue:N,handleDecrease:k,handleIncrease:E,handleOnBlur:D,handleOnChange:g,handleOnWheel:M,setInputValue:f,shouldDisableDecreaseButton:I,shouldDisableIncreaseButton:C}};export{n as useStepper};
1
+ import*as e from"react";import{isFunction as a}from"@aws-amplify/ui";const t=({max:e,min:a,step:t,value:n})=>{const l=(n-a)%t;return n=n-l+Math.round(l/t)*t,(n=Math.max(a,n))>e&&(n=e-(e-a)%t),n},n=({defaultValue:n=0,value:l,step:s=1,max:u=Number.MAX_SAFE_INTEGER,min:r=Number.MIN_SAFE_INTEGER,isDisabled:o,isReadOnly:c,onChange:m,onDecrease:i,onIncrease:h,onStepChange:p})=>{const d=void 0!==l;u=Math.max(r,u);const[b,v]=e.useState((()=>t({min:r,max:u,step:s,value:n}))),x=d?t({min:r,max:u,step:s,value:l}):b,C=o||c||x+s>u,I=o||c||x-s<r,[N,g]=e.useState(x),D=e.useCallback((e=>{g(e.target.value),a(m)&&m(e)}),[m]),E=e.useCallback((e=>{const n=parseFloat(e.target.value);if(isNaN(n))return;const l=t({min:r,max:u,step:s,value:n});d||v(l),a(p)&&p(l),g(l)}),[r,u,s,d,p]),f=e.useCallback((()=>{d||v(x+s),a(p)&&p(x+s),a(h)&&h(),g(x+s)}),[s,x,d,h,p]),k=e.useCallback((()=>{d||v(x-s),a(p)&&p(x-s),a(i)&&i(),g(x-s)}),[s,x,d,i,p]),M=e.useCallback((e=>{e.currentTarget.blur()}),[]);return{step:s,value:x,inputValue:N,handleDecrease:k,handleIncrease:f,handleOnBlur:E,handleOnChange:D,handleOnWheel:M,setInputValue:g,shouldDisableDecreaseButton:I,shouldDisableIncreaseButton:C}};export{n as useStepper};
@@ -1 +1 @@
1
- import{useState as e,useCallback as t}from"react";const c=c=>{const{onChange:n,isChecked:o,defaultChecked:s,isDisabled:d}=c,r=void 0!==o,[a,i]=e(r?o:!!s),[u,f]=e(!1),h=t((e=>{d?e.preventDefault():("function"==typeof n&&n(e),i(e.target.checked))}),[n,d]);return r&&a!==o&&i(o),{isOn:a,changeHandler:h,isFocused:u,setIsFocused:f}};export{c as useSwitch};
1
+ import{useState as e,useCallback as t}from"react";import{isFunction as s}from"@aws-amplify/ui";const o=o=>{const{onChange:r,isChecked:a,defaultChecked:c,isDisabled:i}=o,d=void 0!==a,[n,u]=e(d?a:!!c),[f,h]=e(!1),l=t((e=>{i?e.preventDefault():(s(r)&&r(e),u(e.target.checked))}),[r,i]);return d&&n!==a&&u(a),{isOn:n,changeHandler:l,isFocused:f,setIsFocused:h}};export{o as useSwitch};
@@ -1 +1 @@
1
- import*as e from"react";import{isFunction as s}from"../shared/utils.mjs";const r=({isPressed:r,defaultPressed:t,onClick:a,onChange:o,value:i})=>{const l=void 0!==r,[d,n]=e.useState(t);return{isPressed:r=l?r:d,handleClick:e.useCallback((e=>{s(a)&&a(e),l||n(!d),l&&s(o)&&o(i)}),[l,a,o,d,i])}};export{r as useToggleButton};
1
+ import*as e from"react";import{isFunction as s}from"@aws-amplify/ui";const a=({isPressed:a,defaultPressed:r,onClick:o,onChange:t,value:i})=>{const l=void 0!==a,[n,c]=e.useState(r);return{isPressed:a=l?a:n,handleClick:e.useCallback((e=>{s(o)&&o(e),l||c(!n),l&&s(t)&&t(i)}),[l,o,t,n,i])}};export{a as useToggleButton};
@@ -1 +1 @@
1
- import*as e from"react";import{isFunction as r}from"../shared/utils.mjs";const s=({onChange:s,value:l,isExclusive:t=!1,isSelectionRequired:i=!1})=>{const a=e.useCallback((e=>{if(!r(s)||!Array.isArray(l))return;const t=l.indexOf(e);let a;t>=0?(a=[...l],(!i||a.length>1)&&a.splice(t,1)):a=[...l,e],s(a)}),[s,l,i]),n=e.useCallback((e=>{r(s)&&s(l!==e||i?e:null)}),[s,l,i]);return t?n:a};export{s as useToggleButtonGroup};
1
+ import*as e from"react";import{isFunction as r}from"@aws-amplify/ui";const i=({onChange:i,value:l,isExclusive:a=!1,isSelectionRequired:s=!1})=>{const t=e.useCallback((e=>{if(!r(i)||!Array.isArray(l))return;const a=l.indexOf(e);let t;a>=0?(t=[...l],(!s||t.length>1)&&t.splice(a,1)):t=[...l,e],i(t)}),[i,l,s]),n=e.useCallback((e=>{r(i)&&i(l!==e||s?e:null)}),[i,l,s]);return a?n:t};export{i as useToggleButtonGroup};
@@ -1 +1 @@
1
- import{isDesignToken as t,cssNameTransform as r}from"@aws-amplify/ui";import{isThemeStylePropKey as e}from"../types/theme.mjs";import{stylePropsToThemeKeys as n}from"./constants.mjs";const o=t=>"string"==typeof t&&t.length>0,i=t=>"function"==typeof t,s=t=>"string"==typeof t&&0===t.length,f=t=>null==t||s(t),p=(t,r)=>{const e=r-t+1;return Array.from({length:e},((r,e)=>e+t))},l=(t,r)=>r?`${t}--${r}`:"",m=(t,r,e)=>e?`${t}--${r}`:"",u=t=>Object.keys(t),y=(o,i,s)=>{if("string"!=typeof i)return i;if(i.includes(" "))return i.split(" ").map((t=>y(o,t,s))).join(" ");if(e(o)){const e=i.split("."),f=n[o];let p=s[f];for(let t=0;t<e.length&&p;t++)p=p[e[t]];return t(p)?`var(--${r({path:[n[o],...e]})})`:i}return i};export{l as classNameModifier,m as classNameModifierByFlag,y as getCSSVariableIfValueIsThemeKey,p as getConsecutiveIntArray,s as isEmptyString,i as isFunction,f as isNullOrEmptyString,u as objectKeys,o as strHasLength};
1
+ import{isDesignToken as t,cssNameTransform as r}from"@aws-amplify/ui";import{isThemeStylePropKey as e}from"../types/theme.mjs";import{stylePropsToThemeKeys as n}from"./constants.mjs";const o=t=>"string"==typeof t&&t.length>0,s=t=>"string"==typeof t&&0===t.length,i=t=>null==t||s(t),p=(t,r)=>{const e=r-t+1;return Array.from({length:e},((r,e)=>e+t))},f=(t,r)=>r?`${t}--${r}`:"",l=(t,r,e)=>e?`${t}--${r}`:"",m=t=>Object.keys(t),u=(o,s,i)=>{if("string"!=typeof s)return s;if(s.includes(" "))return s.split(" ").map((t=>u(o,t,i))).join(" ");if(e(o)){const e=s.split("."),p=n[o];let f=i[p];for(let t=0;t<e.length&&f;t++)f=f[e[t]];return t(f)?`var(--${r({path:[n[o],...e]})})`:s}return s};export{f as classNameModifier,l as classNameModifierByFlag,u as getCSSVariableIfValueIsThemeKey,p as getConsecutiveIntArray,s as isEmptyString,i as isNullOrEmptyString,m as objectKeys,o as strHasLength};
@@ -1 +1 @@
1
- const o="4.3.8";export{o as VERSION};
1
+ const o="4.3.9";export{o as VERSION};