freemium-ui 2.0.82 → 2.0.84

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/lib/index.cjs.js CHANGED
@@ -3946,8 +3946,8 @@ className:"end-adornment"},i)),a&&e.createElement("div",{className:"end-label"
3946
3946
  animation: ${Kr} ${({speed:e})=>gm[e]}s linear infinite;
3947
3947
  `,wm=t=>{const{size:n="medium",speed:r="medium"}=t,o=cr()
3948
3948
  ;return e.createElement(bm,{dir:o.direction,className:"fui-loader",speed:r,
3949
- size:n})},Cm=(e,t)=>{const n={};return e.forEach((e=>{
3950
- e?.[t]&&(n?.[e[t]]||(n[e[t]]=e))})),Object.keys(n).map((e=>n[e]))},zm={large:{
3949
+ size:n})},Cm=(e,t)=>{const n={},r=[];return e.forEach((e=>{
3950
+ e?.[t]&&(n?.[e[t]]||(n[e[t]]=e,r.push(e[t])))})),r.map((e=>n[e]))},zm={large:{
3951
3951
  height:"45px",size:"16px"},mini:{height:"24px",size:"12px"},normal:{
3952
3952
  height:"32px",size:"14px"}},Mm=yr.button`
3953
3953
  direction: ${({theme:e})=>e.direction};
@@ -6897,9 +6897,9 @@ console.info("Finished '".concat(e,"' in ").concat(o,"ms"))),[2]}var i}))}))}
6897
6897
  function vz(e){return Ce(this,void 0,void 0,(function(){var t,n
6898
6898
  ;return ze(this,(function(r){switch(r.label){case 0:
6899
6899
  return t=e.loader,"function"!=typeof(n=void 0===t?yz.defaultLoader:t)?[3,1]:[2,n]
6900
- ;case 1:return"all"!==n?[3,3]:[4,Promise.resolve().then((function(){return hG
6900
+ ;case 1:return"all"!==n?[3,3]:[4,Promise.resolve().then((function(){return pG
6901
6901
  }))];case 2:return[2,r.sent().allPathsLoader];case 3:
6902
- return[4,Promise.resolve().then((function(){return fG}))];case 4:
6902
+ return[4,Promise.resolve().then((function(){return mG}))];case 4:
6903
6903
  return[2,r.sent().splitPathsBySizeLoader]}}))}))}var gz=function(){function e(){
6904
6904
  this.defaultLoader="split-by-size",
6905
6905
  this.loadedIconPaths16=new Map,this.loadedIconPaths20=new Map}
@@ -12768,11 +12768,7 @@ UN.log&&console.log(`${jN}:${e}`,t)},WN=yr.div`
12768
12768
  display: flex;
12769
12769
  align-items: center;
12770
12770
  button {
12771
- background: linear-gradient(
12772
- 180deg,
12773
- ${({theme:e})=>e.colors.fill.surface} 2.56%,
12774
- ${({theme:e})=>e.colors.fill.hover} 95.75%
12775
- );
12771
+ background: ${({theme:e})=>"light"===e.mode?`\n linear-gradient(\n 180deg,\n ${e.colors.fill.surface} 2.56%,\n ${e.colors.fill.hover} 95.75%\n )`:"inherit"};
12776
12772
  outline: none;
12777
12773
  }
12778
12774
  button.bp5-datepicker-month-select {
@@ -16675,7 +16671,46 @@ present:r||i.open},e.createElement(Ih,{asChild:!0,container:a},o)))
16675
16671
  }
16676
16672
  `,lG=yr(eG)``,cG=yr(tG)``,sG=yr(nG)`
16677
16673
  color: inherit;
16678
- `,uG=yr(rG)``;var dG=wr`
16674
+ `,uG=yr(rG)``,dG=yr.div`
16675
+ display: flex;
16676
+ flex-wrap: wrap;
16677
+ flex-direction: ${({theme:e})=>"rtl"===e.direction?"row-reverse":"row"};
16678
+ gap: 10px;
16679
+ margin: 0;
16680
+ padding: 0;
16681
+ `,hG=yr.button`
16682
+ font-family: ${({theme:e})=>e.typography.fontFamily};
16683
+ font-size: ${({theme:e})=>e.typography.primary.fontSize};
16684
+ font-weight: ${({theme:e})=>e.typography.primary.fontWeight};
16685
+ color: ${({$isSelected:e,theme:t})=>e?t.colors.text.inverse:t.colors.text.primary};
16686
+ background-color: ${({theme:e,$isSelected:t,disabled:n})=>t?n?e.colors.border.disabled:e.colors.common.accent:e.colors.fill.surface};
16687
+ border: 1px solid
16688
+ ${({theme:e,disabled:t,$isSelected:n})=>t?e.components.button.secondary.disabledBorderColor:n?e.colors.border.active:e.colors.border.normal};
16689
+ color: ${({disabled:e,theme:t})=>e?t.colors.fill.dark:""};
16690
+ pointer-events: ${({disabled:e})=>e?"none":""};
16691
+ min-width: 40px;
16692
+ height: 40px;
16693
+ display: flex;
16694
+ justify-content: center;
16695
+ align-items: center;
16696
+ border-radius: 4px;
16697
+ user-select: none;
16698
+ transition:
16699
+ background-color,
16700
+ color 0.2s ease-in-out;
16701
+ cursor: pointer;
16702
+ &:hover,
16703
+ &:focus {
16704
+ border-color: ${({theme:e})=>e.colors.border.hover};
16705
+ box-shadow: 0 0 0 3px
16706
+ ${({$isSelected:e,theme:t})=>e?t.colors.border.hover:""}40;
16707
+ }
16708
+ &[disabled] {
16709
+ outline: unset;
16710
+ box-shadow: none;
16711
+ border-color: ${({theme:e})=>e.components.button.secondary.disabledBorderColor};
16712
+ }
16713
+ `;var fG=wr`
16679
16714
 
16680
16715
  div:has( > div[data-tooltip-content]){
16681
16716
  z-index: ${({theme:e})=>e.zIndex.tooltip||Eo.tooltip} !important;
@@ -16685,10 +16720,10 @@ div:has( > div[data-popover-content]){
16685
16720
  z-index: ${({theme:e})=>e.zIndex.popover||Eo.popover} !important;
16686
16721
  }
16687
16722
 
16688
- `,hG=Object.freeze({__proto__:null,allPathsLoader:function(e,t){
16723
+ `,pG=Object.freeze({__proto__:null,allPathsLoader:function(e,t){
16689
16724
  return Ce(void 0,void 0,void 0,(function(){return ze(this,(function(n){
16690
16725
  switch(n.label){case 0:return[4,Promise.resolve().then((function(){return lz}))]
16691
- ;case 1:return[2,(0,n.sent().getIconPaths)(e,t)]}}))}))}}),fG=Object.freeze({
16726
+ ;case 1:return[2,(0,n.sent().getIconPaths)(e,t)]}}))}))}}),mG=Object.freeze({
16692
16727
  __proto__:null,splitPathsBySizeLoader:function(e,t){
16693
16728
  return Ce(void 0,void 0,void 0,(function(){var n,r;return ze(this,(function(o){
16694
16729
  switch(o.label){case 0:
@@ -16716,36 +16751,35 @@ fill:f.colors.text.semantic[r]
16716
16751
  onClick:()=>{v(!1),t?.()}},e.createElement(ro,{fill:f.colors.text.primary
16717
16752
  }))):null
16718
16753
  },exports.AutoComplete=({initialItems:t=[],disabled:n,id:r,label:o,errorText:a,name:i,placeholder:l,width:c,onChange:s,itemComponent:u,itemToString:d,searchKey:h="q",defaultSelectedItem:f,readOnly:p,itemIdentifier:m="id",isErrored:v,emptyItemsText:g,processFetchData:y,isRequired:b,style:w,url:C,headers:z})=>{
16719
- const M=cr(),[x,E]=e.useState(!1),S=e.useRef(t),[_,H]=e.useState(t),D=(e="")=>{
16720
- if(!C)return;const t=new URL(C),n=new URLSearchParams(t.search);n.append(h,e)
16721
- ;const r=`${t.origin}${t.pathname}?${n.toString()}`;E(!0),(async(e,t,n,r,o,a)=>{
16754
+ const M=cr(),[x,E]=e.useState(!1),S=e.useRef(),[_,H]=e.useState(t),D=(e="")=>{
16755
+ if(!C)return;const n=new URL(C),r=new URLSearchParams(n.search);r.append(h,e)
16756
+ ;const o=`${n.origin}${n.pathname}?${r.toString()}`;E(!0),(async(e,t,n,r,o,a)=>{
16722
16757
  try{const i=await Su({data:t,url:e,method:n||"get",withCredentials:o||!1,
16723
16758
  responseType:a,headers:{"Content-Type":"application/json",...r||{}}})
16724
- ;return i?.data}catch(e){return}})(r,void 0,"GET",z).then((e=>{
16725
- Array.isArray(e)&&H(Cm([...S.current??[],...y?y(e):e],m)),E(!1)})).catch((e=>{
16726
- E(!1)}))},A=e.useCallback(bc((e=>{D(e)
16727
- }),300),[]),{isOpen:L,selectedItem:V,getToggleButtonProps:k,getLabelProps:T,getMenuProps:R,highlightedIndex:P,selectItem:I,setInputValue:O,getItemProps:N,getInputProps:F}=Hl({
16759
+ ;return i?.data}catch(e){return}})(o,void 0,"GET",z).then((n=>{
16760
+ Array.isArray(n)&&H(Cm([...""===e?[f]:[],...""===e?S.current??[]:[],...y?y(n):n,...""===e?t:[]],m)),
16761
+ E(!1)})).catch((()=>{E(!1)}))},A=e.useCallback(bc((e=>{D(e)
16762
+ }),300),[]),{isOpen:L,selectedItem:V,getToggleButtonProps:k,getLabelProps:T,getMenuProps:R,highlightedIndex:P,setInputValue:I,getItemProps:O,getInputProps:N}=Hl({
16728
16763
  id:r,selectedItem:f,items:_,onIsOpenChange:e=>{
16729
- !e.isOpen&&e?.selectedItem&&O(d(e.selectedItem))},onInputValueChange:e=>{
16730
- "__input_change__"===e.type&&""===e.inputValue&&I(null),
16764
+ !e.isOpen&&e?.selectedItem&&I(d(e.selectedItem))},onInputValueChange:e=>{
16731
16765
  V?.[m]&&e.inputValue===d(V)?A(""):A(e.inputValue)},
16732
16766
  itemToString:e=>e?d(e,"downshift"):"",onSelectedItemChange:e=>{
16733
- S.current=Cm([...S.current??[],e.selectedItem],m),s?.(e.selectedItem)}})
16734
- ;e.useEffect((()=>{D("")}),[C]);const $=!n&&!p&&L;return e.createElement(Op,{
16767
+ S.current=Cm([e.selectedItem,...S.current??[]],m),s?.(e.selectedItem)}})
16768
+ ;e.useEffect((()=>{D("")}),[C]);const F=!n&&!p&&L;return e.createElement(Op,{
16735
16769
  width:c},e.createElement(Do,{className:"input-label",...T({disabled:n,readOnly:p
16736
- })},o,o&&b&&e.createElement(Lo,null,"*")),e.createElement(pm,{...F({name:i,
16770
+ })},o,o&&b&&e.createElement(Lo,null,"*")),e.createElement(pm,{...N({name:i,
16737
16771
  readOnly:p,disabled:n}),placeholder:l,
16738
16772
  endAdornment:e.createElement(Up,null,e.createElement(Vo,{...k({disabled:n,
16739
- readOnly:p,"aria-label":"toggle-button"})},e.createElement(Ip,{$isOpen:$,
16773
+ readOnly:p,"aria-label":"toggle-button"})},e.createElement(Ip,{$isOpen:F,
16740
16774
  fill:M.colors.text.primary,width:8,height:8}))),style:w
16741
16775
  }),!p&&!n&&e.createElement(Fp,{className:"ItemsContainer",$isOpen:L,...R({
16742
16776
  disabled:n,readOnly:p})
16743
16777
  },x?e.createElement(jp,null,e.createElement(wm,null)):e.createElement(e.Fragment,null,L&&0===_.length&&e.createElement($p,{
16744
16778
  readOnly:!0},g||"No items"),L&&_.map(((t,n)=>{
16745
16779
  const r="string"==typeof t?t:t?.[m];return e.createElement(e.Fragment,{key:r
16746
- },u?u(t,{isHilighted:P===n,isSelected:V===t,key:r,...N({item:t,index:n})
16780
+ },u?u(t,{isHilighted:P===n,isSelected:V===t,key:r,...O({item:t,index:n})
16747
16781
  }):e.createElement($p,{$isHilighted:P===n,$isSelected:V?.[m]===t?.[m],key:r,
16748
- ...N({item:t,index:n})},d(t),V?.[m]===t?.[m]&&e.createElement(so,{
16782
+ ...O({item:t,index:n})},d(t),V?.[m]===t?.[m]&&e.createElement(so,{
16749
16783
  fill:M.colors.common.accent})))})))),v&&a&&e.createElement(lm,null,a))
16750
16784
  },exports.BoxedRadio=({options:t,defaultValue:n,idAccessor:r="id",onChange:o,isErrored:a,errorText:i,disabled:l=!1,getTextContent:c,className:s,id:u,isRequired:d,readOnly:h,itemComponent:f,label:p,value:m,customIndicator:v,...g})=>e.createElement(Mg,{
16751
16785
  className:"StyledBoxedRadio"},p&&e.createElement(Do,{htmlFor:u,
@@ -16782,10 +16816,19 @@ avoidCollisions:m,className:"DropdownMenuContent"
16782
16816
  },(s?.filter((e=>e?.[i]!==a?.[i]))??[]).map((t=>e.createElement(Xv,{id:t?.[i],
16783
16817
  disabled:t?.disabled,className:"DropdownMenuItem",key:t?.[i],onSelect:()=>c?.(t)
16784
16818
  },t?.[l])))))))
16785
- },exports.CardActions=Ro,exports.CardContent=To,exports.CardDescription=Io,
16786
- exports.CardText=Oo,
16787
- exports.CardTitle=Po,exports.Checkbox=Yg,exports.Checkmark=to,
16788
- exports.ChevronUp=no,
16819
+ },exports.Calendar=({value:t={},items:n,onChange:r,idAccessor:o="id",nameAccessor:a="name",disabled:i})=>{
16820
+ const l=e=>{if(i)return;const n={...t};n[e]=!n[e],r?.(n)}
16821
+ ;return e.createElement(dG,{role:"group"},n.map(((n,r)=>e.createElement(hG,{
16822
+ key:r,id:n?.[o],"aria-label":n?.[a],value:n?.[o],tabIndex:0,type:"button",
16823
+ "aria-disabled":!!n?.disabled||i,disabled:!!n?.disabled||i,
16824
+ "aria-pressed":!!t?.[n?.[o]],$isSelected:!!t?.[n?.[o]],onKeyDown:e=>{
16825
+ console.log("onKeyDown",{event:e,key:e.key
16826
+ })," "!==e.key&&"Enter"!==e.key||(l(n?.[o]),e.preventDefault())},
16827
+ onClick:()=>l(n?.[o])},n?.[a]))))
16828
+ },exports.CardActions=Ro,exports.CardContent=To,
16829
+ exports.CardDescription=Io,exports.CardText=Oo,
16830
+ exports.CardTitle=Po,exports.Checkbox=Yg,
16831
+ exports.Checkmark=to,exports.ChevronUp=no,
16789
16832
  exports.Confirmation=({isOpen:t,title:n,description:r,onConfirm:o,onDismiss:a,cancelButtonText:i,children:l,cancelButtonDisabled:c,confirmButtonDisabled:s,confirmButtonText:u,clickOutToClose:d=!1,bodyStyles:h,contentStyles:f,footerStyles:p,width:m="520px"})=>{
16790
16833
  const v=cr();return e.createElement(By,{open:t,onOpenChange:e=>{e||a?.("root")}
16791
16834
  },e.createElement(jy,null,e.createElement(Wy,{forceMount:!0,style:h,
@@ -16818,7 +16861,7 @@ fill:u.colors.text.inverse}))),n)))
16818
16861
  },exports.Dropdown=ab,exports.DropdownInputItem=$p,
16819
16862
  exports.DropdownItem=cb,exports.DropdownMenuItem=Xv,
16820
16863
  exports.ErrorIcon=oo,exports.Freddy=ao,
16821
- exports.FreemiumUIGlobalStyles=dG,exports.FreshLink=ko,
16864
+ exports.FreemiumUIGlobalStyles=fG,exports.FreshLink=ko,
16822
16865
  exports.IconButton=Vo,exports.InfoIcon=io,
16823
16866
  exports.Input=pm,exports.InputLabel=Ao,
16824
16867
  exports.Loader=wm,exports.Menu=sb,exports.Minus=lo,
package/lib/index.d.ts CHANGED
@@ -1853,6 +1853,22 @@ interface WorkspaceTableProps<T extends WorkspaceRowDataType> {
1853
1853
  */
1854
1854
  declare const WorkspaceTable: <T extends WorkspaceRowDataType = WorkspaceRowDataType>(props: WorkspaceTableProps<T>) => react__default.JSX.Element;
1855
1855
 
1856
+ interface DayProps {
1857
+ $isSelected?: boolean;
1858
+ id?: string;
1859
+ value?: string;
1860
+ disabled?: boolean;
1861
+ }
1862
+ interface CalendarProps extends DefaultMenuItemProps {
1863
+ value?: Record<string, boolean>;
1864
+ items: DefaultMenuItemProps[];
1865
+ onChange?: (value: Record<string, boolean>) => void;
1866
+ idAccessor?: string;
1867
+ nameAccessor?: string;
1868
+ }
1869
+
1870
+ declare const Calendar: react__default.FC<CalendarProps>;
1871
+
1856
1872
  type FreshworksPalette = {
1857
1873
  primary: {
1858
1874
  elephant: string;
@@ -1990,4 +2006,4 @@ declare namespace index_d {
1990
2006
  export { index_d_Z_INDEX as Z_INDEX, index_d_dark as dark, index_d_hextoRGB as hextoRGB, index_d_light as light };
1991
2007
  }
1992
2008
 
1993
- export { Accordion, type AccordionItemProps, type AccordionProps, Alert, type AlertProps, AutoComplete, type AutoCompleteInputItemProps, type AutoCompleteProps, BoxedRadio, type BoxedRadioItemProps, type BoxedRadioProps, Button, ButtonDropdown, type ButtonDropdownItemProps, type ButtonDropdownProps, type ButtonProps, type ButtonSizeKey, type ButtonVariant, CardActions, CardContent, CardDescription, CardText, CardTitle, Checkbox, type CheckboxProps, Checkmark, ChevronUp, Confirmation, type ConfirmationProps, Cross as CrossIcon, DatePicker, type DatePickerProps, DateRangePicker, type DateRangePickerProps, DateTimePicker, type DateTimePickerProps, DateTimeRangePicker, type DateTimeRangePickerProps, type DefaultAutoCompleteItem, type DefaultDropdownItem, type DefaultMultiSelectDropdownItem, type DefaultProps, Drawer, type DrawerPlacement, type DrawerProps, type DrawerSizeType, Dropdown, type DropdownButtonProps, ListItem as DropdownInputItem, type DropdownInputItemProps, type DropdownInputProps, Item as DropdownItem, type DropdownItemProps, DropdownMenuItem, type DropdownProps, type DropdownTypes, ErrorIcon, Freddy, _default as FreemiumUIGlobalStyles, type FreemiumUiTheme, FreshLink, type FreshworksPalette, type FuiContextType, IconButton, InfoIcon, Input, InputLabel, type InputProps, type LevelType, Loader, type LoaderPropTypes, type LoaderSizes, type LoaderSpeeds, Menu, type MenuItemProps, type MenuProps, Minus, Modal, type ModalAlignType, type ModalCssType, type ModalPositionType, type ModalProps, type ModalSizeType, MoreVertical, MultiSelectDropdown, type MultiSelectDropdownProps, type Origin, Popover, PopoverClose, type PopoverProps, PopoverTrigger, Radio, RadioGroup, type RadioGroupProps, type RadioItemProps, type RadioProps, Reorder, type ReorderItemType, type ReorderProps, RequiredIndicator, type RowDataType, SortDropdown, StyledLabel, type StyledListItemType, Table, type TableProps, Tabs, TabsContent, type TabsItemProps, TabsList, type TabsProps, TabsRoot, TabsTrigger, Tag, type TagProps, TextArea, type TextAreaProps, ThemeProvider, type ThemeProviderType, index_d as Themes, TickIcon, TimePicker, type TimePickerProps, type ToastContextType, type ToastItemProps, ToastProvider, type ToastType, type ToastTypes, type ToastWithID, Toggle, type ToggleProps, type ToggleSizes, Tooltip, type TooltipAlign, type TooltipPosition, type TooltipProps, type TooltipSide, TriggerButtonWrapper, Typography, type TypographyProps, type TypographyVariantType, type TypographyWeightType, type UpdateToastsFunction, Warning, type WorkspaceRowDataType, WorkspaceTable, type WorkspaceTableProps, dialogContentMixin, dialogOverlayMixin, useToasts };
2009
+ export { Accordion, type AccordionItemProps, type AccordionProps, Alert, type AlertProps, AutoComplete, type AutoCompleteInputItemProps, type AutoCompleteProps, BoxedRadio, type BoxedRadioItemProps, type BoxedRadioProps, Button, ButtonDropdown, type ButtonDropdownItemProps, type ButtonDropdownProps, type ButtonProps, type ButtonSizeKey, type ButtonVariant, Calendar, type CalendarProps, CardActions, CardContent, CardDescription, CardText, CardTitle, Checkbox, type CheckboxProps, Checkmark, ChevronUp, Confirmation, type ConfirmationProps, Cross as CrossIcon, DatePicker, type DatePickerProps, DateRangePicker, type DateRangePickerProps, DateTimePicker, type DateTimePickerProps, DateTimeRangePicker, type DateTimeRangePickerProps, type DayProps, type DefaultAutoCompleteItem, type DefaultDropdownItem, type DefaultMultiSelectDropdownItem, type DefaultProps, Drawer, type DrawerPlacement, type DrawerProps, type DrawerSizeType, Dropdown, type DropdownButtonProps, ListItem as DropdownInputItem, type DropdownInputItemProps, type DropdownInputProps, Item as DropdownItem, type DropdownItemProps, DropdownMenuItem, type DropdownProps, type DropdownTypes, ErrorIcon, Freddy, _default as FreemiumUIGlobalStyles, type FreemiumUiTheme, FreshLink, type FreshworksPalette, type FuiContextType, IconButton, InfoIcon, Input, InputLabel, type InputProps, type LevelType, Loader, type LoaderPropTypes, type LoaderSizes, type LoaderSpeeds, Menu, type MenuItemProps, type MenuProps, Minus, Modal, type ModalAlignType, type ModalCssType, type ModalPositionType, type ModalProps, type ModalSizeType, MoreVertical, MultiSelectDropdown, type MultiSelectDropdownProps, type Origin, Popover, PopoverClose, type PopoverProps, PopoverTrigger, Radio, RadioGroup, type RadioGroupProps, type RadioItemProps, type RadioProps, Reorder, type ReorderItemType, type ReorderProps, RequiredIndicator, type RowDataType, SortDropdown, StyledLabel, type StyledListItemType, Table, type TableProps, Tabs, TabsContent, type TabsItemProps, TabsList, type TabsProps, TabsRoot, TabsTrigger, Tag, type TagProps, TextArea, type TextAreaProps, ThemeProvider, type ThemeProviderType, index_d as Themes, TickIcon, TimePicker, type TimePickerProps, type ToastContextType, type ToastItemProps, ToastProvider, type ToastType, type ToastTypes, type ToastWithID, Toggle, type ToggleProps, type ToggleSizes, Tooltip, type TooltipAlign, type TooltipPosition, type TooltipProps, type TooltipSide, TriggerButtonWrapper, Typography, type TypographyProps, type TypographyVariantType, type TypographyWeightType, type UpdateToastsFunction, Warning, type WorkspaceRowDataType, WorkspaceTable, type WorkspaceTableProps, dialogContentMixin, dialogOverlayMixin, useToasts };
package/lib/index.js CHANGED
@@ -3907,39 +3907,38 @@ className:"end-adornment"},i)),a&&t.createElement("div",{className:"end-label"
3907
3907
  animation: ${mo} ${({speed:e})=>Nm[e]}s linear infinite;
3908
3908
  `,Bm=e=>{const{size:n="medium",speed:r="medium"}=e,o=Hr()
3909
3909
  ;return t.createElement($m,{dir:o.direction,className:"fui-loader",speed:r,
3910
- size:n})},jm=(e,t)=>{const n={};return e.forEach((e=>{
3911
- e?.[t]&&(n?.[e[t]]||(n[e[t]]=e))})),Object.keys(n).map((e=>n[e]))
3910
+ size:n})},jm=(e,t)=>{const n={},r=[];return e.forEach((e=>{
3911
+ e?.[t]&&(n?.[e[t]]||(n[e[t]]=e,r.push(e[t])))})),r.map((e=>n[e]))
3912
3912
  },Um=({initialItems:e=[],disabled:n,id:r,label:o,errorText:a,name:i,placeholder:l,width:c,onChange:s,itemComponent:u,itemToString:d,searchKey:h="q",defaultSelectedItem:p,readOnly:f,itemIdentifier:m="id",isErrored:v,emptyItemsText:g,processFetchData:y,isRequired:b,style:w,url:C,headers:z})=>{
3913
- const M=Hr(),[x,E]=t.useState(!1),S=t.useRef(e),[_,H]=t.useState(e),D=(e="")=>{
3914
- if(!C)return;const t=new URL(C),n=new URLSearchParams(t.search);n.append(h,e)
3915
- ;const r=`${t.origin}${t.pathname}?${n.toString()}`;E(!0),(async(e,t,n,r,o,a)=>{
3913
+ const M=Hr(),[x,E]=t.useState(!1),S=t.useRef(),[_,H]=t.useState(e),D=(t="")=>{
3914
+ if(!C)return;const n=new URL(C),r=new URLSearchParams(n.search);r.append(h,t)
3915
+ ;const o=`${n.origin}${n.pathname}?${r.toString()}`;E(!0),(async(e,t,n,r,o,a)=>{
3916
3916
  try{const i=await Ku({data:t,url:e,method:n||"get",withCredentials:o||!1,
3917
3917
  responseType:a,headers:{"Content-Type":"application/json",...r||{}}})
3918
- ;return i?.data}catch(e){return}})(r,void 0,"GET",z).then((e=>{
3919
- Array.isArray(e)&&H(jm([...S.current??[],...y?y(e):e],m)),E(!1)})).catch((e=>{
3920
- E(!1)}))},A=t.useCallback($c((e=>{D(e)
3921
- }),300),[]),{isOpen:L,selectedItem:V,getToggleButtonProps:k,getLabelProps:T,getMenuProps:P,highlightedIndex:I,selectItem:R,setInputValue:O,getItemProps:N,getInputProps:F}=Zl({
3918
+ ;return i?.data}catch(e){return}})(o,void 0,"GET",z).then((n=>{
3919
+ Array.isArray(n)&&H(jm([...""===t?[p]:[],...""===t?S.current??[]:[],...y?y(n):n,...""===t?e:[]],m)),
3920
+ E(!1)})).catch((()=>{E(!1)}))},A=t.useCallback($c((e=>{D(e)
3921
+ }),300),[]),{isOpen:L,selectedItem:V,getToggleButtonProps:k,getLabelProps:T,getMenuProps:P,highlightedIndex:I,setInputValue:R,getItemProps:O,getInputProps:N}=Zl({
3922
3922
  id:r,selectedItem:p,items:_,onIsOpenChange:e=>{
3923
- !e.isOpen&&e?.selectedItem&&O(d(e.selectedItem))},onInputValueChange:e=>{
3924
- "__input_change__"===e.type&&""===e.inputValue&&R(null),
3923
+ !e.isOpen&&e?.selectedItem&&R(d(e.selectedItem))},onInputValueChange:e=>{
3925
3924
  V?.[m]&&e.inputValue===d(V)?A(""):A(e.inputValue)},
3926
3925
  itemToString:e=>e?d(e,"downshift"):"",onSelectedItemChange:e=>{
3927
- S.current=jm([...S.current??[],e.selectedItem],m),s?.(e.selectedItem)}})
3928
- ;t.useEffect((()=>{D("")}),[C]);const $=!n&&!f&&L;return t.createElement(im,{
3926
+ S.current=jm([e.selectedItem,...S.current??[]],m),s?.(e.selectedItem)}})
3927
+ ;t.useEffect((()=>{D("")}),[C]);const F=!n&&!f&&L;return t.createElement(im,{
3929
3928
  width:c},t.createElement(Zo,{className:"input-label",...T({disabled:n,readOnly:f
3930
- })},o,o&&b&&t.createElement(Jo,null,"*")),t.createElement(Im,{...F({name:i,
3929
+ })},o,o&&b&&t.createElement(Jo,null,"*")),t.createElement(Im,{...N({name:i,
3931
3930
  readOnly:f,disabled:n}),placeholder:l,
3932
3931
  endAdornment:t.createElement(hm,null,t.createElement(Qo,{...k({disabled:n,
3933
- readOnly:f,"aria-label":"toggle-button"})},t.createElement(am,{$isOpen:$,
3932
+ readOnly:f,"aria-label":"toggle-button"})},t.createElement(am,{$isOpen:F,
3934
3933
  fill:M.colors.text.primary,width:8,height:8}))),style:w
3935
3934
  }),!f&&!n&&t.createElement(cm,{className:"ItemsContainer",$isOpen:L,...P({
3936
3935
  disabled:n,readOnly:f})
3937
3936
  },x?t.createElement(dm,null,t.createElement(Bm,null)):t.createElement(t.Fragment,null,L&&0===_.length&&t.createElement(sm,{
3938
3937
  readOnly:!0},g||"No items"),L&&_.map(((e,n)=>{
3939
3938
  const r="string"==typeof e?e:e?.[m];return t.createElement(t.Fragment,{key:r
3940
- },u?u(e,{isHilighted:I===n,isSelected:V===e,key:r,...N({item:e,index:n})
3939
+ },u?u(e,{isHilighted:I===n,isSelected:V===e,key:r,...O({item:e,index:n})
3941
3940
  }):t.createElement(sm,{$isHilighted:I===n,$isSelected:V?.[m]===e?.[m],key:r,
3942
- ...N({item:e,index:n})},d(e),V?.[m]===e?.[m]&&t.createElement(Ao,{
3941
+ ...O({item:e,index:n})},d(e),V?.[m]===e?.[m]&&t.createElement(Ao,{
3943
3942
  fill:M.colors.common.accent})))})))),v&&a&&t.createElement(Dm,null,a))},Ym={
3944
3943
  large:{height:"45px",size:"16px"},mini:{height:"24px",size:"12px"},normal:{
3945
3944
  height:"32px",size:"14px"}},Wm=Or.button`
@@ -6971,9 +6970,9 @@ console.info("Finished '".concat(e,"' in ").concat(o,"ms"))),[2]}var i}))}))}
6971
6970
  function Yz(e){return $e(this,void 0,void 0,(function(){var t,n
6972
6971
  ;return Be(this,(function(r){switch(r.label){case 0:
6973
6972
  return t=e.loader,"function"!=typeof(n=void 0===t?Gz.defaultLoader:t)?[3,1]:[2,n]
6974
- ;case 1:return"all"!==n?[3,3]:[4,Promise.resolve().then((function(){return JG
6973
+ ;case 1:return"all"!==n?[3,3]:[4,Promise.resolve().then((function(){return tK
6975
6974
  }))];case 2:return[2,r.sent().allPathsLoader];case 3:
6976
- return[4,Promise.resolve().then((function(){return QG}))];case 4:
6975
+ return[4,Promise.resolve().then((function(){return nK}))];case 4:
6977
6976
  return[2,r.sent().splitPathsBySizeLoader]}}))}))}var Wz=function(){function e(){
6978
6977
  this.defaultLoader="split-by-size",
6979
6978
  this.loadedIconPaths16=new Map,this.loadedIconPaths20=new Map}
@@ -12838,11 +12837,7 @@ bF.log&&console.log(`${yF}:${e}`,t)},CF=Or.div`
12838
12837
  display: flex;
12839
12838
  align-items: center;
12840
12839
  button {
12841
- background: linear-gradient(
12842
- 180deg,
12843
- ${({theme:e})=>e.colors.fill.surface} 2.56%,
12844
- ${({theme:e})=>e.colors.fill.hover} 95.75%
12845
- );
12840
+ background: ${({theme:e})=>"light"===e.mode?`\n linear-gradient(\n 180deg,\n ${e.colors.fill.surface} 2.56%,\n ${e.colors.fill.hover} 95.75%\n )`:"inherit"};
12846
12841
  outline: none;
12847
12842
  }
12848
12843
  button.bp5-datepicker-month-select {
@@ -16953,7 +16948,54 @@ onClick:()=>{de?.(Math.ceil(n.length/ge)-1)},disabled:i||l
16953
16948
  },Math.ceil(n.length/ge))),t.createElement(Gm,{variant:"secondary",onClick:()=>{
16954
16949
  he()},disabled:!le()||i||l},">"),t.createElement(Gm,{variant:"secondary",
16955
16950
  onClick:()=>{pe()},disabled:!le()||i||l
16956
- },">>"))))))))),!f&&Z&&d&&t.createElement(uY,null,d)))};var XG=Fr`
16951
+ },">>"))))))))),!f&&Z&&d&&t.createElement(uY,null,d)))},XG=Or.div`
16952
+ display: flex;
16953
+ flex-wrap: wrap;
16954
+ flex-direction: ${({theme:e})=>"rtl"===e.direction?"row-reverse":"row"};
16955
+ gap: 10px;
16956
+ margin: 0;
16957
+ padding: 0;
16958
+ `,JG=Or.button`
16959
+ font-family: ${({theme:e})=>e.typography.fontFamily};
16960
+ font-size: ${({theme:e})=>e.typography.primary.fontSize};
16961
+ font-weight: ${({theme:e})=>e.typography.primary.fontWeight};
16962
+ color: ${({$isSelected:e,theme:t})=>e?t.colors.text.inverse:t.colors.text.primary};
16963
+ background-color: ${({theme:e,$isSelected:t,disabled:n})=>t?n?e.colors.border.disabled:e.colors.common.accent:e.colors.fill.surface};
16964
+ border: 1px solid
16965
+ ${({theme:e,disabled:t,$isSelected:n})=>t?e.components.button.secondary.disabledBorderColor:n?e.colors.border.active:e.colors.border.normal};
16966
+ color: ${({disabled:e,theme:t})=>e?t.colors.fill.dark:""};
16967
+ pointer-events: ${({disabled:e})=>e?"none":""};
16968
+ min-width: 40px;
16969
+ height: 40px;
16970
+ display: flex;
16971
+ justify-content: center;
16972
+ align-items: center;
16973
+ border-radius: 4px;
16974
+ user-select: none;
16975
+ transition:
16976
+ background-color,
16977
+ color 0.2s ease-in-out;
16978
+ cursor: pointer;
16979
+ &:hover,
16980
+ &:focus {
16981
+ border-color: ${({theme:e})=>e.colors.border.hover};
16982
+ box-shadow: 0 0 0 3px
16983
+ ${({$isSelected:e,theme:t})=>e?t.colors.border.hover:""}40;
16984
+ }
16985
+ &[disabled] {
16986
+ outline: unset;
16987
+ box-shadow: none;
16988
+ border-color: ${({theme:e})=>e.components.button.secondary.disabledBorderColor};
16989
+ }
16990
+ `,QG=({value:e={},items:n,onChange:r,idAccessor:o="id",nameAccessor:a="name",disabled:i})=>{
16991
+ const l=t=>{if(i)return;const n={...e};n[t]=!n[t],r?.(n)}
16992
+ ;return t.createElement(XG,{role:"group"},n.map(((n,r)=>t.createElement(JG,{
16993
+ key:r,id:n?.[o],"aria-label":n?.[a],value:n?.[o],tabIndex:0,type:"button",
16994
+ "aria-disabled":!!n?.disabled||i,disabled:!!n?.disabled||i,
16995
+ "aria-pressed":!!e?.[n?.[o]],$isSelected:!!e?.[n?.[o]],onKeyDown:e=>{
16996
+ console.log("onKeyDown",{event:e,key:e.key
16997
+ })," "!==e.key&&"Enter"!==e.key||(l(n?.[o]),e.preventDefault())},
16998
+ onClick:()=>l(n?.[o])},n?.[a]))))};var eK=Fr`
16957
16999
 
