@oliasoft-open-source/react-ui-library 4.7.4 → 4.7.6

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 (78) hide show
  1. package/dist/index.d.ts +5 -0
  2. package/dist/index.js +85 -38
  3. package/dist/index.js.map +1 -1
  4. package/dist/storybook/assets/{Color-KGDBMAHA-fBkbFrxl.js → Color-KGDBMAHA-C0EpwEFf.js} +1 -1
  5. package/dist/storybook/assets/{DocsRenderer-PKQXORMH-BCXpse5g.js → DocsRenderer-PKQXORMH-CWe5JIRI.js} +1 -1
  6. package/dist/storybook/assets/{accordion.stories-MGPZF2zs.js → accordion.stories-YuQaNHcr.js} +1 -1
  7. package/dist/storybook/assets/{afe.stories-Zs5w8AL0.js → afe.stories-CT81gs6M.js} +1 -1
  8. package/dist/storybook/assets/{buttons-and-links-DGEwyzdQ.js → buttons-and-links-CtOaPZlv.js} +1 -1
  9. package/dist/storybook/assets/{casing-loads.stories-BZZ4ps89.js → casing-loads.stories-DQy8gjj6.js} +1 -1
  10. package/dist/storybook/assets/{cell.stories-DtPT5vsK.js → cell.stories-ChfAWqCt.js} +1 -1
  11. package/dist/storybook/assets/check-box.stories-BAH78tMZ.js +126 -0
  12. package/dist/storybook/assets/{chunk-HLWAVYOI-B_e8hbrU.js → chunk-HLWAVYOI-CkQdzq8g.js} +1 -1
  13. package/dist/storybook/assets/{color-BWuYLPlh.js → color-eaylxLAo.js} +1 -1
  14. package/dist/storybook/assets/dialog-vClt2ahZ.js +1 -0
  15. package/dist/storybook/assets/{file-input.stories-BH_glmEk.js → file-input.stories-Br89AkVv.js} +1 -1
  16. package/dist/storybook/assets/{footer.stories-CsvsDr1-.js → footer.stories-BM5UBN62.js} +1 -1
  17. package/dist/storybook/assets/{form.stories-BwzDZgen.js → form.stories-CYcggA-f.js} +1 -1
  18. package/dist/storybook/assets/{formation.stories-2ZjWA25v.js → formation.stories-NDB_Sbor.js} +1 -1
  19. package/dist/storybook/assets/iframe-WLuE3PcW.js +2 -0
  20. package/dist/storybook/assets/index-Be0hXiyp.js +179 -0
  21. package/dist/storybook/assets/index-CF7H4eMJ.js +28 -0
  22. package/dist/storybook/assets/{index-BrCAgVdx.js → index-CXmS_Aty.js} +1 -1
  23. package/dist/storybook/assets/{index-tzHbUYOM.js → index-Cf2IDQZ4.js} +4 -4
  24. package/dist/storybook/assets/{input-group.stories-D1i3gaZ1.js → input-group.stories-BmeUtBOK.js} +1 -1
  25. package/dist/storybook/assets/{input-validation-BcgNUeij.js → input-validation-U3o9_8IY.js} +2 -2
  26. package/dist/storybook/assets/{inputs-gN3bum_f.js → inputs-gP7hGRtM.js} +2 -2
  27. package/dist/storybook/assets/{layout-forms-DXG6Da8u.js → layout-forms-r2wYyx-8.js} +1 -1
  28. package/dist/storybook/assets/{layout-general-CEpJsTnH.js → layout-general-Bw291PmI.js} +1 -1
  29. package/dist/storybook/assets/menu.stories-QTzp0Z7C.js +84 -0
  30. package/dist/storybook/assets/message-B7G1ESkC.js +1 -0
  31. package/dist/storybook/assets/{message.stories-o5jcKCK_.js → message.stories-Czui5Ym7.js} +1 -1
  32. package/dist/storybook/assets/modal.stories-DAxDpo0A.js +220 -0
  33. package/dist/storybook/assets/number-input.stories-CFTNLnHw.js +105 -0
  34. package/dist/storybook/assets/{padding-and-spacing-By28ROLj.js → padding-and-spacing-DLeCWmND.js} +1 -1
  35. package/dist/storybook/assets/{pagination-CqvxiZHR.js → pagination-BtguPxeR.js} +1 -1
  36. package/dist/storybook/assets/{pagination.stories-BzMlcLsN.js → pagination.stories-CgG4wp8P.js} +1 -1
  37. package/dist/storybook/assets/{pop-confirm.stories-MFDc3UAq.js → pop-confirm.stories-CZpYmUBz.js} +1 -1
  38. package/dist/storybook/assets/{popover.stories-CPW_LGAh.js → popover.stories-CtaFGXR_.js} +1 -1
  39. package/dist/storybook/assets/{preview-eMMARKcW.js → preview-BjyexbB3.js} +2 -2
  40. package/dist/storybook/assets/preview-DLBQXbKW.js +1 -0
  41. package/dist/storybook/assets/{preview-CO5-Yrmk.js → preview-Dml2wSQG.js} +1 -1
  42. package/dist/storybook/assets/radio-button.stories-BNE-U9db.js +71 -0
  43. package/dist/storybook/assets/{reservoirs.stories-Cql_9W4F.js → reservoirs.stories-ux3hZbkX.js} +1 -1
  44. package/dist/storybook/assets/{rich-text-input.stories-BuDUgUsz.js → rich-text-input.stories-savcIJ5B.js} +1 -1
  45. package/dist/storybook/assets/{row.stories-C-bEP9pE.js → row.stories-CG6Eipay.js} +1 -1
  46. package/dist/storybook/assets/select-Z-GCZ-pY.js +40 -0
  47. package/dist/storybook/assets/select.stories-CX_B6BvR.js +579 -0
  48. package/dist/storybook/assets/{smart-upload-modal.stories-DGIErcSu.js → smart-upload-modal.stories-BrsVuS4a.js} +1 -1
  49. package/dist/storybook/assets/{table-CXUwJOBt.js → table-CaaSoHex.js} +1 -1
  50. package/dist/storybook/assets/{table.stories-Cp0UIPUQ.js → table.stories-BiBivAvh.js} +1 -1
  51. package/dist/storybook/assets/{title.stories-hn5F8-2J.js → title.stories-CfdJbgvT.js} +1 -1
  52. package/dist/storybook/assets/toaster-DJeREs3e.js +1 -0
  53. package/dist/storybook/assets/toaster.stories-QjvljKdT.js +89 -0
  54. package/dist/storybook/assets/toggle.stories-BYrikgrA.js +141 -0
  55. package/dist/storybook/assets/{unit-input.stories-DGvDLll8.js → unit-input.stories-BSWm9641.js} +1 -1
  56. package/dist/storybook/assets/{unit-table.stories-D0q58B-1.js → unit-table.stories-CgF-UOP3.js} +1 -1
  57. package/dist/storybook/iframe.html +1 -1
  58. package/dist/storybook/index.html +6 -2
  59. package/dist/storybook/index.json +1 -1
  60. package/dist/storybook/project.json +1 -1
  61. package/dist/storybook/sb-addons/interactions-2/manager-bundle.js +233 -0
  62. package/dist/storybook/sb-addons/storybook-dark-mode-esm-preset-3/manager-bundle.js.LEGAL.txt +0 -0
  63. package/package.json +6 -2
  64. package/dist/storybook/assets/check-box.stories-J1keUUs0.js +0 -102
  65. package/dist/storybook/assets/dialog-lhPZkAI2.js +0 -1
  66. package/dist/storybook/assets/iframe-DLWAAiXM.js +0 -2
  67. package/dist/storybook/assets/menu.stories-BE0AzXUY.js +0 -82
  68. package/dist/storybook/assets/message-ttrR1AaP.js +0 -1
  69. package/dist/storybook/assets/modal.stories-Ns1ikKLR.js +0 -200
  70. package/dist/storybook/assets/number-input.stories-BfRW8wgL.js +0 -97
  71. package/dist/storybook/assets/radio-button.stories-D7uvMLbK.js +0 -61
  72. package/dist/storybook/assets/select-tIEV7vnw.js +0 -40
  73. package/dist/storybook/assets/select.stories-BuW6SmRZ.js +0 -914
  74. package/dist/storybook/assets/toaster-DPbde9Mi.js +0 -1
  75. package/dist/storybook/assets/toaster.stories-DtRx7MDa.js +0 -86
  76. package/dist/storybook/assets/toggle.stories-CBkCAQh6.js +0 -117
  77. /package/dist/storybook/sb-addons/{storybook-dark-mode-esm-preset-2 → interactions-2}/manager-bundle.js.LEGAL.txt +0 -0
  78. /package/dist/storybook/sb-addons/{storybook-dark-mode-esm-preset-2 → storybook-dark-mode-esm-preset-3}/manager-bundle.js +0 -0