16958
17000
  div:has( > div[data-tooltip-content]){
16959
17001
  z-index: ${({theme:e})=>e.zIndex.tooltip||Wo.tooltip} !important;
@@ -16963,10 +17005,10 @@ div:has( > div[data-popover-content]){
16963
17005
  z-index: ${({theme:e})=>e.zIndex.popover||Wo.popover} !important;
16964
17006
  }
16965
17007
 
16966
- `,JG=Object.freeze({__proto__:null,allPathsLoader:function(e,t){
17008
+ `,tK=Object.freeze({__proto__:null,allPathsLoader:function(e,t){
16967
17009
  return $e(void 0,void 0,void 0,(function(){return Be(this,(function(n){
16968
17010
  switch(n.label){case 0:return[4,Promise.resolve().then((function(){return Iz}))]
16969
- ;case 1:return[2,(0,n.sent().getIconPaths)(e,t)]}}))}))}}),QG=Object.freeze({
17011
+ ;case 1:return[2,(0,n.sent().getIconPaths)(e,t)]}}))}))}}),nK=Object.freeze({
16970
17012
  __proto__:null,splitPathsBySizeLoader:function(e,t){
16971
17013
  return $e(void 0,void 0,void 0,(function(){var n,r;return Be(this,(function(o){
16972
17014
  switch(o.label){case 0:
@@ -16974,4 +17016,4 @@ return n=_z(e),t!==Dz.STANDARD?[3,2]:[4,Promise.resolve().then((function(){
16974
17016
  return Lz}))];case 1:return r=o.sent(),[3,4];case 2:
16975
17017
  return[4,Promise.resolve().then((function(){return kz}))];case 3:
16976
17018
  r=o.sent(),o.label=4;case 4:return[2,r[n]]}}))}))}})
16977
- ;export{Ro as Accordion,fa as Alert,Um as AutoComplete,ny as BoxedRadio,Gm as Button,Eg as ButtonDropdown,na as CardActions,ta as CardContent,oa as CardDescription,aa as CardText,ra as CardTitle,vy as Checkbox,zo as Checkmark,Mo as ChevronUp,zb as Confirmation,xo as CrossIcon,DF as DatePicker,LF as DateRangePicker,AF as DateTimePicker,VF as DateTimeRangePicker,Lb as Drawer,Vb as Dropdown,sm as DropdownInputItem,Pb as DropdownItem,wg as DropdownMenuItem,Eo as ErrorIcon,So as Freddy,XG as FreemiumUIGlobalStyles,ea as FreshLink,Qo as IconButton,_o as InfoIcon,Im as Input,Xo as InputLabel,Bm as Loader,Ib as Menu,Ho as Minus,Ub as Modal,Do as MoreVertical,iw as MultiSelectDropdown,c$ as Popover,l$ as PopoverClose,a$ as PopoverTrigger,f$ as Radio,m$ as RadioGroup,hg as RadixMenuItem,em as RadixSelectItem,nU as Reorder,Jo as RequiredIndicator,NY as SortDropdown,Zo as StyledLabel,FY as Table,rW as Tabs,eW as TabsContent,tW as TabsList,QY as TabsRoot,nW as TabsTrigger,aw as Tag,Rm as TextArea,tG as ThemeProvider,qo as Themes,Ao as TickIcon,TF as TimePicker,QW as ToastProvider,vG as Toggle,qG as Tooltip,ia as TriggerButtonWrapper,ha as Typography,Lo as Warning,ZG as WorkspaceTable,ca as dialogContentMixin,la as dialogOverlayMixin,eG as useToasts};
17019
+ ;export{Ro as Accordion,fa as Alert,Um as AutoComplete,ny as BoxedRadio,Gm as Button,Eg as ButtonDropdown,QG as Calendar,na as CardActions,ta as CardContent,oa as CardDescription,aa as CardText,ra as CardTitle,vy as Checkbox,zo as Checkmark,Mo as ChevronUp,zb as Confirmation,xo as CrossIcon,DF as DatePicker,LF as DateRangePicker,AF as DateTimePicker,VF as DateTimeRangePicker,Lb as Drawer,Vb as Dropdown,sm as DropdownInputItem,Pb as DropdownItem,wg as DropdownMenuItem,Eo as ErrorIcon,So as Freddy,eK as FreemiumUIGlobalStyles,ea as FreshLink,Qo as IconButton,_o as InfoIcon,Im as Input,Xo as InputLabel,Bm as Loader,Ib as Menu,Ho as Minus,Ub as Modal,Do as MoreVertical,iw as MultiSelectDropdown,c$ as Popover,l$ as PopoverClose,a$ as PopoverTrigger,f$ as Radio,m$ as RadioGroup,hg as RadixMenuItem,em as RadixSelectItem,nU as Reorder,Jo as RequiredIndicator,NY as SortDropdown,Zo as StyledLabel,FY as Table,rW as Tabs,eW as TabsContent,tW as TabsList,QY as TabsRoot,nW as TabsTrigger,aw as Tag,Rm as TextArea,tG as ThemeProvider,qo as Themes,Ao as TickIcon,TF as TimePicker,QW as ToastProvider,vG as Toggle,qG as Tooltip,ia as TriggerButtonWrapper,ha as Typography,Lo as Warning,ZG as WorkspaceTable,ca as dialogContentMixin,la as dialogOverlayMixin,eG as useToasts};
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "freemium-ui",
3
- "version": "2.0.82",
3
+ "version": "2.0.84",
4
4
  "description": "React Ui Components for Freemium Apps",
5
5
  "main": "./index.js",
6
6
  "module": "./index.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "freemium-ui",
3
- "version": "2.0.82",
3
+ "version": "2.0.84",
4
4
  "description": "React Ui Components for Freemium Apps",
5
5
  "main": "lib/index.cjs.js",
6
6
  "module": "lib/index.js",