@@ -1,4 +1,4 @@
1
- import{j as n}from"./jsx-runtime-eps93zm2.js";import{r as S}from"./index-DhsZuJvc.js";import{c as v}from"./index-Bk2sglWO.js";import{I as Le,D as We,C as Fe,P as Pe}from"./index.es-D2piFfFj.js";import{l as De}from"./lodash-BHd_uQHh.js";import{A as ae}from"./actions-CZK3mphC.js";import{H as Oe}from"./heading-NkLgQYoP.js";import{P as Be}from"./pagination-CqvxiZHR.js";import{A as f,I as $}from"./common-types-Sih75Sav.js";import{I as $e}from"./input-BW9trNAW.js";import{N as Me}from"./number-input-uQOVHv2N.js";import{S as Ge}from"./select-tIEV7vnw.js";import{D as Ve}from"./disabled-context-rmpd7YJS.js";import{i as M}from"./types-UmZ4Y_CR.js";import{T as oe}from"./tooltip-1V7clEnw.js";import{C as Ue}from"./check-box-CaSrhzev.js";import{S as ze}from"./slider-gZmYlxxz.js";import{I as G}from"./icon-BP4BO6-k.js";import{P as Ke}from"./popover-DgUpTRMk.js";import{H as fe}from"./help-icon-41R-Z9N1.js";import{T as Y}from"./text-B3-TSWok.js";const Xe="_inputInTable_y9car_1",Ye="_inputHover_y9car_13",Je="_inputFocus_y9car_18",Qe="_inputError_y9car_25",Ze="_inputWarning_y9car_26",en="_inputDisabled_y9car_61",nn="_hideScrollbars_y9car_67",tn="_wrapper_y9car_85",rn="_bordered_y9car_93",an="_scroll_y9car_98",on="_table_y9car_108",sn="_striped_y9car_188",L={inputInTable:Xe,inputHover:Ye,inputFocus:Je,inputError:Qe,inputWarning:Ze,inputDisabled:en,hideScrollbars:nn,wrapper:tn,bordered:rn,scroll:an,table:on,striped:sn},ln="_title_zn5s7_1",dn={title:ln},Q=({name:e=null,actions:t=null,actionsRight:r=!1,testId:o})=>{const a=e!==null,i=t!==null;if(!a&&!i)return null;const l=()=>{if(!i)return null;const c=n.jsx(ae,{actions:t});return r?c:n.jsx("div",{children:c})};return n.jsxs("div",{className:dn.title,children:[a?n.jsx(Oe,{children:n.jsx("span",{"data-testid":o,children:e})}):null,l()]})};Q.__docgenInfo={description:"",methods:[],displayName:"Title",props:{name:{required:!1,tsType:{name:"union",raw:"TStringOrNumber | ReactNode",elements:[{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},{name:"ReactNode"}]},description:"",defaultValue:{value:"null",computed:!1}},actions:{required:!1,tsType:{name:"any"},description:"",defaultValue:{value:"null",computed:!1}},actionsRight:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},testId:{required:!1,tsType:{name:"string"},description:""}}};const un="_footer_4sumy_1",cn="_section_4sumy_7",J={footer:un,section:cn},Z=({colSpan:e,pagination:t,actions:r,content:o})=>{const a=r&&r.length,i=o!=null,l=()=>{var d,p;if(t){const{rowCount:u,rowsPerPage:I}=t,y=Number((p=(d=I==null?void 0:I.options)==null?void 0:d[0])==null?void 0:p.value);return u>y}return!1};return a||i||l()?n.jsxs("div",{className:J.footer,children:[i?n.jsx("div",{className:J.section,children:n.jsx("div",{children:o})}):null,a||l()?n.jsxs("div",{className:J.section,children:[l()?n.jsx(Be,{pagination:t}):n.jsx("div",{}),a&&n.jsx("div",{children:n.jsx(ae,{actions:r})})]}):null]}):null};Z.__docgenInfo={description:"",methods:[],displayName:"Footer",props:{colSpan:{required:!1,tsType:{name:"number"},description:""},pagination:{required:!0,tsType:{name:"IPagination"},description:""},actions:{required:!1,tsType:{name:"Array",elements:[{name:"IAction"}],raw:"IAction[]"},description:""},content:{required:!1,tsType:{name:"ReactNode"},description:""}}};const Ce=e=>{const t=Math.max(...e.reduce((r,o)=>{const a=o.cells.map(i=>i.colSpan?i.colSpan:1).reduce((i,l)=>i+l,0);return r.concat(a)},[]));return isNaN(t)?0:t},pn=(e,t)=>{const r=[Ce(t),Ce(e)];return Math.max(...r)},be=e=>e.reduce((t,r)=>r.actions&&r.actions.length>0?1:t,0),mn=(e,t)=>be(t)>0||be(e)>0,ee=({table:e,children:t})=>{const{rows:r,infiniteScroll:o}=e,a=Math.ceil(window.innerHeight/30),[i,l]=o?S.useState(a):[r.length,null],[c,d]=o?S.useState(i<r.length):[!1,null],p=()=>{if(i>=r.length&&d){d(!1);return}l&&l(i+a)};return n.jsx("div",{id:"scrollWrapper",className:L.scroll,children:o?n.jsx(Le,{dataLength:Math.min(r.length,i+a),next:p,hasMore:c,scrollableTarget:"scrollWrapper",style:{overflow:"initial"},loader:null,children:t({visibleRows:i})}):t({visibleRows:i})})};ee.__docgenInfo={description:"",methods:[],displayName:"TableScrollWrapper",props:{table:{required:!0,tsType:{name:"ITableProps"},description:""},children:{required:!0,tsType:{name:"signature",type:"function",raw:"(props: { visibleRows: number }) => ReactNode",signature:{arguments:[{type:{name:"signature",type:"object",raw:"{ visibleRows: number }",signature:{properties:[{key:"visibleRows",value:{name:"number",required:!0}}]}},name:"props"}],return:{name:"ReactNode"}}},description:""}}};const gn="_clickableRow_1ki29_1",yn="_hoverableRow_1ki29_4",In="_rowActive_1ki29_4",Cn="_expandableRow_1ki29_8",bn="_flush_1ki29_8",hn="_errorRow_1ki29_12",fn="_warningRow_1ki29_15",_n="_dragIconCell_1ki29_34",xn="_dragIcon_1ki29_34",h={clickableRow:gn,hoverableRow:yn,rowActive:In,expandableRow:Cn,flush:bn,errorRow:hn,warningRow:fn,dragIconCell:_n,dragIcon:xn},ne=({colSpan:e,children:t,flush:r})=>n.jsx("tr",{children:n.jsx("td",{colSpan:e,className:v(h.expandableRow,r?h.flush:""),children:t})});ne.__docgenInfo={description:"",methods:[],displayName:"ExpandedContentRow",props:{colSpan:{required:!0,tsType:{name:"number"},description:""},children:{required:!0,tsType:{name:"ReactNode"},description:""},flush:{required:!1,tsType:{name:"boolean"},description:""}}};const he=(e,t={leftAligned:"",rightAligned:"",centerAligned:""},r=!1)=>{if(!e)return null;const{bodyAlignment:o,headerAlignment:a,isHeader:i}=e;switch(i&&a?a:o){case f.LEFT:return r?f.LEFT:t.leftAligned;case f.RIGHT:return r?f.RIGHT:t.rightAligned;case f.CENTER:return r?f.CENTER:t.centerAligned;default:return r?f.LEFT:t.leftAligned}},wn=(e,t=!1,r=0)=>{if(!e||e.length===0)return[];const o=e.every(i=>Array.isArray(i)),a=e.every(i=>typeof i=="string");return o&&t?e[r]||[]:a?e:(console.warn("getHeaderAlignment: alignments array contains a mix of strings and arrays, returning an empty array."),[])},Tn="_inputInTable_u3xdj_1",vn="_inputHover_u3xdj_13",jn="_inputFocus_u3xdj_18",An="_inputError_u3xdj_25",Rn="_inputWarning_u3xdj_26",kn="_inputDisabled_u3xdj_61",qn="_hideScrollbars_u3xdj_67",Nn="_cell_u3xdj_77",Sn="_disabledLink_u3xdj_87",En="_inputWrapper_u3xdj_91",Hn="_breakWord_u3xdj_106",Ln="_inputCell_u3xdj_109",Wn="_sliderCell_u3xdj_112",Fn="_staticCell_u3xdj_116",Pn="_staticCellContent_u3xdj_119",Dn="_error_u3xdj_131",On="_warning_u3xdj_132",Bn="_unit_u3xdj_141",$n="_sortingCell_u3xdj_144",Mn="_sortingCellIcon_u3xdj_155",Gn="_icon_u3xdj_166",Vn="_checkBoxCell_u3xdj_170",Un="_iconCellWrapper_u3xdj_174",zn="_actionsCell_u3xdj_178",Kn="_rightAligned_u3xdj_186",Xn="_centerAligned_u3xdj_192",Yn="_leftAligned_u3xdj_198",Jn="_popover_u3xdj_201",Qn="_disabledPointerEvents_u3xdj_204",s={inputInTable:Tn,inputHover:vn,inputFocus:jn,inputError:An,inputWarning:Rn,inputDisabled:kn,hideScrollbars:qn,cell:Nn,disabledLink:Sn,inputWrapper:En,breakWord:Hn,inputCell:Ln,sliderCell:Wn,staticCell:Fn,staticCellContent:Pn,error:Dn,warning:On,unit:Bn,sortingCell:$n,sortingCellIcon:Mn,icon:Gn,checkBoxCell:Vn,iconCellWrapper:Un,actionsCell:zn,rightAligned:Kn,centerAligned:Xn,leftAligned:Yn,popover:Jn,disabledPointerEvents:Qn},te=({cell:e,columnAlignment:t,testId:r,type:o})=>n.jsx($e,{name:e.name,value:e.value,onChange:a=>{var i;return(i=e.onChange)==null?void 0:i.call(e,a)},onFocus:e.onFocus,onBlur:e.onBlur,onPaste:a=>{var i;return(i=e.onPaste)==null?void 0:i.call(e,a)},placeholder:e.placeholder,error:e.error,warning:e.warning,disabled:e.disabled,isInTable:!0,maxTooltipWidth:e.maxTooltipWidth,right:t===f.RIGHT,testId:r,tabIndex:e.disabled?-1:0,tooltip:e.tooltip,type:o});te.__docgenInfo={description:"",methods:[],displayName:"InputCell",props:{cell:{required:!0,tsType:{name:"IInputCell"},description:""},columnAlignment:{required:!1,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""},type:{required:!1,tsType:{name:"union",raw:"'text' | 'date'",elements:[{name:"literal",value:"'text'"},{name:"literal",value:"'date'"}]},description:""}}};const _e=({cell:e,testId:t})=>n.jsx(Me,{name:e.name,value:e.value,onChange:r=>{var o;return(o=e.onChange)==null?void 0:o.call(e,r)},onFocus:e.onFocus,onBlur:e.onBlur,placeholder:e.placeholder,error:e.error,warning:e.warning,disabled:e.disabled,isInTable:!0,left:e.left,tabIndex:e.disabled?-1:0,testId:t,tooltip:e.tooltip,validationCallback:e.validationCallback,allowEmpty:e.allowEmpty,enableDisplayRounding:e.enableDisplayRounding,roundDisplayValue:e.roundDisplayValue});_e.__docgenInfo={description:"",methods:[],displayName:"NumberInputCell",props:{cell:{required:!0,tsType:{name:"INumberInputCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const xe=({cell:e,columnAlignment:t,testId:r})=>n.jsx(Ge,{name:e.name,borderRadius:0,options:e.options,onChange:o=>{var a;return(a=e.onChange)==null?void 0:a.call(e,o)},onCreate:e.onCreate?o=>e.onCreate&&e.onCreate(o):void 0,error:e.error,warning:e.warning,disabled:e.disabled,placeholder:e.placeholder,isInTable:!0,value:e.value,native:e.native,clearable:e.clearable,searchable:e.searchable,deprecatedEventHandler:e.deprecatedEventHandler,maxTooltipWidth:e.maxTooltipWidth,width:"100%",autoLayerWidth:e.autoLayerWidth,multi:e.multi,right:t===f.RIGHT,testId:r,tabIndex:e.disabled?-1:0});xe.__docgenInfo={description:"",methods:[],displayName:"SelectCell",props:{cell:{required:!0,tsType:{name:"ISelectCell"},description:""},columnAlignment:{required:!1,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const we=({cell:e,columnAlignment:t,testId:r})=>n.jsx("div",{className:s.inputWrapper,children:e.type==="Input"?n.jsx(te,{cell:e,columnAlignment:t,testId:r}):e.type==="NumberInput"?n.jsx(_e,{cell:e,testId:r}):e.type==="DateInput"?n.jsx(te,{cell:e,testId:r,type:"date"}):e.type==="Select"?n.jsx(xe,{cell:e,columnAlignment:t,testId:r}):null});we.__docgenInfo={description:"",methods:[],displayName:"InputCellWrapper",props:{cell:{required:!0,tsType:{name:"any"},description:""},columnAlignment:{required:!0,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const Te=({cell:e,testId:t})=>{const r=S.useContext(Ve),{error:o,warning:a,tooltip:i,maxTooltipWidth:l}=e,c=d=>M(d);return n.jsx("div",{className:s.inputWrapper,children:n.jsx(oe,{error:!!o,warning:!!a,text:i||o||a,enabled:c(i)||c(o)||c(a)||!1,maxWidth:l,placement:"bottom-center",children:n.jsx("div",{className:v(s.staticCellContent,o?s.error:a?s.warning:""),children:n.jsx("a",{className:v((e.disabled||r)&&s.disabledLink),onClick:e.disabled||r?void 0:d=>{var p;d.stopPropagation(),(p=e.onClick)==null||p.call(e,d)},"data-testid":t,children:e.value})})})})};Te.__docgenInfo={description:"",methods:[],displayName:"LinkCell",props:{cell:{required:!0,tsType:{name:"ILinkCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const ve=({cell:e,testId:t})=>n.jsx(Ue,{label:e.label,checked:e.checked,isInTable:!0,disabled:e.disabled,onChange:r=>e.onChange(r),testId:t,tabIndex:e.disabled?-1:0});ve.__docgenInfo={description:"",methods:[],displayName:"CheckBoxCell",props:{cell:{required:!0,tsType:{name:"ICheckBoxCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const je=({cell:e})=>n.jsx("div",{className:s.inputWrapper,children:n.jsx(ze,{label:e.label,value:e.value,min:e.min,max:e.max,step:e.step,marks:e.marks,onChange:t=>e.onChange(t),showArrows:e.showArrows,showTooltip:e.showTooltip,tooltipFormatter:e.tooltipFormatter,disabled:e.disabled})});je.__docgenInfo={description:"",methods:[],displayName:"SliderCell",props:{cell:{required:!0,tsType:{name:"ISliderCell"},description:""}}};const Ae=({cell:e})=>{const{tooltip:t,icon:r}=e;return n.jsx("div",{className:s.iconCellWrapper,children:n.jsx(oe,{text:t,enabled:!!t&&M(t),display:"flex",placement:"top-center",children:n.jsx(G,{icon:r})})})};Ae.__docgenInfo={description:"",methods:[],displayName:"IconCell",props:{cell:{required:!0,tsType:{name:"IIconCell"},description:""}}};const Re=({cell:e})=>n.jsx(ae,{actions:e.actions});Re.__docgenInfo={description:"",methods:[],displayName:"ActionsCell",props:{cell:{required:!0,tsType:{name:"IActionCell"},description:""}}};const ke=({cell:e})=>{const{helpIcon:t}=e;return t?n.jsx("div",{className:s.icon,children:n.jsx(fe,{onClick:t.onClick,text:t.tooltip})}):null};ke.__docgenInfo={description:"",methods:[],displayName:"CellHelpIcon",props:{cell:{required:!0,tsType:{name:"IHelpIconCell"},description:""}}};const qe=({cell:e})=>{const{libraryIcon:t}=e;return t?n.jsx("div",{className:s.icon,children:n.jsx(fe,{onClick:t.onClick,text:t.tooltip,icon:$.LIBRARY})}):null};qe.__docgenInfo={description:"",methods:[],displayName:"CellLibraryIcon",props:{cell:{required:!0,tsType:{name:"ILibraryIconCell"},description:""}}};const Ne=({cell:e})=>{const{hasSort:t,sort:r,sortPriority:o}=e;return t?n.jsxs("span",{className:s.sortingCellIcon,children:[r==="down"?n.jsx(Y,{link:!0,children:n.jsx(G,{icon:$.SORT_ASCENDING})}):r==="up"?n.jsx(Y,{link:!0,children:n.jsx(G,{icon:$.SORT_DESCENDING})}):n.jsx(Y,{faint:!0,children:n.jsx(G,{icon:$.SORT_DESCENDING})}),o&&r?n.jsx("sup",{children:o}):null]}):null};Ne.__docgenInfo={description:"",methods:[],displayName:"Sort",props:{cell:{required:!0,tsType:{name:"ISortCell"},description:""}}};const ie=({cell:e,isHeader:t,testId:r})=>{const{error:o,warning:a,tooltip:i,maxTooltipWidth:l,hasSort:c,onSort:d,type:p}=e,u=n.jsxs("div",{className:v(s.staticCellContent,p==="Unit"?s.unit:"",o?s.error:a?s.warning:""),onClick:c?I=>d&&d(I):()=>{},"data-testid":r,children:[e.value,t?n.jsxs(n.Fragment,{children:[n.jsx(ke,{cell:e}),n.jsx(qe,{cell:e}),n.jsx(Ne,{cell:e})]}):null]});return n.jsx("div",{className:s.inputWrapper,children:n.jsx(oe,{error:!!o,warning:!!a,text:i||o||a,enabled:i&&M(i)||o&&M(o)||a&&M(a)||!1,maxWidth:l,display:"block",placement:"bottom-center",children:u})})};ie.__docgenInfo={description:"",methods:[],displayName:"StaticCell",props:{cell:{required:!0,tsType:{name:"IStaticCell"},description:""},isHeader:{required:!1,tsType:{name:"boolean"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const Se=({cell:e,testId:t})=>{const{content:r,fullWidth:o,closeOnOutsideClick:a,disabled:i}=e;return n.jsx(Ke,{content:r,fullWidth:o,closeOnOutsideClick:a,disabled:i,children:n.jsx("div",{className:s.popover,children:n.jsx(ie,{cell:e,testId:t})})})};Se.__docgenInfo={description:"",methods:[],displayName:"PopoverCell",props:{cell:{required:!0,tsType:{name:"IPopoverCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const Ee=({cell:e,isHeader:t,columnAlignment:r,testId:o})=>{if(!e)return null;switch(e.type){case"Input":case"NumberInput":case"DateInput":case"Select":return n.jsx(we,{cell:e,columnAlignment:r,testId:o});case"Link":return n.jsx(Te,{cell:e,testId:o});case"CheckBox":return n.jsx(ve,{cell:e,testId:o});case"Slider":return n.jsx(je,{cell:e});case"Icon":return n.jsx(Ae,{cell:e});case"Actions":return n.jsx(Re,{cell:e});case"Popover":return n.jsx(Se,{cell:e});default:return n.jsx(ie,{cell:e,isHeader:t,testId:o})}};Ee.__docgenInfo={description:"",methods:[],displayName:"CellWrapper",props:{cell:{required:!0,tsType:{name:"any"},description:""},isHeader:{required:!0,tsType:{name:"boolean"},description:""},columnAlignment:{required:!0,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};var R=(e=>(e.INPUT="Input",e.NUMBER_INPUT="NumberInput",e.SELECT="Select",e.POPOVER="Popover",e.SLIDER="Slider",e.CHECKBOX="CheckBox",e.ACTIONS="Actions",e.AUTO_UNIT="AutoUnit",e))(R||{});const re=({cell:e,isHeader:t,columnHeaderAlignment:r,columnAlignment:o=f.LEFT,width:a,snapshot:i,testId:l})=>{if(!e)return null;const{style:c,colSpan:d,rowSpan:p,width:u}=e,I=S.useRef(null),y={bodyAlignment:o,headerAlignment:r,isHeader:t},W=he(y,s),_=he(y,s,!0),F=e.type===R.INPUT||e.type===R.NUMBER_INPUT||e.type===R.SELECT||e.type===R.POPOVER?s.inputCell:e.type===R.SLIDER?s.sliderCell:e.type===R.CHECKBOX?s.checkBoxCell:e.type===R.ACTIONS?s.actionsCell:s.staticCell,j=v(s.cell,F,e.hasSort?s.sortingCell:null,W,e.breakWord?s.breakWord:""),E=u??a??((i==null?void 0:i.isDragging)&&I.current&&I.current.offsetWidth)??void 0,x={width:E,minWidth:E,...c},A=t?"th":"td";return n.jsx(A,{ref:I,className:j,style:x,colSpan:d,rowSpan:p,children:n.jsx(Ee,{cell:e,columnAlignment:_??f.RIGHT,isHeader:t,testId:l})})};re.__docgenInfo={description:"",methods:[],displayName:"Cell",props:{cell:{required:!1,tsType:{name:"union",raw:`| IPopoverCell
1
+ import{j as n}from"./jsx-runtime-eps93zm2.js";import{r as S}from"./index-DhsZuJvc.js";import{c as v}from"./index-Bk2sglWO.js";import{I as Le,D as We,C as Fe,P as Pe}from"./index.es-D2piFfFj.js";import{l as De}from"./lodash-BHd_uQHh.js";import{A as ae}from"./actions-CZK3mphC.js";import{H as Oe}from"./heading-NkLgQYoP.js";import{P as Be}from"./pagination-BtguPxeR.js";import{A as f,I as $}from"./common-types-Sih75Sav.js";import{I as $e}from"./input-BW9trNAW.js";import{N as Me}from"./number-input-uQOVHv2N.js";import{S as Ge}from"./select-Z-GCZ-pY.js";import{D as Ve}from"./disabled-context-rmpd7YJS.js";import{i as M}from"./types-UmZ4Y_CR.js";import{T as oe}from"./tooltip-1V7clEnw.js";import{C as Ue}from"./check-box-CaSrhzev.js";import{S as ze}from"./slider-gZmYlxxz.js";import{I as G}from"./icon-BP4BO6-k.js";import{P as Ke}from"./popover-DgUpTRMk.js";import{H as fe}from"./help-icon-41R-Z9N1.js";import{T as Y}from"./text-B3-TSWok.js";const Xe="_inputInTable_y9car_1",Ye="_inputHover_y9car_13",Je="_inputFocus_y9car_18",Qe="_inputError_y9car_25",Ze="_inputWarning_y9car_26",en="_inputDisabled_y9car_61",nn="_hideScrollbars_y9car_67",tn="_wrapper_y9car_85",rn="_bordered_y9car_93",an="_scroll_y9car_98",on="_table_y9car_108",sn="_striped_y9car_188",L={inputInTable:Xe,inputHover:Ye,inputFocus:Je,inputError:Qe,inputWarning:Ze,inputDisabled:en,hideScrollbars:nn,wrapper:tn,bordered:rn,scroll:an,table:on,striped:sn},ln="_title_zn5s7_1",dn={title:ln},Q=({name:e=null,actions:t=null,actionsRight:r=!1,testId:o})=>{const a=e!==null,i=t!==null;if(!a&&!i)return null;const l=()=>{if(!i)return null;const c=n.jsx(ae,{actions:t});return r?c:n.jsx("div",{children:c})};return n.jsxs("div",{className:dn.title,children:[a?n.jsx(Oe,{children:n.jsx("span",{"data-testid":o,children:e})}):null,l()]})};Q.__docgenInfo={description:"",methods:[],displayName:"Title",props:{name:{required:!1,tsType:{name:"union",raw:"TStringOrNumber | ReactNode",elements:[{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},{name:"ReactNode"}]},description:"",defaultValue:{value:"null",computed:!1}},actions:{required:!1,tsType:{name:"any"},description:"",defaultValue:{value:"null",computed:!1}},actionsRight:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},testId:{required:!1,tsType:{name:"string"},description:""}}};const un="_footer_4sumy_1",cn="_section_4sumy_7",J={footer:un,section:cn},Z=({colSpan:e,pagination:t,actions:r,content:o})=>{const a=r&&r.length,i=o!=null,l=()=>{var d,p;if(t){const{rowCount:u,rowsPerPage:I}=t,y=Number((p=(d=I==null?void 0:I.options)==null?void 0:d[0])==null?void 0:p.value);return u>y}return!1};return a||i||l()?n.jsxs("div",{className:J.footer,children:[i?n.jsx("div",{className:J.section,children:n.jsx("div",{children:o})}):null,a||l()?n.jsxs("div",{className:J.section,children:[l()?n.jsx(Be,{pagination:t}):n.jsx("div",{}),a&&n.jsx("div",{children:n.jsx(ae,{actions:r})})]}):null]}):null};Z.__docgenInfo={description:"",methods:[],displayName:"Footer",props:{colSpan:{required:!1,tsType:{name:"number"},description:""},pagination:{required:!0,tsType:{name:"IPagination"},description:""},actions:{required:!1,tsType:{name:"Array",elements:[{name:"IAction"}],raw:"IAction[]"},description:""},content:{required:!1,tsType:{name:"ReactNode"},description:""}}};const Ce=e=>{const t=Math.max(...e.reduce((r,o)=>{const a=o.cells.map(i=>i.colSpan?i.colSpan:1).reduce((i,l)=>i+l,0);return r.concat(a)},[]));return isNaN(t)?0:t},pn=(e,t)=>{const r=[Ce(t),Ce(e)];return Math.max(...r)},be=e=>e.reduce((t,r)=>r.actions&&r.actions.length>0?1:t,0),mn=(e,t)=>be(t)>0||be(e)>0,ee=({table:e,children:t})=>{const{rows:r,infiniteScroll:o}=e,a=Math.ceil(window.innerHeight/30),[i,l]=o?S.useState(a):[r.length,null],[c,d]=o?S.useState(i<r.length):[!1,null],p=()=>{if(i>=r.length&&d){d(!1);return}l&&l(i+a)};return n.jsx("div",{id:"scrollWrapper",className:L.scroll,children:o?n.jsx(Le,{dataLength:Math.min(r.length,i+a),next:p,hasMore:c,scrollableTarget:"scrollWrapper",style:{overflow:"initial"},loader:null,children:t({visibleRows:i})}):t({visibleRows:i})})};ee.__docgenInfo={description:"",methods:[],displayName:"TableScrollWrapper",props:{table:{required:!0,tsType:{name:"ITableProps"},description:""},children:{required:!0,tsType:{name:"signature",type:"function",raw:"(props: { visibleRows: number }) => ReactNode",signature:{arguments:[{type:{name:"signature",type:"object",raw:"{ visibleRows: number }",signature:{properties:[{key:"visibleRows",value:{name:"number",required:!0}}]}},name:"props"}],return:{name:"ReactNode"}}},description:""}}};const gn="_clickableRow_1ki29_1",yn="_hoverableRow_1ki29_4",In="_rowActive_1ki29_4",Cn="_expandableRow_1ki29_8",bn="_flush_1ki29_8",hn="_errorRow_1ki29_12",fn="_warningRow_1ki29_15",_n="_dragIconCell_1ki29_34",xn="_dragIcon_1ki29_34",h={clickableRow:gn,hoverableRow:yn,rowActive:In,expandableRow:Cn,flush:bn,errorRow:hn,warningRow:fn,dragIconCell:_n,dragIcon:xn},ne=({colSpan:e,children:t,flush:r})=>n.jsx("tr",{children:n.jsx("td",{colSpan:e,className:v(h.expandableRow,r?h.flush:""),children:t})});ne.__docgenInfo={description:"",methods:[],displayName:"ExpandedContentRow",props:{colSpan:{required:!0,tsType:{name:"number"},description:""},children:{required:!0,tsType:{name:"ReactNode"},description:""},flush:{required:!1,tsType:{name:"boolean"},description:""}}};const he=(e,t={leftAligned:"",rightAligned:"",centerAligned:""},r=!1)=>{if(!e)return null;const{bodyAlignment:o,headerAlignment:a,isHeader:i}=e;switch(i&&a?a:o){case f.LEFT:return r?f.LEFT:t.leftAligned;case f.RIGHT:return r?f.RIGHT:t.rightAligned;case f.CENTER:return r?f.CENTER:t.centerAligned;default:return r?f.LEFT:t.leftAligned}},wn=(e,t=!1,r=0)=>{if(!e||e.length===0)return[];const o=e.every(i=>Array.isArray(i)),a=e.every(i=>typeof i=="string");return o&&t?e[r]||[]:a?e:(console.warn("getHeaderAlignment: alignments array contains a mix of strings and arrays, returning an empty array."),[])},Tn="_inputInTable_u3xdj_1",vn="_inputHover_u3xdj_13",jn="_inputFocus_u3xdj_18",An="_inputError_u3xdj_25",Rn="_inputWarning_u3xdj_26",kn="_inputDisabled_u3xdj_61",qn="_hideScrollbars_u3xdj_67",Nn="_cell_u3xdj_77",Sn="_disabledLink_u3xdj_87",En="_inputWrapper_u3xdj_91",Hn="_breakWord_u3xdj_106",Ln="_inputCell_u3xdj_109",Wn="_sliderCell_u3xdj_112",Fn="_staticCell_u3xdj_116",Pn="_staticCellContent_u3xdj_119",Dn="_error_u3xdj_131",On="_warning_u3xdj_132",Bn="_unit_u3xdj_141",$n="_sortingCell_u3xdj_144",Mn="_sortingCellIcon_u3xdj_155",Gn="_icon_u3xdj_166",Vn="_checkBoxCell_u3xdj_170",Un="_iconCellWrapper_u3xdj_174",zn="_actionsCell_u3xdj_178",Kn="_rightAligned_u3xdj_186",Xn="_centerAligned_u3xdj_192",Yn="_leftAligned_u3xdj_198",Jn="_popover_u3xdj_201",Qn="_disabledPointerEvents_u3xdj_204",s={inputInTable:Tn,inputHover:vn,inputFocus:jn,inputError:An,inputWarning:Rn,inputDisabled:kn,hideScrollbars:qn,cell:Nn,disabledLink:Sn,inputWrapper:En,breakWord:Hn,inputCell:Ln,sliderCell:Wn,staticCell:Fn,staticCellContent:Pn,error:Dn,warning:On,unit:Bn,sortingCell:$n,sortingCellIcon:Mn,icon:Gn,checkBoxCell:Vn,iconCellWrapper:Un,actionsCell:zn,rightAligned:Kn,centerAligned:Xn,leftAligned:Yn,popover:Jn,disabledPointerEvents:Qn},te=({cell:e,columnAlignment:t,testId:r,type:o})=>n.jsx($e,{name:e.name,value:e.value,onChange:a=>{var i;return(i=e.onChange)==null?void 0:i.call(e,a)},onFocus:e.onFocus,onBlur:e.onBlur,onPaste:a=>{var i;return(i=e.onPaste)==null?void 0:i.call(e,a)},placeholder:e.placeholder,error:e.error,warning:e.warning,disabled:e.disabled,isInTable:!0,maxTooltipWidth:e.maxTooltipWidth,right:t===f.RIGHT,testId:r,tabIndex:e.disabled?-1:0,tooltip:e.tooltip,type:o});te.__docgenInfo={description:"",methods:[],displayName:"InputCell",props:{cell:{required:!0,tsType:{name:"IInputCell"},description:""},columnAlignment:{required:!1,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""},type:{required:!1,tsType:{name:"union",raw:"'text' | 'date'",elements:[{name:"literal",value:"'text'"},{name:"literal",value:"'date'"}]},description:""}}};const _e=({cell:e,testId:t})=>n.jsx(Me,{name:e.name,value:e.value,onChange:r=>{var o;return(o=e.onChange)==null?void 0:o.call(e,r)},onFocus:e.onFocus,onBlur:e.onBlur,placeholder:e.placeholder,error:e.error,warning:e.warning,disabled:e.disabled,isInTable:!0,left:e.left,tabIndex:e.disabled?-1:0,testId:t,tooltip:e.tooltip,validationCallback:e.validationCallback,allowEmpty:e.allowEmpty,enableDisplayRounding:e.enableDisplayRounding,roundDisplayValue:e.roundDisplayValue});_e.__docgenInfo={description:"",methods:[],displayName:"NumberInputCell",props:{cell:{required:!0,tsType:{name:"INumberInputCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const xe=({cell:e,columnAlignment:t,testId:r})=>n.jsx(Ge,{name:e.name,borderRadius:0,options:e.options,onChange:o=>{var a;return(a=e.onChange)==null?void 0:a.call(e,o)},onCreate:e.onCreate?o=>e.onCreate&&e.onCreate(o):void 0,error:e.error,warning:e.warning,disabled:e.disabled,placeholder:e.placeholder,isInTable:!0,value:e.value,native:e.native,clearable:e.clearable,searchable:e.searchable,deprecatedEventHandler:e.deprecatedEventHandler,maxTooltipWidth:e.maxTooltipWidth,width:"100%",autoLayerWidth:e.autoLayerWidth,multi:e.multi,right:t===f.RIGHT,testId:r,tabIndex:e.disabled?-1:0});xe.__docgenInfo={description:"",methods:[],displayName:"SelectCell",props:{cell:{required:!0,tsType:{name:"ISelectCell"},description:""},columnAlignment:{required:!1,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const we=({cell:e,columnAlignment:t,testId:r})=>n.jsx("div",{className:s.inputWrapper,children:e.type==="Input"?n.jsx(te,{cell:e,columnAlignment:t,testId:r}):e.type==="NumberInput"?n.jsx(_e,{cell:e,testId:r}):e.type==="DateInput"?n.jsx(te,{cell:e,testId:r,type:"date"}):e.type==="Select"?n.jsx(xe,{cell:e,columnAlignment:t,testId:r}):null});we.__docgenInfo={description:"",methods:[],displayName:"InputCellWrapper",props:{cell:{required:!0,tsType:{name:"any"},description:""},columnAlignment:{required:!0,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const Te=({cell:e,testId:t})=>{const r=S.useContext(Ve),{error:o,warning:a,tooltip:i,maxTooltipWidth:l}=e,c=d=>M(d);return n.jsx("div",{className:s.inputWrapper,children:n.jsx(oe,{error:!!o,warning:!!a,text:i||o||a,enabled:c(i)||c(o)||c(a)||!1,maxWidth:l,placement:"bottom-center",children:n.jsx("div",{className:v(s.staticCellContent,o?s.error:a?s.warning:""),children:n.jsx("a",{className:v((e.disabled||r)&&s.disabledLink),onClick:e.disabled||r?void 0:d=>{var p;d.stopPropagation(),(p=e.onClick)==null||p.call(e,d)},"data-testid":t,children:e.value})})})})};Te.__docgenInfo={description:"",methods:[],displayName:"LinkCell",props:{cell:{required:!0,tsType:{name:"ILinkCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const ve=({cell:e,testId:t})=>n.jsx(Ue,{label:e.label,checked:e.checked,isInTable:!0,disabled:e.disabled,onChange:r=>e.onChange(r),testId:t,tabIndex:e.disabled?-1:0});ve.__docgenInfo={description:"",methods:[],displayName:"CheckBoxCell",props:{cell:{required:!0,tsType:{name:"ICheckBoxCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const je=({cell:e})=>n.jsx("div",{className:s.inputWrapper,children:n.jsx(ze,{label:e.label,value:e.value,min:e.min,max:e.max,step:e.step,marks:e.marks,onChange:t=>e.onChange(t),showArrows:e.showArrows,showTooltip:e.showTooltip,tooltipFormatter:e.tooltipFormatter,disabled:e.disabled})});je.__docgenInfo={description:"",methods:[],displayName:"SliderCell",props:{cell:{required:!0,tsType:{name:"ISliderCell"},description:""}}};const Ae=({cell:e})=>{const{tooltip:t,icon:r}=e;return n.jsx("div",{className:s.iconCellWrapper,children:n.jsx(oe,{text:t,enabled:!!t&&M(t),display:"flex",placement:"top-center",children:n.jsx(G,{icon:r})})})};Ae.__docgenInfo={description:"",methods:[],displayName:"IconCell",props:{cell:{required:!0,tsType:{name:"IIconCell"},description:""}}};const Re=({cell:e})=>n.jsx(ae,{actions:e.actions});Re.__docgenInfo={description:"",methods:[],displayName:"ActionsCell",props:{cell:{required:!0,tsType:{name:"IActionCell"},description:""}}};const ke=({cell:e})=>{const{helpIcon:t}=e;return t?n.jsx("div",{className:s.icon,children:n.jsx(fe,{onClick:t.onClick,text:t.tooltip})}):null};ke.__docgenInfo={description:"",methods:[],displayName:"CellHelpIcon",props:{cell:{required:!0,tsType:{name:"IHelpIconCell"},description:""}}};const qe=({cell:e})=>{const{libraryIcon:t}=e;return t?n.jsx("div",{className:s.icon,children:n.jsx(fe,{onClick:t.onClick,text:t.tooltip,icon:$.LIBRARY})}):null};qe.__docgenInfo={description:"",methods:[],displayName:"CellLibraryIcon",props:{cell:{required:!0,tsType:{name:"ILibraryIconCell"},description:""}}};const Ne=({cell:e})=>{const{hasSort:t,sort:r,sortPriority:o}=e;return t?n.jsxs("span",{className:s.sortingCellIcon,children:[r==="down"?n.jsx(Y,{link:!0,children:n.jsx(G,{icon:$.SORT_ASCENDING})}):r==="up"?n.jsx(Y,{link:!0,children:n.jsx(G,{icon:$.SORT_DESCENDING})}):n.jsx(Y,{faint:!0,children:n.jsx(G,{icon:$.SORT_DESCENDING})}),o&&r?n.jsx("sup",{children:o}):null]}):null};Ne.__docgenInfo={description:"",methods:[],displayName:"Sort",props:{cell:{required:!0,tsType:{name:"ISortCell"},description:""}}};const ie=({cell:e,isHeader:t,testId:r})=>{const{error:o,warning:a,tooltip:i,maxTooltipWidth:l,hasSort:c,onSort:d,type:p}=e,u=n.jsxs("div",{className:v(s.staticCellContent,p==="Unit"?s.unit:"",o?s.error:a?s.warning:""),onClick:c?I=>d&&d(I):()=>{},"data-testid":r,children:[e.value,t?n.jsxs(n.Fragment,{children:[n.jsx(ke,{cell:e}),n.jsx(qe,{cell:e}),n.jsx(Ne,{cell:e})]}):null]});return n.jsx("div",{className:s.inputWrapper,children:n.jsx(oe,{error:!!o,warning:!!a,text:i||o||a,enabled:i&&M(i)||o&&M(o)||a&&M(a)||!1,maxWidth:l,display:"block",placement:"bottom-center",children:u})})};ie.__docgenInfo={description:"",methods:[],displayName:"StaticCell",props:{cell:{required:!0,tsType:{name:"IStaticCell"},description:""},isHeader:{required:!1,tsType:{name:"boolean"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const Se=({cell:e,testId:t})=>{const{content:r,fullWidth:o,closeOnOutsideClick:a,disabled:i}=e;return n.jsx(Ke,{content:r,fullWidth:o,closeOnOutsideClick:a,disabled:i,children:n.jsx("div",{className:s.popover,children:n.jsx(ie,{cell:e,testId:t})})})};Se.__docgenInfo={description:"",methods:[],displayName:"PopoverCell",props:{cell:{required:!0,tsType:{name:"IPopoverCell"},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};const Ee=({cell:e,isHeader:t,columnAlignment:r,testId:o})=>{if(!e)return null;switch(e.type){case"Input":case"NumberInput":case"DateInput":case"Select":return n.jsx(we,{cell:e,columnAlignment:r,testId:o});case"Link":return n.jsx(Te,{cell:e,testId:o});case"CheckBox":return n.jsx(ve,{cell:e,testId:o});case"Slider":return n.jsx(je,{cell:e});case"Icon":return n.jsx(Ae,{cell:e});case"Actions":return n.jsx(Re,{cell:e});case"Popover":return n.jsx(Se,{cell:e});default:return n.jsx(ie,{cell:e,isHeader:t,testId:o})}};Ee.__docgenInfo={description:"",methods:[],displayName:"CellWrapper",props:{cell:{required:!0,tsType:{name:"any"},description:""},isHeader:{required:!0,tsType:{name:"boolean"},description:""},columnAlignment:{required:!0,tsType:{name:"union",raw:"Align.LEFT | Align.RIGHT | string",elements:[{name:"Align.LEFT"},{name:"Align.RIGHT"},{name:"string"}]},description:""},testId:{required:!1,tsType:{name:"string"},description:""}}};var R=(e=>(e.INPUT="Input",e.NUMBER_INPUT="NumberInput",e.SELECT="Select",e.POPOVER="Popover",e.SLIDER="Slider",e.CHECKBOX="CheckBox",e.ACTIONS="Actions",e.AUTO_UNIT="AutoUnit",e))(R||{});const re=({cell:e,isHeader:t,columnHeaderAlignment:r,columnAlignment:o=f.LEFT,width:a,snapshot:i,testId:l})=>{if(!e)return null;const{style:c,colSpan:d,rowSpan:p,width:u}=e,I=S.useRef(null),y={bodyAlignment:o,headerAlignment:r,isHeader:t},W=he(y,s),_=he(y,s,!0),F=e.type===R.INPUT||e.type===R.NUMBER_INPUT||e.type===R.SELECT||e.type===R.POPOVER?s.inputCell:e.type===R.SLIDER?s.sliderCell:e.type===R.CHECKBOX?s.checkBoxCell:e.type===R.ACTIONS?s.actionsCell:s.staticCell,j=v(s.cell,F,e.hasSort?s.sortingCell:null,W,e.breakWord?s.breakWord:""),E=u??a??((i==null?void 0:i.isDragging)&&I.current&&I.current.offsetWidth)??void 0,x={width:E,minWidth:E,...c},A=t?"th":"td";return n.jsx(A,{ref:I,className:j,style:x,colSpan:d,rowSpan:p,children:n.jsx(Ee,{cell:e,columnAlignment:_??f.RIGHT,isHeader:t,testId:l})})};re.__docgenInfo={description:"",methods:[],displayName:"Cell",props:{cell:{required:!1,tsType:{name:"union",raw:`| IPopoverCell
2
2
  | IStaticCell
3
3
  | ISelectCell
4
4
  | IHelpIconCell
@@ -1,4 +1,4 @@
1
- import{j as n}from"./jsx-runtime-eps93zm2.js";import{r as S}from"./index-DhsZuJvc.js";import{f as ne}from"./immer.esm-BwVl9PS2.js";import{l as Z}from"./lodash-BHd_uQHh.js";import{G as le}from"./grid-B6LFPf51.js";import{T as W}from"./text-B3-TSWok.js";import{T as D}from"./table-CXUwJOBt.js";import{C as dn}from"./card-EcjmryU9.js";import{I as se}from"./input-BW9trNAW.js";import{F as oe}from"./field-C5_fLDpy.js";import{H as un}from"./heading-NkLgQYoP.js";import{t as ae,x as pn,y as mn,z as gn,A as bn,B as hn,C as wn,D as yn}from"./table.stories-data-DwfKQW7P.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./index-Bk2sglWO.js";import"./index.es-D2piFfFj.js";import"./inheritsLoose-DR8r8Ogv.js";import"./extends-CF3RwP-h.js";import"./redux-tRgGMjwY.js";import"./objectSpread2-DW4nTBoq.js";import"./tiny-invariant-DqLgxztJ.js";import"./index-CUZDtIZe.js";import"./memoize-one.esm-CcMeOnPo.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./actions-CZK3mphC.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./button-C1sV-0mR.js";import"./spinner-AWUe4xwQ.js";import"./icon-BP4BO6-k.js";import"./index-CEuq6vkz.js";import"./tooltip-1V7clEnw.js";import"./types-BmbYqTX_.js";import"./types-UmZ4Y_CR.js";import"./badge-CLQ59MDF.js";import"./pagination-CqvxiZHR.js";import"./select-tIEV7vnw.js";import"./assertThisInitialized-B9jnkVVz.js";import"./select.input-DIKP56UZ.js";import"./input-group-BaRSJAEN.js";import"./input-group-addon-D68iUKV2.js";import"./number-input-uQOVHv2N.js";import"./index-CWz-hU-f.js";import"./index-DRSy5Ssd.js";import"./check-box-CaSrhzev.js";import"./help-icon-41R-Z9N1.js";import"./slider-gZmYlxxz.js";import"./index-BI4_Bp97.js";import"./popover-DgUpTRMk.js";import"./label-hiSz3I8H.js";import"./flex-EllkLxgO.js";const bt={title:"Basic/Table",component:D,args:{table:{...ae}}},A=h=>n.jsx(D,{...h}),te=A.bind({}),E=A.bind({});E.args={table:{...ae,fixedWidth:"400px"}};const L=A.bind({});L.args={table:{...ae,fixedWidth:"auto"}};const _=A.bind({});_.args={table:pn};_.parameters={docs:{description:{story:"Use sparingly when certain columns cannot be below a certain width. Unless the Table is auto width, set one column to `auto` to use remaining space."}}};const Q=A.bind({});Q.args={table:mn};const O=A.bind({});O.args={table:gn};O.parameters={docs:{description:{story:"This is only required when you need to override `columnAlignment` in header cells (i.e. they have different alignment)"}}};const G=A.bind({});G.args={table:bn};const N=A.bind({});N.args={table:hn};N.decorators=[h=>n.jsx("div",{style:{position:"absolute",inset:0,padding:"var(--padding)"},children:n.jsx(h,{})})];const U=A.bind({});U.args={table:wn};U.parameters={docs:{description:{story:"If a `maxHeight` is set, the table should only fill that height if it needs to."}}};const $=A.bind({});$.args={table:yn};const M=()=>n.jsx(dn,{heading:n.jsx(un,{children:"Card heading"}),padding:!1,children:n.jsx(D,{table:{...ae,bordered:!1}})});M.parameters={docs:{source:{type:"dynamic"}}};const q=()=>{const h=["Section","Width","Height"];let g=["","m","m"],o=[...Array(175).keys()].map((l,t)=>[t,t*2,t*2]);const x=(l,t,r)=>l==="m"&&t==="ft"?r*3.28084:l==="ft"&&t==="m"?r/3.28084:r,i=(l,t,r,c)=>{o[t][r]=l.target.value,c()},R=l=>{o=o.concat([["","",""]]),l()},k=(l,t)=>{o=o.filter((r,c)=>c!==l),t()},p=(l,t,r)=>{const c=g[t],b=l.target.value;g=g.map((y,s)=>s===t?b:y),o=o.map(y=>y.map((s,u)=>u===t?x(c,b,s):s)),r()},w=()=>{const l=[{label:"10 / page",value:10},{label:"20 / page",value:20},{label:"50 / page",value:50},{label:"Show all",value:0}],[t,r]=S.useState(10),[c,b]=S.useState(1),[y,s]=S.useState(!1),u=()=>{s(!y)},j=()=>{const e=Math.ceil(o.length/t);b(e)},T=(c-1)*t,a=t===0?o.length-1:T+t,m={headers:[{cells:h.map(e=>({value:e})),actions:[{primary:!0,label:"Add",icon:"add",onClick:()=>{R(u),j()}}]},{cells:[{},{options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],value:g[1],type:"Select",native:!0,onChange:e=>p(e,1,u)},{options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],value:g[2],type:"Select",native:!0,onChange:e=>p(e,2,u)}]}],rows:o.slice(T,a).map((e,d)=>{const I=T+d;return{cells:[...Array(3).keys()].map((P,v)=>({value:e[v],type:"Input",onChange:C=>i(C,I,v,u)})),actions:[{label:"Delete",icon:"minus",onClick:()=>k(I,u)}]}}),footer:{pagination:{rowCount:o.length,selectedPage:c,rowsPerPage:{onChange:e=>{const{value:d}=e.target;r(Number(d))},options:l,value:t},onSelectPage:e=>b(e),small:!0}}};return n.jsx(D,{table:m})};return n.jsx(w,{})},K=()=>{const h=["Section","Width","Height"];let g=[...Array(20).keys()].map((x,i)=>({Section:Z.random(0,100),Width:Z.random(0,100),Height:Z.random(0,100)}));const o=()=>{const[x,i]=S.useState({Section:"up"}),R=(r,c)=>r.sort((b,y)=>Object.entries(c).map(([s,u])=>{switch(u){case"up":return b[s]-y[s];case"down":return y[s]-b[s];default:return 0}}).reduce((s,u)=>s||u,0)),k=(r,c,b)=>({dataSortCells:r.map(s=>{const u=Object.keys(c).includes(s)?c[s]:"",j=`${s[0].toUpperCase()}${s.slice(1)}`;return{key:s,value:j,hasSort:!0,sort:u,onSort:()=>{const T=u==="up"?"down":"up";b({[s]:T})}}})}),{dataSortCells:p}=k(h,x,i),l=[...R(g,x).map(r=>({cells:Object.entries(r).map(([b,y])=>({key:b,value:y,type:"Input",disabled:!0}))}))],t={headers:[{cells:p}],rows:l};return n.jsx(D,{table:t})};return n.jsx(o,{})},B=()=>{const h=["Section","Width","Height"];let g=[...Array(175).keys()].map((x,i)=>({Section:i,Width:i*2,Height:i*2}));const o=()=>{const x=[{label:"10 / page",value:10},{label:"20 / page",value:20},{label:"50 / page",value:50},{label:"Show all",value:0}],[i,R]=S.useState(10),[k,p]=S.useState(1),[w,l]=S.useState({}),[t,r]=S.useState({});S.useEffect(()=>{p(1)},[w,t]);const c=(k-1)*i,b=i===0?g.length-1:c+i,y=(e,d,I)=>e.filter(P=>Object.keys(d).every(v=>d[v]===""?!0:P[v].toString().includes(d[v]))).sort((P,v)=>Object.entries(I).map(([C,H])=>{switch(H){case"up":return P[C]-v[C];case"down":return v[C]-P[C];default:return 0}}).reduce((C,H)=>C||H,0)),s=(e,d,I,P,v)=>{const C=e.map(f=>{const V=Object.keys(P).includes(f)?P[f]:"",F=`${f[0].toUpperCase()}${f.slice(1)}`;return{key:f,value:F,hasSort:!0,sort:V,onSort:()=>{const ee=V===""?"up":V==="up"?"down":"";v({...P,[f]:ee})}}}),H=e.map(f=>{const V=Object.keys(d).includes(f)?d[f]:"";return{key:f,value:V,type:"Input",placeholder:"Filter",onChange:F=>I({...d,[f]:F.target.value})}});return{dataSortCells:C,dataFilterCells:H}},{dataSortCells:u,dataFilterCells:j}=s(h,w,l,t,r),T=y(g,w,t),a=[...T.slice(c,b).map(e=>({cells:Object.entries(e).map(([I,P])=>({key:I,value:P,type:"Input",disabled:!0}))}))],m={headers:[{cells:u},{cells:j}],rows:a,footer:{pagination:{rowCount:T.length,selectedPage:k,rowsPerPage:{onChange:e=>{const{value:d}=e.target;R(Number(d))},options:x,value:i},onSelectPage:e=>p(e),small:!0}}};return n.jsx(D,{table:m})};return n.jsx(o,{})},z=()=>{const h={tea:3.6,coffee:3.2,orange:4.1},g=[{label:"Tea",value:"tea"},{label:"Coffee",value:"coffee"},{label:"Orange juice",value:"orange"}],o={cells:[{type:"Select",options:g,value:{value:"tea"}},{type:"Input"},{type:"Static"}]},x=[...Array(15).keys()].map((a,m)=>({cells:[{type:"Select",options:g,value:{value:"tea"}},{type:"Input",value:m+1},{type:"Static"}]})),[i,R]=S.useState(x),k=[{label:"10 / page",value:10},{label:"20 / page",value:20},{label:"50 / page",value:50},{label:"Show all",value:0}],[p,w]=S.useState(10),[l,t]=S.useState(1),r=(l-1)*p,c=p===0?i.length-1:r+p,b=({newRow:a}={})=>{const m=ne(i,e=>{e.push(a??o)});R(m)},y=({rowIndex:a})=>{const m=ne(i,e=>{delete e[a]}).filter(e=>e);R(m)},s=({rowIndex:a,value:m})=>{const e=ne(i,d=>{d[a].cells[0].value.value=m});R(e)},u=({rowIndex:a,value:m})=>{const e=ne(i,d=>{d[a].cells[1].value=m});R(e)},j=({value:a})=>{const m=Number(a);return!Z.isNaN(m)&&Z.isInteger(m)&&m>0},T=i.slice(r,c).map((a,m)=>{const e=r+m;return i.length-1,{...a,cells:a==null?void 0:a.cells.map((d,I)=>{var f,V,F,ee,ie;const P=(F=(V=(f=a==null?void 0:a.cells)==null?void 0:f[0])==null?void 0:V.value)==null?void 0:F.value,v=Number((ie=(ee=a==null?void 0:a.cells)==null?void 0:ee[1])==null?void 0:ie.value),C=h==null?void 0:h[P],H=C&&j({value:v})?(C*v).toFixed(2):null;if(I===0)return{...d,onChange:re=>s({rowIndex:e,value:re.target.value})};if(I===1)return{...d,onChange:re=>u({rowIndex:e,value:re.target.value}),error:j({value:d.value})?null:"Must be valid whole number"};if(I===2)return{...d,value:H}}),actions:[{label:"Delete",icon:"minus",onClick:()=>y({rowIndex:e})}]}});return n.jsx(D,{table:{defaultEmptyRow:o,onAddRow:b,columnAlignment:["left","right","right"],headers:[{cells:[{value:"Drink"},{value:"Quantity"},{value:"Total Price (£)"}],actions:[{primary:!0,icon:"plus",label:"Add",onClick:()=>b()}]}],rows:T,footer:{pagination:{rowCount:i.length,selectedPage:l,rowsPerPage:{onChange:a=>{const{value:m}=a.target;w(Number(m))},options:k,value:p},onSelectPage:a=>t(a),small:!0}}}})},J=()=>{const h=["Section","Width","Height"];let g=Array.from(Array(10),(p,w)=>[w,w*2,w*2]);const[o,x]=S.useState({pastedValues:"",rowIndex:0,cellIndex:0}),i=(p,w,l,t)=>{g[w][l]=Number(p.target.value),t()},R=(p,w,l,t)=>{var c;let r=((c=p==null?void 0:p.clipboardData)==null?void 0:c.getData("text"))??"";return x({rowIndex:w,cellIndex:l,pastedValues:r}),t(),{pastedData:o}},k=()=>{const[p,w]=S.useState(!1),l=()=>{w(!p)},t={headers:[{cells:h.map(r=>({value:r}))}],rows:g.map((r,c)=>{const b=c;return{cells:[...Array(3).keys()].map((y,s)=>({value:r[s],type:"Input",onChange:u=>i(u,b,s,l),onPaste:u=>R(u,b,s,l)}))}})};return n.jsxs(n.Fragment,{children:[n.jsx(D,{table:t}),n.jsx(oe,{label:"Pasted Data",children:n.jsx(se,{value:o.pastedValues})}),n.jsx(oe,{label:"At Row",children:n.jsx(se,{value:o.rowIndex})}),n.jsx(oe,{label:"At Cell Index",children:n.jsx(se,{value:o.cellIndex})})]})};return n.jsx(k,{})},X=()=>{const h={fixedWidth:"auto",name:"Table title",actions:[{icon:"download",tooltip:"Download"}],columnAlignment:[...Array(10)].map((g,o)=>"right"),headers:[{cells:[...Array(10)].map((g,o)=>({value:"Heading"}))},{cells:[...Array(10)].map((g,o)=>({options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],type:"Select",searchable:!1,value:{label:"m",value:"m"},autoLayerWidth:!0}))}],rows:[...Array(10)].map((g,o)=>({cells:[...Array(10)].map((x,i)=>({value:123.45})),actions:[{icon:"help",tooltip:n.jsxs(le,{children:[n.jsx(W,{bold:!0,children:"Title goes here lorem ipsum"}),n.jsx(W,{children:"Label: 123.45m"}),n.jsx(W,{children:"Another label: 123.45m"}),n.jsx(W,{children:"Label: 123.45m"})]})}]}))};return n.jsx(D,{table:h})},Y=()=>{const h={fixedWidth:"auto",name:"Table title",actions:[{icon:"download",tooltip:"Download"}],headers:[{cells:[{value:"Label"},{value:"Value",colSpan:2}]}],rows:[{cells:[{value:"Country",style:{fontWeight:"bold"},width:"120px"},{value:"Norway",colSpan:2}],actions:[{icon:"help",tooltip:n.jsxs(le,{children:[n.jsx(W,{bold:!0,children:"Title goes here"}),n.jsx(W,{children:"Details go here"})]})}]},{cells:[{value:"Depth",style:{fontWeight:"bold"}},{value:123,width:"80px"},{options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],value:{label:"m",value:"m"},type:"Select",width:"80px"}],actions:[{icon:"help",tooltip:n.jsxs(le,{children:[n.jsx(W,{bold:!0,children:"Title goes here"}),n.jsx(W,{children:"Details go here"})]})}]}]};return n.jsx(D,{table:h})};M.__docgenInfo={description:"",methods:[],displayName:"InCard"};q.__docgenInfo={description:"",methods:[],displayName:"Managed"};K.__docgenInfo={description:"",methods:[],displayName:"ManagedWithSort"};B.__docgenInfo={description:"",methods:[],displayName:"ManagedWithFilterAndMultipleSort"};z.__docgenInfo={description:"",methods:[],displayName:"AutoAddNewRow"};J.__docgenInfo={description:"",methods:[],displayName:"OnPasteCallback"};X.__docgenInfo={description:"",methods:[],displayName:"ExampleTableWithInfoTooltips"};Y.__docgenInfo={description:"",methods:[],displayName:"ExampleTableWithInlineUnits"};var ce,de,ue;te.parameters={...te.parameters,docs:{...(ce=te.parameters)==null?void 0:ce.docs,source:{originalSource:`args => {
1
+ import{j as n}from"./jsx-runtime-eps93zm2.js";import{r as S}from"./index-DhsZuJvc.js";import{f as ne}from"./immer.esm-BwVl9PS2.js";import{l as Z}from"./lodash-BHd_uQHh.js";import{G as le}from"./grid-B6LFPf51.js";import{T as W}from"./text-B3-TSWok.js";import{T as D}from"./table-CaaSoHex.js";import{C as dn}from"./card-EcjmryU9.js";import{I as se}from"./input-BW9trNAW.js";import{F as oe}from"./field-C5_fLDpy.js";import{H as un}from"./heading-NkLgQYoP.js";import{t as ae,x as pn,y as mn,z as gn,A as bn,B as hn,C as wn,D as yn}from"./table.stories-data-DwfKQW7P.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./index-Bk2sglWO.js";import"./index.es-D2piFfFj.js";import"./inheritsLoose-DR8r8Ogv.js";import"./extends-CF3RwP-h.js";import"./redux-tRgGMjwY.js";import"./objectSpread2-DW4nTBoq.js";import"./tiny-invariant-DqLgxztJ.js";import"./index-CUZDtIZe.js";import"./memoize-one.esm-CcMeOnPo.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./actions-CZK3mphC.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./button-C1sV-0mR.js";import"./spinner-AWUe4xwQ.js";import"./icon-BP4BO6-k.js";import"./index-CEuq6vkz.js";import"./tooltip-1V7clEnw.js";import"./types-BmbYqTX_.js";import"./types-UmZ4Y_CR.js";import"./badge-CLQ59MDF.js";import"./pagination-BtguPxeR.js";import"./select-Z-GCZ-pY.js";import"./assertThisInitialized-B9jnkVVz.js";import"./select.input-DIKP56UZ.js";import"./input-group-BaRSJAEN.js";import"./input-group-addon-D68iUKV2.js";import"./number-input-uQOVHv2N.js";import"./index-CWz-hU-f.js";import"./index-DRSy5Ssd.js";import"./check-box-CaSrhzev.js";import"./help-icon-41R-Z9N1.js";import"./slider-gZmYlxxz.js";import"./index-BI4_Bp97.js";import"./popover-DgUpTRMk.js";import"./label-hiSz3I8H.js";import"./flex-EllkLxgO.js";const bt={title:"Basic/Table",component:D,args:{table:{...ae}}},A=h=>n.jsx(D,{...h}),te=A.bind({}),E=A.bind({});E.args={table:{...ae,fixedWidth:"400px"}};const L=A.bind({});L.args={table:{...ae,fixedWidth:"auto"}};const _=A.bind({});_.args={table:pn};_.parameters={docs:{description:{story:"Use sparingly when certain columns cannot be below a certain width. Unless the Table is auto width, set one column to `auto` to use remaining space."}}};const Q=A.bind({});Q.args={table:mn};const O=A.bind({});O.args={table:gn};O.parameters={docs:{description:{story:"This is only required when you need to override `columnAlignment` in header cells (i.e. they have different alignment)"}}};const G=A.bind({});G.args={table:bn};const N=A.bind({});N.args={table:hn};N.decorators=[h=>n.jsx("div",{style:{position:"absolute",inset:0,padding:"var(--padding)"},children:n.jsx(h,{})})];const U=A.bind({});U.args={table:wn};U.parameters={docs:{description:{story:"If a `maxHeight` is set, the table should only fill that height if it needs to."}}};const $=A.bind({});$.args={table:yn};const M=()=>n.jsx(dn,{heading:n.jsx(un,{children:"Card heading"}),padding:!1,children:n.jsx(D,{table:{...ae,bordered:!1}})});M.parameters={docs:{source:{type:"dynamic"}}};const q=()=>{const h=["Section","Width","Height"];let g=["","m","m"],o=[...Array(175).keys()].map((l,t)=>[t,t*2,t*2]);const x=(l,t,r)=>l==="m"&&t==="ft"?r*3.28084:l==="ft"&&t==="m"?r/3.28084:r,i=(l,t,r,c)=>{o[t][r]=l.target.value,c()},R=l=>{o=o.concat([["","",""]]),l()},k=(l,t)=>{o=o.filter((r,c)=>c!==l),t()},p=(l,t,r)=>{const c=g[t],b=l.target.value;g=g.map((y,s)=>s===t?b:y),o=o.map(y=>y.map((s,u)=>u===t?x(c,b,s):s)),r()},w=()=>{const l=[{label:"10 / page",value:10},{label:"20 / page",value:20},{label:"50 / page",value:50},{label:"Show all",value:0}],[t,r]=S.useState(10),[c,b]=S.useState(1),[y,s]=S.useState(!1),u=()=>{s(!y)},j=()=>{const e=Math.ceil(o.length/t);b(e)},T=(c-1)*t,a=t===0?o.length-1:T+t,m={headers:[{cells:h.map(e=>({value:e})),actions:[{primary:!0,label:"Add",icon:"add",onClick:()=>{R(u),j()}}]},{cells:[{},{options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],value:g[1],type:"Select",native:!0,onChange:e=>p(e,1,u)},{options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],value:g[2],type:"Select",native:!0,onChange:e=>p(e,2,u)}]}],rows:o.slice(T,a).map((e,d)=>{const I=T+d;return{cells:[...Array(3).keys()].map((P,v)=>({value:e[v],type:"Input",onChange:C=>i(C,I,v,u)})),actions:[{label:"Delete",icon:"minus",onClick:()=>k(I,u)}]}}),footer:{pagination:{rowCount:o.length,selectedPage:c,rowsPerPage:{onChange:e=>{const{value:d}=e.target;r(Number(d))},options:l,value:t},onSelectPage:e=>b(e),small:!0}}};return n.jsx(D,{table:m})};return n.jsx(w,{})},K=()=>{const h=["Section","Width","Height"];let g=[...Array(20).keys()].map((x,i)=>({Section:Z.random(0,100),Width:Z.random(0,100),Height:Z.random(0,100)}));const o=()=>{const[x,i]=S.useState({Section:"up"}),R=(r,c)=>r.sort((b,y)=>Object.entries(c).map(([s,u])=>{switch(u){case"up":return b[s]-y[s];case"down":return y[s]-b[s];default:return 0}}).reduce((s,u)=>s||u,0)),k=(r,c,b)=>({dataSortCells:r.map(s=>{const u=Object.keys(c).includes(s)?c[s]:"",j=`${s[0].toUpperCase()}${s.slice(1)}`;return{key:s,value:j,hasSort:!0,sort:u,onSort:()=>{const T=u==="up"?"down":"up";b({[s]:T})}}})}),{dataSortCells:p}=k(h,x,i),l=[...R(g,x).map(r=>({cells:Object.entries(r).map(([b,y])=>({key:b,value:y,type:"Input",disabled:!0}))}))],t={headers:[{cells:p}],rows:l};return n.jsx(D,{table:t})};return n.jsx(o,{})},B=()=>{const h=["Section","Width","Height"];let g=[...Array(175).keys()].map((x,i)=>({Section:i,Width:i*2,Height:i*2}));const o=()=>{const x=[{label:"10 / page",value:10},{label:"20 / page",value:20},{label:"50 / page",value:50},{label:"Show all",value:0}],[i,R]=S.useState(10),[k,p]=S.useState(1),[w,l]=S.useState({}),[t,r]=S.useState({});S.useEffect(()=>{p(1)},[w,t]);const c=(k-1)*i,b=i===0?g.length-1:c+i,y=(e,d,I)=>e.filter(P=>Object.keys(d).every(v=>d[v]===""?!0:P[v].toString().includes(d[v]))).sort((P,v)=>Object.entries(I).map(([C,H])=>{switch(H){case"up":return P[C]-v[C];case"down":return v[C]-P[C];default:return 0}}).reduce((C,H)=>C||H,0)),s=(e,d,I,P,v)=>{const C=e.map(f=>{const V=Object.keys(P).includes(f)?P[f]:"",F=`${f[0].toUpperCase()}${f.slice(1)}`;return{key:f,value:F,hasSort:!0,sort:V,onSort:()=>{const ee=V===""?"up":V==="up"?"down":"";v({...P,[f]:ee})}}}),H=e.map(f=>{const V=Object.keys(d).includes(f)?d[f]:"";return{key:f,value:V,type:"Input",placeholder:"Filter",onChange:F=>I({...d,[f]:F.target.value})}});return{dataSortCells:C,dataFilterCells:H}},{dataSortCells:u,dataFilterCells:j}=s(h,w,l,t,r),T=y(g,w,t),a=[...T.slice(c,b).map(e=>({cells:Object.entries(e).map(([I,P])=>({key:I,value:P,type:"Input",disabled:!0}))}))],m={headers:[{cells:u},{cells:j}],rows:a,footer:{pagination:{rowCount:T.length,selectedPage:k,rowsPerPage:{onChange:e=>{const{value:d}=e.target;R(Number(d))},options:x,value:i},onSelectPage:e=>p(e),small:!0}}};return n.jsx(D,{table:m})};return n.jsx(o,{})},z=()=>{const h={tea:3.6,coffee:3.2,orange:4.1},g=[{label:"Tea",value:"tea"},{label:"Coffee",value:"coffee"},{label:"Orange juice",value:"orange"}],o={cells:[{type:"Select",options:g,value:{value:"tea"}},{type:"Input"},{type:"Static"}]},x=[...Array(15).keys()].map((a,m)=>({cells:[{type:"Select",options:g,value:{value:"tea"}},{type:"Input",value:m+1},{type:"Static"}]})),[i,R]=S.useState(x),k=[{label:"10 / page",value:10},{label:"20 / page",value:20},{label:"50 / page",value:50},{label:"Show all",value:0}],[p,w]=S.useState(10),[l,t]=S.useState(1),r=(l-1)*p,c=p===0?i.length-1:r+p,b=({newRow:a}={})=>{const m=ne(i,e=>{e.push(a??o)});R(m)},y=({rowIndex:a})=>{const m=ne(i,e=>{delete e[a]}).filter(e=>e);R(m)},s=({rowIndex:a,value:m})=>{const e=ne(i,d=>{d[a].cells[0].value.value=m});R(e)},u=({rowIndex:a,value:m})=>{const e=ne(i,d=>{d[a].cells[1].value=m});R(e)},j=({value:a})=>{const m=Number(a);return!Z.isNaN(m)&&Z.isInteger(m)&&m>0},T=i.slice(r,c).map((a,m)=>{const e=r+m;return i.length-1,{...a,cells:a==null?void 0:a.cells.map((d,I)=>{var f,V,F,ee,ie;const P=(F=(V=(f=a==null?void 0:a.cells)==null?void 0:f[0])==null?void 0:V.value)==null?void 0:F.value,v=Number((ie=(ee=a==null?void 0:a.cells)==null?void 0:ee[1])==null?void 0:ie.value),C=h==null?void 0:h[P],H=C&&j({value:v})?(C*v).toFixed(2):null;if(I===0)return{...d,onChange:re=>s({rowIndex:e,value:re.target.value})};if(I===1)return{...d,onChange:re=>u({rowIndex:e,value:re.target.value}),error:j({value:d.value})?null:"Must be valid whole number"};if(I===2)return{...d,value:H}}),actions:[{label:"Delete",icon:"minus",onClick:()=>y({rowIndex:e})}]}});return n.jsx(D,{table:{defaultEmptyRow:o,onAddRow:b,columnAlignment:["left","right","right"],headers:[{cells:[{value:"Drink"},{value:"Quantity"},{value:"Total Price (£)"}],actions:[{primary:!0,icon:"plus",label:"Add",onClick:()=>b()}]}],rows:T,footer:{pagination:{rowCount:i.length,selectedPage:l,rowsPerPage:{onChange:a=>{const{value:m}=a.target;w(Number(m))},options:k,value:p},onSelectPage:a=>t(a),small:!0}}}})},J=()=>{const h=["Section","Width","Height"];let g=Array.from(Array(10),(p,w)=>[w,w*2,w*2]);const[o,x]=S.useState({pastedValues:"",rowIndex:0,cellIndex:0}),i=(p,w,l,t)=>{g[w][l]=Number(p.target.value),t()},R=(p,w,l,t)=>{var c;let r=((c=p==null?void 0:p.clipboardData)==null?void 0:c.getData("text"))??"";return x({rowIndex:w,cellIndex:l,pastedValues:r}),t(),{pastedData:o}},k=()=>{const[p,w]=S.useState(!1),l=()=>{w(!p)},t={headers:[{cells:h.map(r=>({value:r}))}],rows:g.map((r,c)=>{const b=c;return{cells:[...Array(3).keys()].map((y,s)=>({value:r[s],type:"Input",onChange:u=>i(u,b,s,l),onPaste:u=>R(u,b,s,l)}))}})};return n.jsxs(n.Fragment,{children:[n.jsx(D,{table:t}),n.jsx(oe,{label:"Pasted Data",children:n.jsx(se,{value:o.pastedValues})}),n.jsx(oe,{label:"At Row",children:n.jsx(se,{value:o.rowIndex})}),n.jsx(oe,{label:"At Cell Index",children:n.jsx(se,{value:o.cellIndex})})]})};return n.jsx(k,{})},X=()=>{const h={fixedWidth:"auto",name:"Table title",actions:[{icon:"download",tooltip:"Download"}],columnAlignment:[...Array(10)].map((g,o)=>"right"),headers:[{cells:[...Array(10)].map((g,o)=>({value:"Heading"}))},{cells:[...Array(10)].map((g,o)=>({options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],type:"Select",searchable:!1,value:{label:"m",value:"m"},autoLayerWidth:!0}))}],rows:[...Array(10)].map((g,o)=>({cells:[...Array(10)].map((x,i)=>({value:123.45})),actions:[{icon:"help",tooltip:n.jsxs(le,{children:[n.jsx(W,{bold:!0,children:"Title goes here lorem ipsum"}),n.jsx(W,{children:"Label: 123.45m"}),n.jsx(W,{children:"Another label: 123.45m"}),n.jsx(W,{children:"Label: 123.45m"})]})}]}))};return n.jsx(D,{table:h})},Y=()=>{const h={fixedWidth:"auto",name:"Table title",actions:[{icon:"download",tooltip:"Download"}],headers:[{cells:[{value:"Label"},{value:"Value",colSpan:2}]}],rows:[{cells:[{value:"Country",style:{fontWeight:"bold"},width:"120px"},{value:"Norway",colSpan:2}],actions:[{icon:"help",tooltip:n.jsxs(le,{children:[n.jsx(W,{bold:!0,children:"Title goes here"}),n.jsx(W,{children:"Details go here"})]})}]},{cells:[{value:"Depth",style:{fontWeight:"bold"}},{value:123,width:"80px"},{options:[{label:"m",value:"m"},{label:"ft",value:"ft"}],value:{label:"m",value:"m"},type:"Select",width:"80px"}],actions:[{icon:"help",tooltip:n.jsxs(le,{children:[n.jsx(W,{bold:!0,children:"Title goes here"}),n.jsx(W,{children:"Details go here"})]})}]}]};return n.jsx(D,{table:h})};M.__docgenInfo={description:"",methods:[],displayName:"InCard"};q.__docgenInfo={description:"",methods:[],displayName:"Managed"};K.__docgenInfo={description:"",methods:[],displayName:"ManagedWithSort"};B.__docgenInfo={description:"",methods:[],displayName:"ManagedWithFilterAndMultipleSort"};z.__docgenInfo={description:"",methods:[],displayName:"AutoAddNewRow"};J.__docgenInfo={description:"",methods:[],displayName:"OnPasteCallback"};X.__docgenInfo={description:"",methods:[],displayName:"ExampleTableWithInfoTooltips"};Y.__docgenInfo={description:"",methods:[],displayName:"ExampleTableWithInlineUnits"};var ce,de,ue;te.parameters={...te.parameters,docs:{...(ce=te.parameters)==null?void 0:ce.docs,source:{originalSource:`args => {
2
2
  return <Table
3
3
  // eslint-disable-next-line react/jsx-props-no-spreading
4
4
  {...args} />;
@@ -1,4 +1,4 @@
1
- import{j as G}from"./jsx-runtime-eps93zm2.js";import{T as X}from"./table-CXUwJOBt.js";import{t as K,E as O,s as W,F as k,G as q,H as z,I as D,J as M,K as P,L as Q}from"./table.stories-data-DwfKQW7P.js";import"./index-DhsZuJvc.js";import"./index-Bk2sglWO.js";import"./index.es-D2piFfFj.js";import"./inheritsLoose-DR8r8Ogv.js";import"./extends-CF3RwP-h.js";import"./redux-tRgGMjwY.js";import"./objectSpread2-DW4nTBoq.js";import"./tiny-invariant-DqLgxztJ.js";import"./index-CUZDtIZe.js";import"./memoize-one.esm-CcMeOnPo.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./lodash-BHd_uQHh.js";import"./actions-CZK3mphC.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./button-C1sV-0mR.js";import"./spinner-AWUe4xwQ.js";import"./icon-BP4BO6-k.js";import"./index-CEuq6vkz.js";import"./tooltip-1V7clEnw.js";import"./types-BmbYqTX_.js";import"./types-UmZ4Y_CR.js";import"./badge-CLQ59MDF.js";import"./heading-NkLgQYoP.js";import"./help-icon-41R-Z9N1.js";import"./pagination-CqvxiZHR.js";import"./select-tIEV7vnw.js";import"./assertThisInitialized-B9jnkVVz.js";import"./text-B3-TSWok.js";import"./select.input-DIKP56UZ.js";import"./input-BW9trNAW.js";import"./input-group-BaRSJAEN.js";import"./input-group-addon-D68iUKV2.js";import"./number-input-uQOVHv2N.js";import"./index-CWz-hU-f.js";import"./index-DRSy5Ssd.js";import"./check-box-CaSrhzev.js";import"./slider-gZmYlxxz.js";import"./index-BI4_Bp97.js";import"./popover-DgUpTRMk.js";import"./flex-EllkLxgO.js";const Kr={title:"Basic/Table/Title & Header",component:X,args:{table:{...K}}},r=B=>G.jsx(X,{...B}),e=r.bind({});e.args={table:O};const s=r.bind({});s.args={table:W};const a=r.bind({});a.args={table:k};const t=r.bind({});t.args={table:q};const o=r.bind({});o.args={table:z};const n=r.bind({});n.args={table:D};const i=r.bind({});i.args={table:M};const p=r.bind({});p.args={table:P};const l=r.bind({});l.args={table:Q};var m,c,d;e.parameters={...e.parameters,docs:{...(m=e.parameters)==null?void 0:m.docs,source:{originalSource:`args => {
1
+ import{j as G}from"./jsx-runtime-eps93zm2.js";import{T as X}from"./table-CaaSoHex.js";import{t as K,E as O,s as W,F as k,G as q,H as z,I as D,J as M,K as P,L as Q}from"./table.stories-data-DwfKQW7P.js";import"./index-DhsZuJvc.js";import"./index-Bk2sglWO.js";import"./index.es-D2piFfFj.js";import"./inheritsLoose-DR8r8Ogv.js";import"./extends-CF3RwP-h.js";import"./redux-tRgGMjwY.js";import"./objectSpread2-DW4nTBoq.js";import"./tiny-invariant-DqLgxztJ.js";import"./index-CUZDtIZe.js";import"./memoize-one.esm-CcMeOnPo.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./lodash-BHd_uQHh.js";import"./actions-CZK3mphC.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./button-C1sV-0mR.js";import"./spinner-AWUe4xwQ.js";import"./icon-BP4BO6-k.js";import"./index-CEuq6vkz.js";import"./tooltip-1V7clEnw.js";import"./types-BmbYqTX_.js";import"./types-UmZ4Y_CR.js";import"./badge-CLQ59MDF.js";import"./heading-NkLgQYoP.js";import"./help-icon-41R-Z9N1.js";import"./pagination-BtguPxeR.js";import"./select-Z-GCZ-pY.js";import"./assertThisInitialized-B9jnkVVz.js";import"./text-B3-TSWok.js";import"./select.input-DIKP56UZ.js";import"./input-BW9trNAW.js";import"./input-group-BaRSJAEN.js";import"./input-group-addon-D68iUKV2.js";import"./number-input-uQOVHv2N.js";import"./index-CWz-hU-f.js";import"./index-DRSy5Ssd.js";import"./check-box-CaSrhzev.js";import"./slider-gZmYlxxz.js";import"./index-BI4_Bp97.js";import"./popover-DgUpTRMk.js";import"./flex-EllkLxgO.js";const Kr={title:"Basic/Table/Title & Header",component:X,args:{table:{...K}}},r=B=>G.jsx(X,{...B}),e=r.bind({});e.args={table:O};const s=r.bind({});s.args={table:W};const a=r.bind({});a.args={table:k};const t=r.bind({});t.args={table:q};const o=r.bind({});o.args={table:z};const n=r.bind({});n.args={table:D};const i=r.bind({});i.args={table:M};const p=r.bind({});p.args={table:P};const l=r.bind({});l.args={table:Q};var m,c,d;e.parameters={...e.parameters,docs:{...(m=e.parameters)==null?void 0:m.docs,source:{originalSource:`args => {
2
2
  return <Table
3
3
  // eslint-disable-next-line react/jsx-props-no-spreading
4
4
  {...args} />;
@@ -0,0 +1 @@
1
+ import{j as c}from"./jsx-runtime-eps93zm2.js";import{t as s,S as l}from"./toaster-7wnI6hqB.js";import{a as r,M as f,D as E}from"./message-B7G1ESkC.js";const I=({id:t,message:e={type:r.INFO,content:""},autoClose:o=6e3,onClose:i})=>{const{type:p=r.INFO}=e??{},u=({closeToast:d})=>c.jsx(E,{type:p,onClose:d,isInToast:!0,testId:t!==void 0?t.toString()+"-dismiss":void 0}),n=c.jsx(f,{message:{...e,visible:!0,width:"100%",maxHeight:"500px",withDismiss:!1}}),a=(()=>{switch(e==null?void 0:e.type){case r.SUCCESS:return s.TYPE.SUCCESS;case r.WARNING:return s.TYPE.WARNING;case r.ERROR:return s.TYPE.ERROR;default:return s.TYPE.INFO}})();return t!==void 0&&s.isActive(t)?s.update(t,{render:n,autoClose:o,onClose:i,type:a}):s(n,{toastId:t,autoClose:o,onClose:i,hideProgressBar:o===!1,icon:!1,closeOnClick:!1,pauseOnHover:!0,draggable:!1,closeButton:u,transition:l,type:a})},T=t=>{s.dismiss(t)};export{T as d,I as t};
@@ -0,0 +1,89 @@
1
+ import{j as s}from"./jsx-runtime-eps93zm2.js";import{w as ss,e as l,u as y,a as E}from"./index-Be0hXiyp.js";import{G as X}from"./grid-B6LFPf51.js";import{T as w}from"./text-B3-TSWok.js";import{F as Z}from"./flex-EllkLxgO.js";import{t as S,d as b}from"./toaster-DJeREs3e.js";import{B as t}from"./button-C1sV-0mR.js";import{S as $}from"./spacer-BWoNR27H.js";import{a as C}from"./message-B7G1ESkC.js";import"./index-DhsZuJvc.js";import"./index-CF7H4eMJ.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./index-Bk2sglWO.js";import"./toaster-7wnI6hqB.js";import"./index-CUZDtIZe.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./spinner-AWUe4xwQ.js";import"./icon-BP4BO6-k.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DR8r8Ogv.js";import"./index-CEuq6vkz.js";import"./tooltip-1V7clEnw.js";const es={type:C.SUCCESS,icon:!0,heading:"Heading",content:"Great results"},os={type:C.ERROR,icon:!0,heading:"Heading",content:"An error has happened",details:"Bad input data lorem ipsum dolor est compendum lorem ipsum."},ts={type:C.WARNING,icon:!0,heading:"Heading",content:"Warning message"},as={type:C.INFO,icon:!0,heading:"Heading",content:"Long content lorem ipsum dolor est compendum lorem ipsum."},Ds={title:"Modals/Toaster",parameters:{docs:{story:{inline:!1,iframeHeight:400}}},source:{type:"code"},args:{id:void 0,message:as,autoClose:6e3,onClose:()=>{}}},h=e=>s.jsx(t,{onClick:()=>S({...e,onClose:()=>console.log("toast closed")}),label:"Show toast"}),T=h.bind({}),u=h.bind({});u.args={message:es};const d=h.bind({});d.args={message:ts};const m=h.bind({});m.args={message:os};const i=()=>s.jsx(t,{label:"Show Toast",onClick:()=>{const e=Math.random()>=.5;S({message:{type:e?"Success":"Error",icon:!0,content:e?"Success":"Error"},onClose:()=>console.log("toast closed"),id:"uniqueId"})}});i.parameters={docs:{iframeHeight:200,description:{story:"Pass a unique `id` in the `toast` object to prevent duplicates. Successive toasts with the same ID will update the existing toast."}}};const p=()=>{const e="sessionExpiring",a={type:"Info",content:s.jsxs(X,{children:[s.jsx(w,{bold:!0,children:"You will be signed out soon"}),s.jsx(w,{children:"For your security, you will be automatically signed out in 30 minutes unless you extend your session."}),s.jsx($,{height:"var(--padding-xxs)"}),s.jsxs(Z,{gap:"var(--padding-xs)",children:[s.jsx(t,{label:"Extend session",small:!0,colored:"success",onClick:()=>b(e)}),s.jsx(t,{label:"Dismiss",small:!0,onClick:()=>b(e)})]})]})};return s.jsx(t,{label:"Show Toast",onClick:()=>S({message:a,autoClose:!1,id:e})})},g=()=>{const e="sessionExpiringSoon",a={type:"Error",content:s.jsxs(X,{children:[s.jsx(w,{bold:!0,children:"You will be signed out very soon"}),s.jsx(w,{children:"For your security, you will be automatically signed out in 30 minutes unless you extend your session."}),s.jsx($,{height:"var(--padding-xxs)"}),s.jsxs(Z,{gap:"var(--padding-xs)",children:[s.jsx(t,{label:"Extend session",small:!0,colored:"success",onClick:()=>b(e)}),s.jsx(t,{label:"Dismiss",small:!0,onClick:()=>b(e)})]})]})};return s.jsx(t,{label:"Show Toast",onClick:()=>S({message:a,autoClose:!1,id:e})})},x=()=>{const e={type:"Success",content:"Your session has been extended for 1 hour"};return s.jsx(t,{label:"Show Toast",onClick:()=>S({message:e})})},c=h.bind({});c.args={id:"testId",autoClose:50};c.play=async({canvasElement:e,step:a})=>{const o=e.parentElement?ss(e.parentElement):null;await l(o).toBeTruthy(),o&&(await a("Toast should appear when triggered",async()=>{const r=o.getByText("Show toast");await y.click(r);const n=o.getByRole("alert");await l(n).toBeInTheDocument()}),await a("Duplicate toasts shouldn't be created",async()=>{const r=o.getByText("Show toast");await y.click(r);const n=o.queryAllByRole("alert");await l(n).toHaveLength(1)}),await a("Toast should disappear when close button pressed",async()=>{const r=o.getByRole("alert"),n=o.getByTestId("testId-dismiss");await y.click(n),await E(()=>l(r).not.toBeInTheDocument(),{timeout:2e3})}),await a("Toast should automatically close",async()=>{const r=o.getByText("Show toast");await y.click(r);const n=o.getByRole("alert");await E(()=>l(n).not.toBeInTheDocument(),{timeout:2e3})}))};i.__docgenInfo={description:"",methods:[],displayName:"PreventDuplicates"};p.__docgenInfo={description:"",methods:[],displayName:"SessionExpiring"};g.__docgenInfo={description:"",methods:[],displayName:"SessionExpiringSoon"};x.__docgenInfo={description:"",methods:[],displayName:"SessionExtended"};var I,f,B;T.parameters={...T.parameters,docs:{...(I=T.parameters)==null?void 0:I.docs,source:{originalSource:`args => {
2
+ return <Button onClick={() => toast({
3
+ ...args,
4
+ onClose: () => console.log('toast closed')
5
+ })} label="Show toast" />;
6
+ }`,...(B=(f=T.parameters)==null?void 0:f.docs)==null?void 0:B.source}}};var k,D,j;u.parameters={...u.parameters,docs:{...(k=u.parameters)==null?void 0:k.docs,source:{originalSource:`args => {
7
+ return <Button onClick={() => toast({
8
+ ...args,
9
+ onClose: () => console.log('toast closed')
10
+ })} label="Show toast" />;
11
+ }`,...(j=(D=u.parameters)==null?void 0:D.docs)==null?void 0:j.source}}};var _,v,A;d.parameters={...d.parameters,docs:{...(_=d.parameters)==null?void 0:_.docs,source:{originalSource:`args => {
12
+ return <Button onClick={() => toast({
13
+ ...args,
14
+ onClose: () => console.log('toast closed')
15
+ })} label="Show toast" />;
16
+ }`,...(A=(v=d.parameters)==null?void 0:v.docs)==null?void 0:A.source}}};var O,F,R;m.parameters={...m.parameters,docs:{...(O=m.parameters)==null?void 0:O.docs,source:{originalSource:`args => {
17
+ return <Button onClick={() => toast({
18
+ ...args,
19
+ onClose: () => console.log('toast closed')
20
+ })} label="Show toast" />;
21
+ }`,...(R=(F=m.parameters)==null?void 0:F.docs)==null?void 0:R.source}}};var G,M,H;i.parameters={...i.parameters,docs:{...(G=i.parameters)==null?void 0:G.docs,source:{originalSource:`() => <Button label="Show Toast" onClick={() => {
22
+ const isSuccess = Math.random() >= 0.5;
23
+ toast({
24
+ message: ({
25
+ type: isSuccess ? 'Success' : 'Error',
26
+ icon: true,
27
+ content: isSuccess ? 'Success' : 'Error'
28
+ } as IMessageType),
29
+ onClose: () => console.log('toast closed'),
30
+ id: 'uniqueId'
31
+ });
32
+ }} />`,...(H=(M=i.parameters)==null?void 0:M.docs)==null?void 0:H.source}}};var N,Y,W;p.parameters={...p.parameters,docs:{...(N=p.parameters)==null?void 0:N.docs,source:{originalSource:`() => {
33
+ const TOAST_ID = 'sessionExpiring';
34
+ const message = ({
35
+ type: 'Info',
36
+ content: <Grid>
37
+ <Text bold>You will be signed out soon</Text>
38
+ <Text>
39
+ For your security, you will be automatically signed out in 30 minutes
40
+ unless you extend your session.
41
+ </Text>
42
+ <Spacer height="var(--padding-xxs)" />
43
+ <Flex gap="var(--padding-xs)">
44
+ <Button label="Extend session" small colored="success" onClick={() => dismissToast(TOAST_ID)} />
45
+ <Button label="Dismiss" small onClick={() => dismissToast(TOAST_ID)} />
46
+ </Flex>
47
+ </Grid>
48
+ } as IMessageType);
49
+ return <Button label="Show Toast" onClick={() => toast({
50
+ message,
51
+ autoClose: false,
52
+ id: TOAST_ID
53
+ })} />;
54
+ }`,...(W=(Y=p.parameters)==null?void 0:Y.docs)==null?void 0:W.source}}};var q,P,L;g.parameters={...g.parameters,docs:{...(q=g.parameters)==null?void 0:q.docs,source:{originalSource:`() => {
55
+ const TOAST_ID = 'sessionExpiringSoon';
56
+ const message = ({
57
+ type: 'Error',
58
+ content: <Grid>
59
+ <Text bold>You will be signed out very soon</Text>
60
+ <Text>
61
+ For your security, you will be automatically signed out in 30 minutes
62
+ unless you extend your session.
63
+ </Text>
64
+ <Spacer height="var(--padding-xxs)" />
65
+ <Flex gap="var(--padding-xs)">
66
+ <Button label="Extend session" small colored="success" onClick={() => dismissToast(TOAST_ID)} />
67
+ <Button label="Dismiss" small onClick={() => dismissToast(TOAST_ID)} />
68
+ </Flex>
69
+ </Grid>
70
+ } as IMessageType);
71
+ return <Button label="Show Toast" onClick={() => toast({
72
+ message,
73
+ autoClose: false,
74
+ id: TOAST_ID
75
+ })} />;
76
+ }`,...(L=(P=g.parameters)==null?void 0:P.docs)==null?void 0:L.source}}};var U,z,J;x.parameters={...x.parameters,docs:{...(U=x.parameters)==null?void 0:U.docs,source:{originalSource:`() => {
77
+ const message = ({
78
+ type: 'Success',
79
+ content: 'Your session has been extended for 1 hour'
80
+ } as IMessageType);
81
+ return <Button label="Show Toast" onClick={() => toast({
82
+ message
83
+ })} />;
84
+ }`,...(J=(z=x.parameters)==null?void 0:z.docs)==null?void 0:J.source}}};var K,Q,V;c.parameters={...c.parameters,docs:{...(K=c.parameters)==null?void 0:K.docs,source:{originalSource:`args => {
85
+ return <Button onClick={() => toast({
86
+ ...args,
87
+ onClose: () => console.log('toast closed')
88
+ })} label="Show toast" />;
89
+ }`,...(V=(Q=c.parameters)==null?void 0:Q.docs)==null?void 0:V.source}}};const js=["Default","Success","Warning","Error","PreventDuplicates","SessionExpiring","SessionExpiringSoon","SessionExtended","Test"];export{T as Default,m as Error,i as PreventDuplicates,p as SessionExpiring,g as SessionExpiringSoon,x as SessionExtended,u as Success,c as Test,d as Warning,js as __namedExportsOrder,Ds as default};
@@ -0,0 +1,141 @@
1
+ import{j as e}from"./jsx-runtime-eps93zm2.js";import{r as de}from"./index-DhsZuJvc.js";import{w as oe,u as j,e as A}from"./index-Be0hXiyp.js";import{F as f}from"./flex-EllkLxgO.js";import{T as C}from"./text-B3-TSWok.js";import{T as x}from"./toggle-Bo-JPbUP.js";import"./index-CF7H4eMJ.js";import"./index-Bk2sglWO.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./help-icon-41R-Z9N1.js";import"./tooltip-1V7clEnw.js";import"./index-CUZDtIZe.js";import"./icon-BP4BO6-k.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DR8r8Ogv.js";import"./index-CEuq6vkz.js";const{useArgs:le}=__STORYBOOK_MODULE_PREVIEW_API__,De={title:"Forms/Toggle",component:x,args:{label:"Label"}},s=a=>{const[{checked:r},t]=le(),n=()=>{t({checked:!r})};return e.jsx(x,{...a,onChange:n})},T=s.bind({}),d=s.bind({});d.args={disabled:!0};const l=s.bind({});l.args={checked:!0,disabled:!0};const g=s.bind({});g.args={small:!0};const p=s.bind({});p.args={label:null};const i=s.bind({});i.args={helpText:"Help text"};const h=s.bind({});h.args={onClickHelp:()=>console.log("Help clicked")};const u=()=>e.jsxs(e.Fragment,{children:[e.jsx(x,{display:"block",label:e.jsxs(f,{justifyContent:"space-between",wrap:!1,gap:!0,children:[e.jsx(C,{bold:!0,children:"Label"}),e.jsx(C,{success:!0,children:"Released yesterday"})]}),onChange:()=>{}}),e.jsx(x,{label:e.jsxs(f,{justifyContent:"space-between",wrap:!1,gap:!0,children:[e.jsx(C,{bold:!0,children:"Label"}),e.jsx(C,{success:!0,children:"Released yesterday"})]}),onChange:()=>{}})]}),m=()=>{const[a,r]=de.useState(!1);return e.jsx(x,{name:"name",label:"Label",checked:a,onChange:t=>{const{name:n,value:b,checked:y}=t.target;r(y),console.log(n,b,y)}})},k=s.bind({});k.args={helpText:"Help text",disabled:!0};const c=s.bind({});c.args={testId:"testId"};c.play=async({canvasElement:a,step:r})=>{const t=oe(a);await r("Clicking checkbox should toggle it",async()=>{const n=t.getByTestId("testId"),b=n.querySelector("input");await j.click(n),await A(b).toBeChecked(),await j.click(n),await A(b).not.toBeChecked()})};const o=s.bind({});o.args={testId:"testId",disabled:!0};o.play=async({canvasElement:a,step:r})=>{const t=oe(a);await r("Clicking disabled checkbox shouldn't toggle it",async()=>{const n=t.getByTestId("testId");await n.click(),await A(n.querySelector("input")).not.toBeChecked()})};u.__docgenInfo={description:"",methods:[],displayName:"Display"};m.__docgenInfo={description:"",methods:[],displayName:"TestClickevt"};var S,w,D;T.parameters={...T.parameters,docs:{...(S=T.parameters)==null?void 0:S.docs,source:{originalSource:`args => {
2
+ const [{
3
+ checked
4
+ }, updateArgs] = useArgs();
5
+ const handleChange = () => {
6
+ updateArgs({
7
+ checked: !checked
8
+ });
9
+ };
10
+ return <Toggle
11
+ // eslint-disable-next-line react/jsx-props-no-spreading
12
+ {...args} onChange={handleChange} />;
13
+ }`,...(D=(w=T.parameters)==null?void 0:w.docs)==null?void 0:D.source}}};var _,I,v;d.parameters={...d.parameters,docs:{...(_=d.parameters)==null?void 0:_.docs,source:{originalSource:`args => {
14
+ const [{
15
+ checked
16
+ }, updateArgs] = useArgs();
17
+ const handleChange = () => {
18
+ updateArgs({
19
+ checked: !checked
20
+ });
21
+ };
22
+ return <Toggle
23
+ // eslint-disable-next-line react/jsx-props-no-spreading
24
+ {...args} onChange={handleChange} />;
25
+ }`,...(v=(I=d.parameters)==null?void 0:I.docs)==null?void 0:v.source}}};var H,F,L;l.parameters={...l.parameters,docs:{...(H=l.parameters)==null?void 0:H.docs,source:{originalSource:`args => {
26
+ const [{
27
+ checked
28
+ }, updateArgs] = useArgs();
29
+ const handleChange = () => {
30
+ updateArgs({
31
+ checked: !checked
32
+ });
33
+ };
34
+ return <Toggle
35
+ // eslint-disable-next-line react/jsx-props-no-spreading
36
+ {...args} onChange={handleChange} />;
37
+ }`,...(L=(F=l.parameters)==null?void 0:F.docs)==null?void 0:L.source}}};var E,O,R;g.parameters={...g.parameters,docs:{...(E=g.parameters)==null?void 0:E.docs,source:{originalSource:`args => {
38
+ const [{
39
+ checked
40
+ }, updateArgs] = useArgs();
41
+ const handleChange = () => {
42
+ updateArgs({
43
+ checked: !checked
44
+ });
45
+ };
46
+ return <Toggle
47
+ // eslint-disable-next-line react/jsx-props-no-spreading
48
+ {...args} onChange={handleChange} />;
49
+ }`,...(R=(O=g.parameters)==null?void 0:O.docs)==null?void 0:R.source}}};var B,W,q;p.parameters={...p.parameters,docs:{...(B=p.parameters)==null?void 0:B.docs,source:{originalSource:`args => {
50
+ const [{
51
+ checked
52
+ }, updateArgs] = useArgs();
53
+ const handleChange = () => {
54
+ updateArgs({
55
+ checked: !checked
56
+ });
57
+ };
58
+ return <Toggle
59
+ // eslint-disable-next-line react/jsx-props-no-spreading
60
+ {...args} onChange={handleChange} />;
61
+ }`,...(q=(W=p.parameters)==null?void 0:W.docs)==null?void 0:q.source}}};var N,P,K;i.parameters={...i.parameters,docs:{...(N=i.parameters)==null?void 0:N.docs,source:{originalSource:`args => {
62
+ const [{
63
+ checked
64
+ }, updateArgs] = useArgs();
65
+ const handleChange = () => {
66
+ updateArgs({
67
+ checked: !checked
68
+ });
69
+ };
70
+ return <Toggle
71
+ // eslint-disable-next-line react/jsx-props-no-spreading
72
+ {...args} onChange={handleChange} />;
73
+ }`,...(K=(P=i.parameters)==null?void 0:P.docs)==null?void 0:K.source}}};var M,U,V;h.parameters={...h.parameters,docs:{...(M=h.parameters)==null?void 0:M.docs,source:{originalSource:`args => {
74
+ const [{
75
+ checked
76
+ }, updateArgs] = useArgs();
77
+ const handleChange = () => {
78
+ updateArgs({
79
+ checked: !checked
80
+ });
81
+ };
82
+ return <Toggle
83
+ // eslint-disable-next-line react/jsx-props-no-spreading
84
+ {...args} onChange={handleChange} />;
85
+ }`,...(V=(U=h.parameters)==null?void 0:U.docs)==null?void 0:V.source}}};var Y,z,G;u.parameters={...u.parameters,docs:{...(Y=u.parameters)==null?void 0:Y.docs,source:{originalSource:`() => <>
86
+ <Toggle display="block" label={<Flex justifyContent="space-between" wrap={false} gap>
87
+ <Text bold>Label</Text>
88
+ <Text success>Released yesterday</Text>
89
+ </Flex>} onChange={() => {}} />
90
+ <Toggle label={<Flex justifyContent="space-between" wrap={false} gap>
91
+ <Text bold>Label</Text>
92
+ <Text success>Released yesterday</Text>
93
+ </Flex>} onChange={() => {}} />
94
+ </>`,...(G=(z=u.parameters)==null?void 0:z.docs)==null?void 0:G.source}}};var J,Q,X;m.parameters={...m.parameters,docs:{...(J=m.parameters)==null?void 0:J.docs,source:{originalSource:`() => {
95
+ const [checked, setChecked] = useState(false);
96
+ return <Toggle name="name" label="Label" checked={checked} onChange={evt => {
97
+ const {
98
+ name,
99
+ value,
100
+ checked
101
+ } = evt.target;
102
+ setChecked(checked);
103
+ console.log(name, value, checked);
104
+ }} />;
105
+ }`,...(X=(Q=m.parameters)==null?void 0:Q.docs)==null?void 0:X.source}}};var Z,$,ee;k.parameters={...k.parameters,docs:{...(Z=k.parameters)==null?void 0:Z.docs,source:{originalSource:`args => {
106
+ const [{
107
+ checked
108
+ }, updateArgs] = useArgs();
109
+ const handleChange = () => {
110
+ updateArgs({
111
+ checked: !checked
112
+ });
113
+ };
114
+ return <Toggle
115
+ // eslint-disable-next-line react/jsx-props-no-spreading
116
+ {...args} onChange={handleChange} />;
117
+ }`,...(ee=($=k.parameters)==null?void 0:$.docs)==null?void 0:ee.source}}};var ne,se,ae;c.parameters={...c.parameters,docs:{...(ne=c.parameters)==null?void 0:ne.docs,source:{originalSource:`args => {
118
+ const [{
119
+ checked
120
+ }, updateArgs] = useArgs();
121
+ const handleChange = () => {
122
+ updateArgs({
123
+ checked: !checked
124
+ });
125
+ };
126
+ return <Toggle
127
+ // eslint-disable-next-line react/jsx-props-no-spreading
128
+ {...args} onChange={handleChange} />;
129
+ }`,...(ae=(se=c.parameters)==null?void 0:se.docs)==null?void 0:ae.source}}};var re,te,ce;o.parameters={...o.parameters,docs:{...(re=o.parameters)==null?void 0:re.docs,source:{originalSource:`args => {
130
+ const [{
131
+ checked
132
+ }, updateArgs] = useArgs();
133
+ const handleChange = () => {
134
+ updateArgs({
135
+ checked: !checked
136
+ });
137
+ };
138
+ return <Toggle
139
+ // eslint-disable-next-line react/jsx-props-no-spreading
140
+ {...args} onChange={handleChange} />;
141
+ }`,...(ce=(te=o.parameters)==null?void 0:te.docs)==null?void 0:ce.source}}};const _e=["Default","Disabled","DisabledChecked","Small","Standalone","HelpText","OnClickHelp","Display","TestClickevt","DisabledWithHelpText","Test","TestDisabled"];export{T as Default,d as Disabled,l as DisabledChecked,k as DisabledWithHelpText,u as Display,i as HelpText,h as OnClickHelp,g as Small,p as Standalone,c as Test,m as TestClickevt,o as TestDisabled,_e as __namedExportsOrder,De as default};
@@ -1,4 +1,4 @@
1
- import{j as e}from"./jsx-runtime-eps93zm2.js";import{r as m}from"./index-DhsZuJvc.js";import{d as r,r as ct}from"./index-CWz-hU-f.js";import{c as mt}from"./index-Bk2sglWO.js";import{u as pt}from"./use-previous-D775JrO6.js";import{M as Te}from"./actions-CZK3mphC.js";import{I as gt}from"./input-group-addon-D68iUKV2.js";import{B as c}from"./button-C1sV-0mR.js";import{T as ht}from"./tooltip-1V7clEnw.js";import{I as vt}from"./input-group-BaRSJAEN.js";import{S as V}from"./spacer-BWoNR27H.js";import{T as Ln}from"./text-B3-TSWok.js";import{I as ft}from"./input-BW9trNAW.js";import{M as Se}from"./types-BmbYqTX_.js";import{l as T}from"./lodash-BHd_uQHh.js";import{D as yt}from"./divider-DY9nJ_7N.js";import{R as Kn,C as ge}from"./row-4iAGREkV.js";import{F as w}from"./field-C5_fLDpy.js";import{M as he}from"./message-ttrR1AaP.js";import"./index-DRSy5Ssd.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./icon-BP4BO6-k.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DR8r8Ogv.js";import"./index-CEuq6vkz.js";import"./types-UmZ4Y_CR.js";import"./badge-CLQ59MDF.js";import"./spinner-AWUe4xwQ.js";import"./index-CUZDtIZe.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./label-hiSz3I8H.js";import"./help-icon-41R-Z9N1.js";const Ct=()=>{const n=m.useRef(null);return m.useLayoutEffect(()=>{n.current&&(n.current(),n.current=null)}),t=>{n.current=t}},bt=(n,a)=>{const t=a==null?void 0:a[n];return t||(console.log(`Warning: 'unitTemplate' does not define a preferred unit for '${n}'. Defaulting to standard unit.`),r.unitFromQuantity(n)??"")};var C=(n=>(n.CUSTOM="custom",n.PREDEFINED="predefined",n))(C||{});const $n=n=>n==="undefined"||n===void 0||n===""||n==="null"||n===null||n==="NaN"||isNaN(n),zn=(n="",a,t="",l=!1)=>{if(l)return n;if(a&&!$n(n))try{const o=r.isValueWithUnit(n)?n:r.withUnit(n,t),d=r.convertSamePrecision(o,a);return r.getValue(d)}catch{}return n},Ut=n=>n?!!r.getUnit(n):!1,_=(n="",a,t,l)=>{if(l)return n;const o=Ut(n)||r.isValueWithUnit(n),d=r.getValue(n);return $n(d)?d:o?zn(d,a,t,l):n},Ne=n=>T.isObject(n)&&!T.isArray(n)&&!T.isFunction(n)?T.get(n,"fieldName",""):typeof n=="string"?n:"",xt=n=>T.isObjectLike(n)&&T.has(n,"message"),It=n=>typeof n=="string"?n:xt(n)?n.message:null;var wt=ct();const Vt=n=>n.search(RegExp(/(^0{2}\.)|(^0+[1-9])/g))===0,Ae=(n,a)=>{var j;const{allowEmpty:t=!1,autoValue:l,placeholder:o,disabledValidation:d=!1}=a||{},i=String(n);if(d||l||o)return null;const g=wt.isValueWithUnit(i)?r.getValue(i):i;if(t&&g==="")return null;if(Vt(g))return"Invalid number format due to leading zeroes";const h=r.validateNumber(g);if(!h.valid){const ie=((j=h==null?void 0:h.errors)==null?void 0:j[0])??null;return It(ie)}return null},qe=(n="")=>{var a;return(a=r.KNOWN_UNITS)==null?void 0:a.includes(n)},jt=(n,a)=>{const t=r.getUnit(n||"");return qe(a)&&qe(t)},Et="_predefinedMenuActive_1yvt4_1",kt={predefinedMenuActive:Et},p=({name:n,placeholder:a="",disabled:t=!1,disabledUnit:l=!1,error:o=null,left:d=!1,small:i=!1,width:g="100%",value:h,unitkey:j="",initUnit:ie,noConversion:Gn=!1,onChange:le=()=>{},onClick:St=()=>{},onFocus:Jn=()=>{},onSwitchUnit:ve=()=>{},unitTemplate:fe,doNotConvertValue:q=!1,testId:k,warning:Yn=null,predefinedOptions:x,initialPredefinedOption:Zn=!1,shouldLinkAutomaticly:ye=!0,selectedPredefinedOptionKey:Ce,validationCallback:be=()=>({name:"",error:null}),disabledValidation:Ue=!1,allowEmpty:xe=!1,autoValue:I})=>{typeof h=="number"&&(h=`${h}`);const Qn=Ct(),[ue="",P=""]=h!==void 0?r.split(h):[],Ie=I?r.getUnit(I):"",we=m.useMemo(()=>bt(j,fe),[j,fe]),Xn=jt(h,we),U=ie||we||P,et=pt(U),Ve=_(h,U,P,q),je=_(I,U,Ie,q),nt=Ve!==""?{value:Ve,unit:U}:je!==""?{value:je,unit:U}:{value:ue,unit:P},[v,ne]=m.useState(nt),[tt,oe]=m.useState(null),[E,de]=m.useState(Zn?C.PREDEFINED:C.CUSTOM),ce=ue===""&&I,M=x&&x.find(s=>{if(!(s!=null&&s.value))return;if(Ce)return Ce===s.valueKey;const u=r.isValueWithUnit(s.value)?r.getUnit(s.value):"";return r.withUnit(zn(h,u),u)===s.value}),at=()=>{if(j)try{const s=ce?I:h??"";let u=r.altUnitsList(s,j);return r.getValue(s)===""?u.map(f=>["",f[1]]):u}catch{return null}},rt=s=>{const u=Ne(n),f=s.target,{value:b,selectionStart:D}=f,ke=r.cleanNumStr(b.replaceAll(" ","").replaceAll("|","")),me=r.withUnit(ke,(v==null?void 0:v.unit)||""),ut=r.getValue(me),pe=Ae(ut,{allowEmpty:xe,autoValue:I,placeholder:a,disabledValidation:Ue});if(pe===null){le({target:{value:me,name:u}});const[ot,dt]=r.split(me);ne({value:ot,unit:dt}),oe(null),be(u,null)}else ne({value:ke,unit:v.unit}),oe(pe),be(u,pe);Qn(()=>{f.selectionStart=D,f.selectionEnd=D})},st=(s,u)=>{u===v.unit||isNaN(Number(s))||(ne({value:s,unit:u}),ve&&ve(u))};m.useEffect(()=>{if(U){let f,b="";et!==U?(f=_(h,U,P,q),b=U):r.withUnit(v.value,v.unit)!==h&&(f=_(h,v.unit,P,q),b=v.unit),f!==void 0&&ne({value:f,unit:b}),x&&de(M&&ye?C.PREDEFINED:C.CUSTOM)}const s=r.checkAndCleanDecimalComma(ue),u=Ae(s,{allowEmpty:xe,autoValue:I,placeholder:a,disabledValidation:Ue});oe(u)},[U,h,o,ye]);const te=at(),ae=r.label(v.unit)||v.unit||"",it=Gn||!te||te&&te.length===1,Ee=Ne(n);let re;const lt=s=>{const u=s!=null&&s.value?s.value:"",[f="",b=""]=r.isValueWithUnit(u)?r.split(u):[u];return{type:Se.OPTION,inline:!0,onClick:()=>{r.validateNumber(f).valid&&!t&&(de(C.PREDEFINED),le({target:{value:u,name:typeof n=="string"?n:(n==null?void 0:n.fieldName)||"",predefinedSelected:!0,predefinedOption:s}}))},label:e.jsxs(e.Fragment,{children:[e.jsx(Ln,{children:s.label}),e.jsx(V,{width:"20px",height:"0"})]}),description:r.isValueWithUnit(u)?`${f} ${b}`:u,selected:M===s&&E===C.PREDEFINED}};if(re=[{type:Se.OPTION,inline:!0,onClick:()=>{E!==C.CUSTOM&&!t&&le({target:{value:r.withUnit(v.value,v.unit),name:typeof n=="string"?n:(n==null?void 0:n.fieldName)||""}})},label:"Custom",selected:E===C.CUSTOM}],x!=null&&x.length){const s=x.map(lt);re=[...re,...s]}return e.jsx("div",{className:E===C.PREDEFINED?mt(kt.predefinedMenuActive):"",children:e.jsxs(vt,{small:i,width:g,children:[x&&e.jsx(ht,{text:E===C.PREDEFINED?M==null?void 0:M.label:"",children:e.jsx(Te,{maxHeight:380,groupOrder:"first",testId:k&&`${k}-predefined-menu`,disabled:t,menu:{colored:!0,trigger:"Component",component:e.jsx(c,{groupOrder:"first",active:E===C.PREDEFINED,icon:E===C.PREDEFINED?"link":"unlink"}),small:i,sections:re}})}),e.jsx(ft,{type:"text",name:Ee,testId:k,disabled:t,placeholder:ce?_(I,v.unit,Ie,q):a,value:v.value,onChange:rt,onFocus:Jn,error:o||tt,warning:Yn,right:!d},Ee),ae&&(it||!Xn?e.jsx(gt,{groupOrder:"last",children:ae}):e.jsx(Te,{maxHeight:380,groupOrder:"last",disabled:l,testId:k&&`${k}-menu`,menu:{label:ae,trigger:"DropDownButton",small:i,sections:te.map(([s,u,f])=>{const b=f||u||"";return{type:"Option",label:isNaN(Number(s))?"":s,inline:!0,onClick:D=>{D.stopPropagation(),st(ce?"":s,u)},description:b,selected:b===ae,testId:`${k}-unit-${b}`}})}}))]})})};p.__docgenInfo={description:"",methods:[],displayName:"UnitInput",props:{name:{required:!0,tsType:{name:"union",raw:"string | { fieldName?: string }",elements:[{name:"string"},{name:"signature",type:"object",raw:"{ fieldName?: string }",signature:{properties:[{key:"fieldName",value:{name:"string",required:!1}}]}}]},description:""},placeholder:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"''",computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},disabledUnit:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},error:{required:!1,tsType:{name:"union",raw:"string | null | boolean",elements:[{name:"string"},{name:"null"},{name:"boolean"}]},description:"",defaultValue:{value:"null",computed:!1}},left:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},small:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},width:{required:!1,tsType:{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},description:"",defaultValue:{value:"'100%'",computed:!1}},value:{required:!1,tsType:{name:"string"},description:""},unitkey:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"''",computed:!1}},initUnit:{required:!1,tsType:{name:"string"},description:""},noConversion:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},doNotConvertValue:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},testId:{required:!1,tsType:{name:"string"},description:""},warning:{required:!1,tsType:{name:"union",raw:"string | boolean | null",elements:[{name:"string"},{name:"boolean"},{name:"null"}]},description:"",defaultValue:{value:"null",computed:!1}},predefinedOptions:{required:!1,tsType:{name:"union",raw:"IPredefinedOption[] | null",elements:[{name:"Array",elements:[{name:"IPredefinedOption"}],raw:"IPredefinedOption[]"},{name:"null"}]},description:""},initialPredefinedOption:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},shouldLinkAutomaticly:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},selectedPredefinedOptionKey:{required:!1,tsType:{name:"string"},description:""},validationCallback:{required:!1,tsType:{name:"signature",type:"function",raw:`(
1
+ import{j as e}from"./jsx-runtime-eps93zm2.js";import{r as m}from"./index-DhsZuJvc.js";import{d as r,r as ct}from"./index-CWz-hU-f.js";import{c as mt}from"./index-Bk2sglWO.js";import{u as pt}from"./use-previous-D775JrO6.js";import{M as Te}from"./actions-CZK3mphC.js";import{I as gt}from"./input-group-addon-D68iUKV2.js";import{B as c}from"./button-C1sV-0mR.js";import{T as ht}from"./tooltip-1V7clEnw.js";import{I as vt}from"./input-group-BaRSJAEN.js";import{S as V}from"./spacer-BWoNR27H.js";import{T as Ln}from"./text-B3-TSWok.js";import{I as ft}from"./input-BW9trNAW.js";import{M as Se}from"./types-BmbYqTX_.js";import{l as T}from"./lodash-BHd_uQHh.js";import{D as yt}from"./divider-DY9nJ_7N.js";import{R as Kn,C as ge}from"./row-4iAGREkV.js";import{F as w}from"./field-C5_fLDpy.js";import{M as he}from"./message-B7G1ESkC.js";import"./index-DRSy5Ssd.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./icon-BP4BO6-k.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DR8r8Ogv.js";import"./index-CEuq6vkz.js";import"./types-UmZ4Y_CR.js";import"./badge-CLQ59MDF.js";import"./spinner-AWUe4xwQ.js";import"./index-CUZDtIZe.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./label-hiSz3I8H.js";import"./help-icon-41R-Z9N1.js";const Ct=()=>{const n=m.useRef(null);return m.useLayoutEffect(()=>{n.current&&(n.current(),n.current=null)}),t=>{n.current=t}},bt=(n,a)=>{const t=a==null?void 0:a[n];return t||(console.log(`Warning: 'unitTemplate' does not define a preferred unit for '${n}'. Defaulting to standard unit.`),r.unitFromQuantity(n)??"")};var C=(n=>(n.CUSTOM="custom",n.PREDEFINED="predefined",n))(C||{});const $n=n=>n==="undefined"||n===void 0||n===""||n==="null"||n===null||n==="NaN"||isNaN(n),zn=(n="",a,t="",l=!1)=>{if(l)return n;if(a&&!$n(n))try{const o=r.isValueWithUnit(n)?n:r.withUnit(n,t),d=r.convertSamePrecision(o,a);return r.getValue(d)}catch{}return n},Ut=n=>n?!!r.getUnit(n):!1,_=(n="",a,t,l)=>{if(l)return n;const o=Ut(n)||r.isValueWithUnit(n),d=r.getValue(n);return $n(d)?d:o?zn(d,a,t,l):n},Ne=n=>T.isObject(n)&&!T.isArray(n)&&!T.isFunction(n)?T.get(n,"fieldName",""):typeof n=="string"?n:"",xt=n=>T.isObjectLike(n)&&T.has(n,"message"),It=n=>typeof n=="string"?n:xt(n)?n.message:null;var wt=ct();const Vt=n=>n.search(RegExp(/(^0{2}\.)|(^0+[1-9])/g))===0,Ae=(n,a)=>{var j;const{allowEmpty:t=!1,autoValue:l,placeholder:o,disabledValidation:d=!1}=a||{},i=String(n);if(d||l||o)return null;const g=wt.isValueWithUnit(i)?r.getValue(i):i;if(t&&g==="")return null;if(Vt(g))return"Invalid number format due to leading zeroes";const h=r.validateNumber(g);if(!h.valid){const ie=((j=h==null?void 0:h.errors)==null?void 0:j[0])??null;return It(ie)}return null},qe=(n="")=>{var a;return(a=r.KNOWN_UNITS)==null?void 0:a.includes(n)},jt=(n,a)=>{const t=r.getUnit(n||"");return qe(a)&&qe(t)},Et="_predefinedMenuActive_1yvt4_1",kt={predefinedMenuActive:Et},p=({name:n,placeholder:a="",disabled:t=!1,disabledUnit:l=!1,error:o=null,left:d=!1,small:i=!1,width:g="100%",value:h,unitkey:j="",initUnit:ie,noConversion:Gn=!1,onChange:le=()=>{},onClick:St=()=>{},onFocus:Jn=()=>{},onSwitchUnit:ve=()=>{},unitTemplate:fe,doNotConvertValue:q=!1,testId:k,warning:Yn=null,predefinedOptions:x,initialPredefinedOption:Zn=!1,shouldLinkAutomaticly:ye=!0,selectedPredefinedOptionKey:Ce,validationCallback:be=()=>({name:"",error:null}),disabledValidation:Ue=!1,allowEmpty:xe=!1,autoValue:I})=>{typeof h=="number"&&(h=`${h}`);const Qn=Ct(),[ue="",P=""]=h!==void 0?r.split(h):[],Ie=I?r.getUnit(I):"",we=m.useMemo(()=>bt(j,fe),[j,fe]),Xn=jt(h,we),U=ie||we||P,et=pt(U),Ve=_(h,U,P,q),je=_(I,U,Ie,q),nt=Ve!==""?{value:Ve,unit:U}:je!==""?{value:je,unit:U}:{value:ue,unit:P},[v,ne]=m.useState(nt),[tt,oe]=m.useState(null),[E,de]=m.useState(Zn?C.PREDEFINED:C.CUSTOM),ce=ue===""&&I,M=x&&x.find(s=>{if(!(s!=null&&s.value))return;if(Ce)return Ce===s.valueKey;const u=r.isValueWithUnit(s.value)?r.getUnit(s.value):"";return r.withUnit(zn(h,u),u)===s.value}),at=()=>{if(j)try{const s=ce?I:h??"";let u=r.altUnitsList(s,j);return r.getValue(s)===""?u.map(f=>["",f[1]]):u}catch{return null}},rt=s=>{const u=Ne(n),f=s.target,{value:b,selectionStart:D}=f,ke=r.cleanNumStr(b.replaceAll(" ","").replaceAll("|","")),me=r.withUnit(ke,(v==null?void 0:v.unit)||""),ut=r.getValue(me),pe=Ae(ut,{allowEmpty:xe,autoValue:I,placeholder:a,disabledValidation:Ue});if(pe===null){le({target:{value:me,name:u}});const[ot,dt]=r.split(me);ne({value:ot,unit:dt}),oe(null),be(u,null)}else ne({value:ke,unit:v.unit}),oe(pe),be(u,pe);Qn(()=>{f.selectionStart=D,f.selectionEnd=D})},st=(s,u)=>{u===v.unit||isNaN(Number(s))||(ne({value:s,unit:u}),ve&&ve(u))};m.useEffect(()=>{if(U){let f,b="";et!==U?(f=_(h,U,P,q),b=U):r.withUnit(v.value,v.unit)!==h&&(f=_(h,v.unit,P,q),b=v.unit),f!==void 0&&ne({value:f,unit:b}),x&&de(M&&ye?C.PREDEFINED:C.CUSTOM)}const s=r.checkAndCleanDecimalComma(ue),u=Ae(s,{allowEmpty:xe,autoValue:I,placeholder:a,disabledValidation:Ue});oe(u)},[U,h,o,ye]);const te=at(),ae=r.label(v.unit)||v.unit||"",it=Gn||!te||te&&te.length===1,Ee=Ne(n);let re;const lt=s=>{const u=s!=null&&s.value?s.value:"",[f="",b=""]=r.isValueWithUnit(u)?r.split(u):[u];return{type:Se.OPTION,inline:!0,onClick:()=>{r.validateNumber(f).valid&&!t&&(de(C.PREDEFINED),le({target:{value:u,name:typeof n=="string"?n:(n==null?void 0:n.fieldName)||"",predefinedSelected:!0,predefinedOption:s}}))},label:e.jsxs(e.Fragment,{children:[e.jsx(Ln,{children:s.label}),e.jsx(V,{width:"20px",height:"0"})]}),description:r.isValueWithUnit(u)?`${f} ${b}`:u,selected:M===s&&E===C.PREDEFINED}};if(re=[{type:Se.OPTION,inline:!0,onClick:()=>{E!==C.CUSTOM&&!t&&le({target:{value:r.withUnit(v.value,v.unit),name:typeof n=="string"?n:(n==null?void 0:n.fieldName)||""}})},label:"Custom",selected:E===C.CUSTOM}],x!=null&&x.length){const s=x.map(lt);re=[...re,...s]}return e.jsx("div",{className:E===C.PREDEFINED?mt(kt.predefinedMenuActive):"",children:e.jsxs(vt,{small:i,width:g,children:[x&&e.jsx(ht,{text:E===C.PREDEFINED?M==null?void 0:M.label:"",children:e.jsx(Te,{maxHeight:380,groupOrder:"first",testId:k&&`${k}-predefined-menu`,disabled:t,menu:{colored:!0,trigger:"Component",component:e.jsx(c,{groupOrder:"first",active:E===C.PREDEFINED,icon:E===C.PREDEFINED?"link":"unlink"}),small:i,sections:re}})}),e.jsx(ft,{type:"text",name:Ee,testId:k,disabled:t,placeholder:ce?_(I,v.unit,Ie,q):a,value:v.value,onChange:rt,onFocus:Jn,error:o||tt,warning:Yn,right:!d},Ee),ae&&(it||!Xn?e.jsx(gt,{groupOrder:"last",children:ae}):e.jsx(Te,{maxHeight:380,groupOrder:"last",disabled:l,testId:k&&`${k}-menu`,menu:{label:ae,trigger:"DropDownButton",small:i,sections:te.map(([s,u,f])=>{const b=f||u||"";return{type:"Option",label:isNaN(Number(s))?"":s,inline:!0,onClick:D=>{D.stopPropagation(),st(ce?"":s,u)},description:b,selected:b===ae,testId:`${k}-unit-${b}`}})}}))]})})};p.__docgenInfo={description:"",methods:[],displayName:"UnitInput",props:{name:{required:!0,tsType:{name:"union",raw:"string | { fieldName?: string }",elements:[{name:"string"},{name:"signature",type:"object",raw:"{ fieldName?: string }",signature:{properties:[{key:"fieldName",value:{name:"string",required:!1}}]}}]},description:""},placeholder:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"''",computed:!1}},disabled:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},disabledUnit:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},error:{required:!1,tsType:{name:"union",raw:"string | null | boolean",elements:[{name:"string"},{name:"null"},{name:"boolean"}]},description:"",defaultValue:{value:"null",computed:!1}},left:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},small:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},width:{required:!1,tsType:{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},description:"",defaultValue:{value:"'100%'",computed:!1}},value:{required:!1,tsType:{name:"string"},description:""},unitkey:{required:!1,tsType:{name:"string"},description:"",defaultValue:{value:"''",computed:!1}},initUnit:{required:!1,tsType:{name:"string"},description:""},noConversion:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},doNotConvertValue:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},testId:{required:!1,tsType:{name:"string"},description:""},warning:{required:!1,tsType:{name:"union",raw:"string | boolean | null",elements:[{name:"string"},{name:"boolean"},{name:"null"}]},description:"",defaultValue:{value:"null",computed:!1}},predefinedOptions:{required:!1,tsType:{name:"union",raw:"IPredefinedOption[] | null",elements:[{name:"Array",elements:[{name:"IPredefinedOption"}],raw:"IPredefinedOption[]"},{name:"null"}]},description:""},initialPredefinedOption:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},shouldLinkAutomaticly:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},selectedPredefinedOptionKey:{required:!1,tsType:{name:"string"},description:""},validationCallback:{required:!1,tsType:{name:"signature",type:"function",raw:`(
2
2
  name: string,
3
3
  message: string | null,
4
4
  ) => { name: string; error: string | null }`,signature:{arguments:[{type:{name:"string"},name:"name"},{type:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},name:"message"}],return:{name:"signature",type:"object",raw:"{ name: string; error: string | null }",signature:{properties:[{key:"name",value:{name:"string",required:!0}},{key:"error",value:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}],required:!0}}]}}}},description:"",defaultValue:{value:"() => ({ name: '', error: null })",computed:!1}},disabledValidation:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},allowEmpty:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},autoValue:{required:!1,tsType:{name:"string"},description:""},onChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(event: ChangeEvent<HTMLInputElement> | ICustomChangeEvent) => void",signature:{arguments:[{type:{name:"union",raw:"ChangeEvent<HTMLInputElement> | ICustomChangeEvent",elements:[{name:"ChangeEvent",elements:[{name:"HTMLInputElement"}],raw:"ChangeEvent<HTMLInputElement>"},{name:"ICustomChangeEvent"}]},name:"event"}],return:{name:"void"}}},description:"",defaultValue:{value:"() => {}",computed:!1}},onSwitchUnit:{required:!1,tsType:{name:"signature",type:"function",raw:"(unit: string) => void",signature:{arguments:[{type:{name:"string"},name:"unit"}],return:{name:"void"}}},description:"",defaultValue:{value:"() => {}",computed:!1}},onClick:{required:!1,tsType:{name:"MouseEventHandler",elements:[{name:"HTMLInputElement"}],raw:"MouseEventHandler<HTMLInputElement>"},description:"",defaultValue:{value:"() => {}",computed:!1}},onFocus:{required:!1,tsType:{name:"FocusEventHandler",elements:[{name:"HTMLInputElement"}],raw:"FocusEventHandler<HTMLInputElement>"},description:"",defaultValue:{value:"() => {}",computed:!1}},unitTemplate:{required:!1,tsType:{name:"Record",elements:[{name:"string"},{name:"any"}],raw:"Record<string, any>"},description:""}}};const{useArgs:Tt}=__STORYBOOK_MODULE_PREVIEW_API__,da={title:"Basic/UnitInput",component:p,args:{name:"example",unitkey:"length",value:"123|m"}},y=n=>{const[a,t]=Tt(),l=o=>{t({value:o.target.value})};return e.jsx(p,{...n,onChange:l})},se=y.bind({}),F=y.bind({});F.args={initUnit:"ft",unitTemplate:{length:"ft"}};const O=y.bind({});O.args={value:'123|"',unitkey:'"'};const W=y.bind({});W.args={width:"180px"};const B=y.bind({});B.args={noConversion:!0};const R=y.bind({});R.args={small:!0};const H=y.bind({});H.args={error:"Error message goes here"};const L=y.bind({});L.args={value:"asas123asd|%"};const S=y.bind({});S.args={disabled:!0,disabledUnit:!0};S.parameters={docs:{description:{story:"Each part of UnitInput can be disabled separately. `disabled` disables only the main text input, `disabledUnit` disables only the unit menu. **Needs review (comes from Reservoir input requirements)**"}}};const K=y.bind({});K.args={disabled:!0,disabledUnit:!0,noConversion:!0};const $=y.bind({});$.args={disabledUnit:!0,unitkey:void 0};const z=y.bind({});z.args={disabledUnit:!0,unitkey:"length"};const G=y.bind({});G.args={disabledUnit:!1,disabled:!0};const N=n=>{const[a,t]=m.useState("123|m"),[l,o]=m.useState("223|m"),[d,i]=m.useState("ft");return e.jsxs(e.Fragment,{children:[e.jsx(c,{label:"Change initUnit",onClick:()=>i(d==="m"?"ft":"m")}),e.jsx(V,{}),e.jsx(c,{label:"Change value",onClick:()=>t(a==="123|m"?"456|m":"123|m")}),e.jsx(V,{}),e.jsx(p,{name:"example",onChange:g=>{t(g.target.value)},unitkey:"length",value:a,initUnit:d,onSwitchUnit:i}),e.jsx(V,{}),e.jsx(p,{name:"example2",onChange:g=>{o(g.target.value)},unitkey:"length",value:l,initUnit:d,onSwitchUnit:i}),e.jsx(yt,{}),e.jsx("h4",{children:"Without initUnit property (taken from the redux store)"}),e.jsx(p,{name:"example",onChange:g=>{t(g.target.value)},unitkey:"length",value:a,onSwitchUnit:i}),e.jsx(p,{name:"example2",onChange:g=>{o(g.target.value)},unitkey:"length",value:l,onSwitchUnit:i})]})};N.parameters={docs:{description:{story:"[OW-4380](https://oliasoft.atlassian.net/browse/OW-4380?atlOrigin=eyJpIjoiMmM1N2RkNWU3Mjk5NDYxY2E0YzhkMzk5ZTVmZTJhMjciLCJwIjoiaiJ9)"}}};const J=y.bind({});J.args={predefinedOptions:[{label:"bottom of casing",value:"12|km"},{label:"mud weight at shoe depth",value:"8|mm"}]};const A=()=>{const n="500px",[a,t]=m.useState(void 0);return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"Different edge cases such as +/- infinity, undefined, NaN, null:"}),e.jsxs(Kn,{children:[e.jsxs(ge,{width:"25%",children:[e.jsx(c,{label:"Change value infinity",onClick:()=>t(1/0)}),e.jsx("br",{}),e.jsx(c,{label:"Change value -infinity",onClick:()=>t(-1/0)}),e.jsx("br",{}),e.jsx(c,{label:"Change value null",onClick:()=>t(null)}),e.jsx("br",{}),e.jsx(c,{label:"Change value - undefined",onClick:()=>t(void 0)}),e.jsx("br",{}),e.jsx(c,{label:"Change value - NaN",onClick:()=>t(NaN)}),e.jsx("br",{}),e.jsx(c,{label:"Change value - nothing (empty)",onClick:()=>t(void 0)}),e.jsx("br",{}),e.jsx(c,{label:"Change value - empty string",onClick:()=>t("")})]}),e.jsxs(ge,{width:"25%",children:[e.jsx(c,{label:"Change value infinity|m",onClick:()=>t("Infinity|m")}),e.jsx("br",{}),e.jsx(c,{label:"Change value -infinity|m",onClick:()=>t("-Infinity|m")}),e.jsx("br",{}),e.jsx(c,{label:"Change value null|m",onClick:()=>t("null|m")}),e.jsx("br",{}),e.jsx(c,{label:"Change value - undefined|m",onClick:()=>t("undefined|m")}),e.jsx("br",{}),e.jsx(c,{label:"Change value - NaN|m",onClick:()=>t("NaN|m")}),e.jsx("br",{}),e.jsx(c,{label:"Change value - nothing (empty)|m",onClick:()=>t("|m")})]})]}),e.jsx("br",{}),e.jsx(w,{label:"Normal PUI",children:e.jsx(p,{name:"example1",onChange:l=>t(l.target.value),value:a,unitkey:"length",width:n,placeholder:"value|unit"})}),e.jsx(w,{label:"Disabled validation",children:e.jsx(p,{name:"example2",onChange:l=>t(l.target.value),value:a,unitkey:"length",disabledValidation:!0,width:n})}),e.jsx(w,{label:"Disabled validation and manual error",children:e.jsx(p,{name:"example3",onChange:l=>t(l.target.value),value:a,unitkey:"length",error:"test",disabledValidation:!0,width:n})}),e.jsx(he,{message:{heading:"Current value inside PUI: "+a,visible:!0}})]})},Y=()=>{const n="500px",[a,t]=m.useState("1|m"),[l,o]=m.useState("|m"),d="123|km";return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"Different cases for automatic (placeholder) values:"}),e.jsx(Kn,{children:e.jsxs(ge,{width:"25%",children:[e.jsx(c,{label:"Change value to ''",onClick:()=>t("")}),e.jsx("br",{}),e.jsx(c,{label:"Change value to 1",onClick:()=>t("1")}),e.jsx("br",{}),e.jsx(c,{label:"Change value to 1|m",onClick:()=>t("1|m")}),e.jsx("br",{}),e.jsx(c,{label:"Change value to |m - empty value",onClick:()=>t("|m")})]})}),e.jsx("br",{}),e.jsx(w,{label:"Normal PUI (placeholder + auto)",children:e.jsx(p,{name:"example1",onChange:i=>t(i.target.value),value:a,unitkey:"length",width:n,placeholder:"value|unit",autoValue:d})}),e.jsx(w,{label:"Normal PUI (only auto)",children:e.jsx(p,{name:"example1",onChange:i=>t(i.target.value),value:a,unitkey:"length",width:n,autoValue:d})}),e.jsx(w,{label:"Empty PUI with autoValue",children:e.jsx(p,{name:"example1",onChange:i=>o(i.target.value),value:l,unitkey:"length",width:n,autoValue:d})}),e.jsx(w,{label:"Normal PUI (only placeholder)",children:e.jsx(p,{name:"example1",onChange:i=>t(i.target.value),value:a,unitkey:"length",width:n,placeholder:"Placeholder test"})}),e.jsx(w,{label:"Normal PUI (placeholder + allowEmpty)",children:e.jsx(p,{name:"example1",onChange:i=>t(i.target.value),value:a,unitkey:"length",width:n,placeholder:"Placeholder test",allowEmpty:!0})}),e.jsx(he,{message:{heading:"Current value inside PUI: "+a,visible:!0}})]})};A.parameters={docs:{description:{story:"[OW-8884](https://oliasoft.atlassian.net/browse/OW-8884)"}}};const Z=()=>{const[n,a]=m.useState("123|%"),[t,l]=m.useState(null),o="This should be visible when an error appears",d=(i,g)=>(l(g),{name:i,error:g});return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"3rd party validation message when inputting invalid value:"}),e.jsx(p,{name:"example",onChange:i=>a(i.target.value),error:!t||o,validationCallback:d,value:n}),e.jsx("br",{}),e.jsx(V,{}),e.jsx("h4",{children:"Original validation message: "}),e.jsx(he,{message:{heading:t,visible:!0}})]})},Q=()=>{const[n,a]=m.useState("123|m"),[t,l]=m.useState(""),[o,d]=m.useState("km"),i=()=>{d("ft"),l("placeholder"),a("|m")};return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"Empty value case:"}),e.jsx(p,{name:"example",onChange:g=>a(g.target.value),value:n,allowEmpty:!0,placeholder:t,initUnit:o,unitkey:"length"}),e.jsx("br",{}),e.jsx(V,{}),e.jsx(c,{label:"Change value |m and unit ft",onClick:()=>i()})]})},X=()=>{const[n,a]=m.useState("123|m"),[t,l]=m.useState("m");return e.jsxs(e.Fragment,{children:[e.jsx(p,{name:"example",onChange:o=>a(o.target.value),value:n,initUnit:t,unitkey:"length",onSwitchUnit:l}),e.jsx(V,{}),e.jsx(p,{name:"example",onChange:o=>a(o.target.value),value:n,initUnit:t,unitkey:"length",onSwitchUnit:l})]})},ee=()=>e.jsxs(e.Fragment,{children:[e.jsx(Ln,{faint:!0,children:"Reproduce OW-10614 rounding noise bug when storing values in a different unit to the display unit"}),e.jsx(V,{}),e.jsx(p,{name:"example",onChange:()=>{},value:r.withUnit(r.convertAndGetValue("9750|psi","bar"),"bar"),initUnit:"psi",unitkey:"pressure",unitTemplate:{pressure:"psi"}})]});N.__docgenInfo={description:"",methods:[],displayName:"TestExternalStateChangeWithSynchronizedUnits",props:{name:{required:!0,tsType:{name:"union",raw:"string | { fieldName?: string }",elements:[{name:"string"},{name:"signature",type:"object",raw:"{ fieldName?: string }",signature:{properties:[{key:"fieldName",value:{name:"string",required:!1}}]}}]},description:""},placeholder:{required:!1,tsType:{name:"string"},description:""},disabled:{required:!1,tsType:{name:"boolean"},description:""},disabledUnit:{required:!1,tsType:{name:"boolean"},description:""},error:{required:!1,tsType:{name:"union",raw:"string | null | boolean",elements:[{name:"string"},{name:"null"},{name:"boolean"}]},description:""},left:{required:!1,tsType:{name:"boolean"},description:""},small:{required:!1,tsType:{name:"boolean"},description:""},width:{required:!1,tsType:{name:"union",raw:"string | number",elements:[{name:"string"},{name:"number"}]},description:""},value:{required:!1,tsType:{name:"string"},description:""},unitkey:{required:!1,tsType:{name:"string"},description:""},initUnit:{required:!1,tsType:{name:"string"},description:""},noConversion:{required:!1,tsType:{name:"boolean"},description:""},doNotConvertValue:{required:!1,tsType:{name:"boolean"},description:""},testId:{required:!1,tsType:{name:"string"},description:""},warning:{required:!1,tsType:{name:"union",raw:"string | boolean | null",elements:[{name:"string"},{name:"boolean"},{name:"null"}]},description:""},predefinedOptions:{required:!1,tsType:{name:"union",raw:"IPredefinedOption[] | null",elements:[{name:"Array",elements:[{name:"IPredefinedOption"}],raw:"IPredefinedOption[]"},{name:"null"}]},description:""},initialPredefinedOption:{required:!1,tsType:{name:"boolean"},description:""},shouldLinkAutomaticly:{required:!1,tsType:{name:"boolean"},description:""},selectedPredefinedOptionKey:{required:!1,tsType:{name:"string"},description:""},validationCallback:{required:!1,tsType:{name:"signature",type:"function",raw:`(
@@ -1,4 +1,4 @@
1
- import{j as n}from"./jsx-runtime-eps93zm2.js";import{r as v}from"./index-DhsZuJvc.js";import{f as z}from"./immer.esm-BwVl9PS2.js";import{d as U}from"./index-CWz-hU-f.js";import{G as Z}from"./grid-B6LFPf51.js";import{S as ee}from"./spacer-BWoNR27H.js";import{C as F}from"./card-EcjmryU9.js";import{F as L}from"./field-C5_fLDpy.js";import{H as W}from"./heading-NkLgQYoP.js";import{S as P}from"./select-tIEV7vnw.js";import{T as I}from"./toggle-Bo-JPbUP.js";import{l as te}from"./lodash-BHd_uQHh.js";import{u as ne}from"./use-previous-D775JrO6.js";import{T as ae,C as _}from"./table-CXUwJOBt.js";import"./index-DRSy5Ssd.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./index-Bk2sglWO.js";import"./label-hiSz3I8H.js";import"./common-types-Sih75Sav.js";import"./help-icon-41R-Z9N1.js";import"./tooltip-1V7clEnw.js";import"./index-CUZDtIZe.js";import"./icon-BP4BO6-k.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DR8r8Ogv.js";import"./index-CEuq6vkz.js";import"./disabled-context-rmpd7YJS.js";import"./types-UmZ4Y_CR.js";import"./extends-CF3RwP-h.js";import"./assertThisInitialized-B9jnkVVz.js";import"./memoize-one.esm-CcMeOnPo.js";import"./types-BmbYqTX_.js";import"./text-B3-TSWok.js";import"./actions-CZK3mphC.js";import"./button-C1sV-0mR.js";import"./spinner-AWUe4xwQ.js";import"./badge-CLQ59MDF.js";import"./select.input-DIKP56UZ.js";import"./index.es-D2piFfFj.js";import"./redux-tRgGMjwY.js";import"./objectSpread2-DW4nTBoq.js";import"./tiny-invariant-DqLgxztJ.js";import"./pagination-CqvxiZHR.js";import"./input-BW9trNAW.js";import"./input-group-BaRSJAEN.js";import"./input-group-addon-D68iUKV2.js";import"./number-input-uQOVHv2N.js";import"./check-box-CaSrhzev.js";import"./slider-gZmYlxxz.js";import"./index-BI4_Bp97.js";import"./popover-DgUpTRMk.js";const ie=l=>l.reduce(({preferredUnits:i,storageUnits:r},{unitKey:s,preferredUnit:a,storageUnit:h})=>(i[s]=a,r[s]=h,{preferredUnits:i,storageUnits:r}),{preferredUnits:{},storageUnits:{}}),re=({headers:l,rows:i,selectedUnits:r,storageUnits:s,onChangeUnit:a,convertBackToStorageUnit:h,enableCosmeticRounding:g,enableDisplayRounding:y})=>{const u=l?l.map(d=>({...d,cells:d.cells.map(c=>{var t;if(c.type===_.AUTO_UNIT){const{testId:C,unitKey:p}=c;return{value:r[p],type:_.SELECT,searchable:!1,options:(t=U.getUnitsForQuantity(p))==null?void 0:t.map(T=>({label:U.label(T),value:T})),native:c.native,onChange:T=>a({unitKey:p,value:T.target.value}),testId:C}}return c})})):[],o=i?i.map((d,c)=>({...d,cells:d.cells.map((t,C)=>{if("autoUnit"in t&&(t!=null&&t.autoUnit)&&(typeof(t==null?void 0:t.value)=="string"||typeof(t==null?void 0:t.value)=="number")){const{unitKey:p,value:T,formatDisplayValue:w}=t,j=y&&"roundDisplayValue"in t?t==null?void 0:t.roundDisplayValue:null,m=r[p],b=s[p],e=m!==b,f=e?U.convertAndGetValue(T,m,b):t.value,x=U.isScientificStringNum(T),D=g&&(e||!x)?U.roundToPrecision(f,14):f,R=w?w(D):D;return{...t,value:R,enableCosmeticRounding:g,enableDisplayRounding:y,roundDisplayValue:j,onChange:S=>{const{value:B}=S.target,A=s[p],E=r[p],N=E!==A,k=h?A:E,$=N?U.convertAndGetValue(B,k,E):B;if("onChange"in t){const{onChange:X}=t,Y={...S,target:{...S.target,value:String($),rowIndex:c,cellIndex:C,unit:k}};X(Y)}}}}return t})})):[];return{convertedHeaders:u,convertedRows:o}},M=({table:l,unitConfig:i,convertBackToStorageUnit:r=!0,enableCosmeticRounding:s=!0,enableDisplayRounding:a=!0})=>{const{rows:h,headers:g,...y}=l,{storageUnits:u,preferredUnits:o}=ie(i),d=ne(o),[c,t]=v.useState(o),C=({unitKey:m,value:b})=>{t({...c,[m]:b});const e=i.find(f=>f.unitKey===m);e&&typeof e.onChange=="function"&&e.onChange({oldUnit:c[m],newUnit:b,unitKey:m})},p=m=>re({headers:g,rows:h,selectedUnits:m,storageUnits:u,onChangeUnit:C,convertBackToStorageUnit:r,enableCosmeticRounding:s,enableDisplayRounding:a}),T=p(c),[w,j]=v.useState(T);return v.useEffect(()=>{!te.isEqual(o,d)&&(Object.keys(o).forEach(b=>{const e=d==null?void 0:d[b],f=o[b];e!==f&&C({unitKey:b,value:f})}),j(p(o)))},[i]),v.useEffect(()=>{j(p(c))},[l,c]),n.jsx(ae,{table:{...y,headers:w.convertedHeaders,rows:w.convertedRows}})};M.__docgenInfo={description:"",methods:[],displayName:"UnitTable",props:{table:{required:!0,tsType:{name:"IUnitTable"},description:""},unitConfig:{required:!0,tsType:{name:"Array",elements:[{name:"IUnitConfigItem"}],raw:"IUnitConfigItem[]"},description:""},convertBackToStorageUnit:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},enableCosmeticRounding:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},enableDisplayRounding:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}}},composes:["Omit"]};const pt={title:"Basic/UnitTable",args:{}},oe=!0,le=!0,se=!0,ue=!1,H="m",J="C",de=3,ce=(l,i,r)=>{const s=[i,i,r],a=[...Array(l)].map((h,g)=>{const y=g,u=g+1.25,o=4+g*.25;return[String(y),String(u),String(o)]});return[s,...a]},pe=ce(de,H,J),ge=({reduxTable:l,value:i,unit:r,rowIndex:s,cellIndex:a})=>z(l,h=>{const g=h[0][a],y=(u,o)=>o===0;return h.forEach((u,o)=>{if(y(u,o)){u[a]=r;return}if(o===s+1){u[a]=String(i);return}const d=U.convertAndGetValue(u[a],r,g);u[a]=String(d)}),h}),me=({reduxTable:l,value:i,rowIndex:r,cellIndex:s})=>z(l,a=>{a[r+1][s]=i}),V=()=>{var m,b;const[l,i]=v.useState(H),[r,s]=v.useState(J),[a,h]=v.useState(pe),[g,y]=v.useState(oe),[u,o]=v.useState(se),[d,c]=v.useState(le),[t,C]=v.useState(ue),[p,T]=v.useState(H),w=e=>{const{rowIndex:f,cellIndex:x,value:D,unit:R}=e.target,S=t?ge({reduxTable:a,value:D,unit:R,rowIndex:f,cellIndex:x}):me({reduxTable:a,value:D,rowIndex:f,cellIndex:x});h(S)},j=a.reduce((e,f,x)=>(x===0?e.headers=[{cells:[{value:"From"},{value:"To"},{value:"Temperature"}]},{cells:[{type:"AutoUnit",unitKey:"length"},{type:"AutoUnit",unitKey:"length"},{type:"AutoUnit",unitKey:"temperature",testId:"table-unit-selector-3"}]}]:e.rows=e.rows.concat({cells:f.map((D,R)=>{const S=x===1&&R===1;return{value:D,type:S?"Text":"NumberInput",unitKey:R===2?"temperature":"length",onChange:w,roundDisplayValue:x===3&&R===2?k=>U.roundByMagnitude(k,2):null,formatDisplayValue:S?k=>`T* ${k}`:null,autoUnit:!0}})}),e),{headers:[],rows:[]});return n.jsxs(Z,{columns:"1fr 1fr",gap:!0,children:[n.jsxs(F,{heading:n.jsx(W,{children:"Settings"}),children:[n.jsx(L,{label:"Convert back to storage unit:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:g,onChange:e=>y(e.target.checked)})}),n.jsx(L,{label:"Enable display rounding:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:u,onChange:e=>o(e.target.checked)})}),n.jsx(L,{label:"Enable cosmetic rounding:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:d,onChange:e=>c(e.target.checked)})}),n.jsx(L,{label:"Convert whole table:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:t,onChange:e=>C(e.target.checked)})})]}),n.jsxs(F,{heading:n.jsx(W,{children:"Unit template"}),children:[n.jsx(L,{label:"Length unit:",labelLeft:!0,labelWidth:120,children:n.jsx(P,{options:(m=U.getUnitsForQuantity("length"))==null?void 0:m.map(e=>({value:e,label:U.label(e)})),value:{value:l},onChange:e=>i(e.target.value),width:"100px"})}),n.jsx(L,{label:"Temperature unit:",labelLeft:!0,labelWidth:120,children:n.jsx(P,{options:(b=U.getUnitsForQuantity("temperature"))==null?void 0:b.map(e=>({value:e,label:U.label(e)})),value:{value:r},onChange:e=>s(e.target.value),width:"100px"})})]}),n.jsx(F,{heading:n.jsx(W,{children:"Storage State (Redux)"}),children:n.jsx("pre",{children:n.jsx("code",{children:JSON.stringify(a,null,2)})})}),n.jsxs(F,{heading:n.jsx(W,{children:"UnitTable"}),children:[n.jsx(M,{table:j,unitConfig:[{unitKey:"length",storageUnit:a[0][0],preferredUnit:l,onChange:({newUnit:e})=>T(e)},{unitKey:"temperature",storageUnit:a[0][2],preferredUnit:r}],convertBackToStorageUnit:g,enableDisplayRounding:u,enableCosmeticRounding:d}),n.jsx(ee,{height:20}),n.jsx(L,{label:"Displayed length unit:",labelLeft:!0,labelWidth:150,children:p})]})]})};V.__docgenInfo={description:"",methods:[],displayName:"UnitTablePrototype"};var K,G,O,q,Q;V.parameters={...V.parameters,docs:{...(K=V.parameters)==null?void 0:K.docs,source:{originalSource:`() => {
1
+ import{j as n}from"./jsx-runtime-eps93zm2.js";import{r as v}from"./index-DhsZuJvc.js";import{f as z}from"./immer.esm-BwVl9PS2.js";import{d as U}from"./index-CWz-hU-f.js";import{G as Z}from"./grid-B6LFPf51.js";import{S as ee}from"./spacer-BWoNR27H.js";import{C as F}from"./card-EcjmryU9.js";import{F as L}from"./field-C5_fLDpy.js";import{H as W}from"./heading-NkLgQYoP.js";import{S as P}from"./select-Z-GCZ-pY.js";import{T as I}from"./toggle-Bo-JPbUP.js";import{l as te}from"./lodash-BHd_uQHh.js";import{u as ne}from"./use-previous-D775JrO6.js";import{T as ae,C as _}from"./table-CaaSoHex.js";import"./index-DRSy5Ssd.js";import"./styled-components.browser.esm-Bf0q9Yjk.js";import"./index-Bk2sglWO.js";import"./label-hiSz3I8H.js";import"./common-types-Sih75Sav.js";import"./help-icon-41R-Z9N1.js";import"./tooltip-1V7clEnw.js";import"./index-CUZDtIZe.js";import"./icon-BP4BO6-k.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";import"./inheritsLoose-DR8r8Ogv.js";import"./index-CEuq6vkz.js";import"./disabled-context-rmpd7YJS.js";import"./types-UmZ4Y_CR.js";import"./extends-CF3RwP-h.js";import"./assertThisInitialized-B9jnkVVz.js";import"./memoize-one.esm-CcMeOnPo.js";import"./types-BmbYqTX_.js";import"./text-B3-TSWok.js";import"./actions-CZK3mphC.js";import"./button-C1sV-0mR.js";import"./spinner-AWUe4xwQ.js";import"./badge-CLQ59MDF.js";import"./select.input-DIKP56UZ.js";import"./index.es-D2piFfFj.js";import"./redux-tRgGMjwY.js";import"./objectSpread2-DW4nTBoq.js";import"./tiny-invariant-DqLgxztJ.js";import"./pagination-BtguPxeR.js";import"./input-BW9trNAW.js";import"./input-group-BaRSJAEN.js";import"./input-group-addon-D68iUKV2.js";import"./number-input-uQOVHv2N.js";import"./check-box-CaSrhzev.js";import"./slider-gZmYlxxz.js";import"./index-BI4_Bp97.js";import"./popover-DgUpTRMk.js";const ie=l=>l.reduce(({preferredUnits:i,storageUnits:r},{unitKey:s,preferredUnit:a,storageUnit:h})=>(i[s]=a,r[s]=h,{preferredUnits:i,storageUnits:r}),{preferredUnits:{},storageUnits:{}}),re=({headers:l,rows:i,selectedUnits:r,storageUnits:s,onChangeUnit:a,convertBackToStorageUnit:h,enableCosmeticRounding:g,enableDisplayRounding:y})=>{const u=l?l.map(d=>({...d,cells:d.cells.map(c=>{var t;if(c.type===_.AUTO_UNIT){const{testId:C,unitKey:p}=c;return{value:r[p],type:_.SELECT,searchable:!1,options:(t=U.getUnitsForQuantity(p))==null?void 0:t.map(T=>({label:U.label(T),value:T})),native:c.native,onChange:T=>a({unitKey:p,value:T.target.value}),testId:C}}return c})})):[],o=i?i.map((d,c)=>({...d,cells:d.cells.map((t,C)=>{if("autoUnit"in t&&(t!=null&&t.autoUnit)&&(typeof(t==null?void 0:t.value)=="string"||typeof(t==null?void 0:t.value)=="number")){const{unitKey:p,value:T,formatDisplayValue:w}=t,j=y&&"roundDisplayValue"in t?t==null?void 0:t.roundDisplayValue:null,m=r[p],b=s[p],e=m!==b,f=e?U.convertAndGetValue(T,m,b):t.value,x=U.isScientificStringNum(T),D=g&&(e||!x)?U.roundToPrecision(f,14):f,R=w?w(D):D;return{...t,value:R,enableCosmeticRounding:g,enableDisplayRounding:y,roundDisplayValue:j,onChange:S=>{const{value:B}=S.target,A=s[p],E=r[p],N=E!==A,k=h?A:E,$=N?U.convertAndGetValue(B,k,E):B;if("onChange"in t){const{onChange:X}=t,Y={...S,target:{...S.target,value:String($),rowIndex:c,cellIndex:C,unit:k}};X(Y)}}}}return t})})):[];return{convertedHeaders:u,convertedRows:o}},M=({table:l,unitConfig:i,convertBackToStorageUnit:r=!0,enableCosmeticRounding:s=!0,enableDisplayRounding:a=!0})=>{const{rows:h,headers:g,...y}=l,{storageUnits:u,preferredUnits:o}=ie(i),d=ne(o),[c,t]=v.useState(o),C=({unitKey:m,value:b})=>{t({...c,[m]:b});const e=i.find(f=>f.unitKey===m);e&&typeof e.onChange=="function"&&e.onChange({oldUnit:c[m],newUnit:b,unitKey:m})},p=m=>re({headers:g,rows:h,selectedUnits:m,storageUnits:u,onChangeUnit:C,convertBackToStorageUnit:r,enableCosmeticRounding:s,enableDisplayRounding:a}),T=p(c),[w,j]=v.useState(T);return v.useEffect(()=>{!te.isEqual(o,d)&&(Object.keys(o).forEach(b=>{const e=d==null?void 0:d[b],f=o[b];e!==f&&C({unitKey:b,value:f})}),j(p(o)))},[i]),v.useEffect(()=>{j(p(c))},[l,c]),n.jsx(ae,{table:{...y,headers:w.convertedHeaders,rows:w.convertedRows}})};M.__docgenInfo={description:"",methods:[],displayName:"UnitTable",props:{table:{required:!0,tsType:{name:"IUnitTable"},description:""},unitConfig:{required:!0,tsType:{name:"Array",elements:[{name:"IUnitConfigItem"}],raw:"IUnitConfigItem[]"},description:""},convertBackToStorageUnit:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},enableCosmeticRounding:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},enableDisplayRounding:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}}},composes:["Omit"]};const pt={title:"Basic/UnitTable",args:{}},oe=!0,le=!0,se=!0,ue=!1,H="m",J="C",de=3,ce=(l,i,r)=>{const s=[i,i,r],a=[...Array(l)].map((h,g)=>{const y=g,u=g+1.25,o=4+g*.25;return[String(y),String(u),String(o)]});return[s,...a]},pe=ce(de,H,J),ge=({reduxTable:l,value:i,unit:r,rowIndex:s,cellIndex:a})=>z(l,h=>{const g=h[0][a],y=(u,o)=>o===0;return h.forEach((u,o)=>{if(y(u,o)){u[a]=r;return}if(o===s+1){u[a]=String(i);return}const d=U.convertAndGetValue(u[a],r,g);u[a]=String(d)}),h}),me=({reduxTable:l,value:i,rowIndex:r,cellIndex:s})=>z(l,a=>{a[r+1][s]=i}),V=()=>{var m,b;const[l,i]=v.useState(H),[r,s]=v.useState(J),[a,h]=v.useState(pe),[g,y]=v.useState(oe),[u,o]=v.useState(se),[d,c]=v.useState(le),[t,C]=v.useState(ue),[p,T]=v.useState(H),w=e=>{const{rowIndex:f,cellIndex:x,value:D,unit:R}=e.target,S=t?ge({reduxTable:a,value:D,unit:R,rowIndex:f,cellIndex:x}):me({reduxTable:a,value:D,rowIndex:f,cellIndex:x});h(S)},j=a.reduce((e,f,x)=>(x===0?e.headers=[{cells:[{value:"From"},{value:"To"},{value:"Temperature"}]},{cells:[{type:"AutoUnit",unitKey:"length"},{type:"AutoUnit",unitKey:"length"},{type:"AutoUnit",unitKey:"temperature",testId:"table-unit-selector-3"}]}]:e.rows=e.rows.concat({cells:f.map((D,R)=>{const S=x===1&&R===1;return{value:D,type:S?"Text":"NumberInput",unitKey:R===2?"temperature":"length",onChange:w,roundDisplayValue:x===3&&R===2?k=>U.roundByMagnitude(k,2):null,formatDisplayValue:S?k=>`T* ${k}`:null,autoUnit:!0}})}),e),{headers:[],rows:[]});return n.jsxs(Z,{columns:"1fr 1fr",gap:!0,children:[n.jsxs(F,{heading:n.jsx(W,{children:"Settings"}),children:[n.jsx(L,{label:"Convert back to storage unit:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:g,onChange:e=>y(e.target.checked)})}),n.jsx(L,{label:"Enable display rounding:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:u,onChange:e=>o(e.target.checked)})}),n.jsx(L,{label:"Enable cosmetic rounding:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:d,onChange:e=>c(e.target.checked)})}),n.jsx(L,{label:"Convert whole table:",labelLeft:!0,labelWidth:200,children:n.jsx(I,{checked:t,onChange:e=>C(e.target.checked)})})]}),n.jsxs(F,{heading:n.jsx(W,{children:"Unit template"}),children:[n.jsx(L,{label:"Length unit:",labelLeft:!0,labelWidth:120,children:n.jsx(P,{options:(m=U.getUnitsForQuantity("length"))==null?void 0:m.map(e=>({value:e,label:U.label(e)})),value:{value:l},onChange:e=>i(e.target.value),width:"100px"})}),n.jsx(L,{label:"Temperature unit:",labelLeft:!0,labelWidth:120,children:n.jsx(P,{options:(b=U.getUnitsForQuantity("temperature"))==null?void 0:b.map(e=>({value:e,label:U.label(e)})),value:{value:r},onChange:e=>s(e.target.value),width:"100px"})})]}),n.jsx(F,{heading:n.jsx(W,{children:"Storage State (Redux)"}),children:n.jsx("pre",{children:n.jsx("code",{children:JSON.stringify(a,null,2)})})}),n.jsxs(F,{heading:n.jsx(W,{children:"UnitTable"}),children:[n.jsx(M,{table:j,unitConfig:[{unitKey:"length",storageUnit:a[0][0],preferredUnit:l,onChange:({newUnit:e})=>T(e)},{unitKey:"temperature",storageUnit:a[0][2],preferredUnit:r}],convertBackToStorageUnit:g,enableDisplayRounding:u,enableCosmeticRounding:d}),n.jsx(ee,{height:20}),n.jsx(L,{label:"Displayed length unit:",labelLeft:!0,labelWidth:150,children:p})]})]})};V.__docgenInfo={description:"",methods:[],displayName:"UnitTablePrototype"};var K,G,O,q,Q;V.parameters={...V.parameters,docs:{...(K=V.parameters)==null?void 0:K.docs,source:{originalSource:`() => {
2
2
  const [preferredLengthUnit, setPreferredLengthUnit] = useState(initialLengthUnit);
3
3
  const [preferredTemperatureUnit, setPreferredTemperatureUnit] = useState(initialTemperatureUnit);
4
4
  const [reduxTable, setReduxTable] = useState<TTable>(initialTable);
@@ -509,7 +509,7 @@
509
509
  }
510
510
  </script>
511
511
 
512
- <script type="module" crossorigin src="./assets/iframe-DLWAAiXM.js"></script>
512
+ <script type="module" crossorigin src="./assets/iframe-WLuE3PcW.js"></script>
513
513
  </head>
514
514
 
515
515
  <body>