@oliasoft-open-source/react-ui-library 4.11.0-beta-3 → 4.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/dist/404.html +1 -0
  2. package/dist/index.js +78 -58
  3. package/dist/index.js.map +1 -1
  4. package/dist/storybook/assets/{Color-KGDBMAHA-DeGjmgTY.js → Color-KGDBMAHA-C4DMqLTk.js} +1 -1
  5. package/dist/storybook/assets/{DocsRenderer-PKQXORMH-DJIj_qEG.js → DocsRenderer-PKQXORMH-4sK5I5fh.js} +1 -1
  6. package/dist/storybook/assets/{accordion.stories-BTxV-ybU.js → accordion.stories-BSRBp5Mg.js} +2 -2
  7. package/dist/storybook/assets/{afe.stories-DFQsvqIV.js → afe.stories-DM18uTAa.js} +2 -2
  8. package/dist/storybook/assets/{buttons-and-links-BHGzZGPV.js → buttons-and-links-BAJT7RF7.js} +1 -1
  9. package/dist/storybook/assets/{casing-loads.stories-CJpnsmsZ.js → casing-loads.stories-CE6GJ021.js} +2 -2
  10. package/dist/storybook/assets/{cell.stories-Bpl0Squh.js → cell.stories-BkZwSf40.js} +2 -2
  11. package/dist/storybook/assets/check-box.stories-BJ0ShmeC.js +97 -0
  12. package/dist/storybook/assets/check-box.test-case.stories-CzuYZkUh.js +30 -0
  13. package/dist/storybook/assets/{chunk-HLWAVYOI-D2p4xoma.js → chunk-HLWAVYOI-wyESLsMA.js} +1 -1
  14. package/dist/storybook/assets/{color-D9KYOiNh.js → color-CXm-Xks7.js} +1 -1
  15. package/dist/storybook/assets/enum-Bnn40S8Q.js +1 -0
  16. package/dist/storybook/assets/footer.stories-C1SojIiD.js +3 -0
  17. package/dist/storybook/assets/form.stories-BLcmnfy8.js +49 -0
  18. package/dist/storybook/assets/{formation.stories-BT8VrcqV.js → formation.stories-DZ9-Ct5F.js} +2 -2
  19. package/dist/storybook/assets/helpers-JJxzGegQ.js +1 -0
  20. package/dist/storybook/assets/iframe-DGCZgYKU.js +2 -0
  21. package/dist/storybook/assets/{index-C0Iaso0O.js → index-D-ApmKaY.js} +88 -88
  22. package/dist/storybook/assets/{index-CNkaN_wz.js → index-DHATsyTR.js} +1 -1
  23. package/dist/storybook/assets/{input-group.stories-CElwRt3p.js → input-group.stories-EhmORqH9.js} +3 -3
  24. package/dist/storybook/assets/{input-validation-Ccgprl1C.js → input-validation-BdnKKR1J.js} +2 -2
  25. package/dist/storybook/assets/{inputs-DtQ245kS.js → inputs-Cpi6xZLB.js} +2 -2
  26. package/dist/storybook/assets/{layout-forms-Bm7FYA3V.js → layout-forms-DxC0zO_Y.js} +5 -5
  27. package/dist/storybook/assets/{layout-general-V7ekuEG7.js → layout-general-Be4RMwPl.js} +1 -1
  28. package/dist/storybook/assets/menu.stories-DLJSzJa-.js +82 -0
  29. package/dist/storybook/assets/menu.test-case.stories-DyrNbGBs.js +3 -0
  30. package/dist/storybook/assets/modal.stories-DOgeTuHT.js +200 -0
  31. package/dist/storybook/assets/modal.test-case.stories-DQ1Izuq6.js +21 -0
  32. package/dist/storybook/assets/{number-input-Bpg4Yqmo.js → number-input-CJJvhIIv.js} +1 -1
  33. package/dist/storybook/assets/number-input.stories-CKVq60XH.js +89 -0
  34. package/dist/storybook/assets/number-input.test-case.stories-Dh1F7N8M.js +92 -0
  35. package/dist/storybook/assets/{padding-and-spacing-IKi7rvQ-.js → padding-and-spacing-BZdh5XRo.js} +1 -1
  36. package/dist/storybook/assets/{pagination-CLt-kUlx.js → pagination-DWc8zp3k.js} +1 -1
  37. package/dist/storybook/assets/{pagination.stories-CTRM0Xou.js → pagination.stories-B5cOvzik.js} +2 -2
  38. package/dist/storybook/assets/popover.stories-p9_-pH_Q.js +10 -0
  39. package/dist/storybook/assets/{preview-ZgLLfBPl.js → preview-B3bzTGOp.js} +2 -2
  40. package/dist/storybook/assets/{preview-CtQzjqBP.js → preview-NGnahGuq.js} +1 -1
  41. package/dist/storybook/assets/{projects.stories-BQswWVCx.js → projects.stories-Co_WnKSx.js} +2 -2
  42. package/dist/storybook/assets/{radio-button-DmDuw4DA.js → radio-button-C4ljBRED.js} +1 -1
  43. package/dist/storybook/assets/radio-button.stories-D1rWr6ms.js +61 -0
  44. package/dist/storybook/assets/radio-button.test-case.stories-DglmHlWs.js +11 -0
  45. package/dist/storybook/assets/{reservoirs.stories-B12tIrmZ.js → reservoirs.stories-UW_8sofe.js} +2 -2
  46. package/dist/storybook/assets/{rich-text-input.stories-DkaOBgbE.js → rich-text-input.stories-CK_OTGiV.js} +3 -3
  47. package/dist/storybook/assets/{row.stories-msEoNdGI.js → row.stories-D11wLSt6.js} +2 -2
  48. package/dist/storybook/assets/select-03uRbc4I.js +61 -0
  49. package/dist/storybook/assets/select.input-CJed_LLR.js +1 -0
  50. package/dist/storybook/assets/select.stories-Bpffz9TF.js +498 -0
  51. package/dist/storybook/assets/select.stories-data-DxgWKlU6.js +1 -0
  52. package/dist/storybook/assets/select.test-case.stories-DwDNDHax.js +82 -0
  53. package/dist/storybook/assets/{site.stories-umpPYjkq.js → site.stories-ZGohyW6Z.js} +2 -2
  54. package/dist/storybook/assets/{table-5Y5KPNSk.js → table-DyOsClUv.js} +1 -1
  55. package/dist/storybook/assets/{table.stories-Clltxls0.js → table.stories-C1GgZCCR.js} +2 -2
  56. package/dist/storybook/assets/{tabs-C3NG6m9W.js → tabs-BoToLVEP.js} +1 -1
  57. package/dist/storybook/assets/tabs.stories-B52iEaHf.js +30 -0
  58. package/dist/storybook/assets/{title.stories-CsrYTGde.js → title.stories-jatDyjoM.js} +3 -3
  59. package/dist/storybook/assets/toaster.stories-G6nKp3uV.js +84 -0
  60. package/dist/storybook/assets/toaster.test-case.stories-CCHTh_U1.js +6 -0
  61. package/dist/storybook/assets/toggle.stories-BAislK3I.js +106 -0
  62. package/dist/storybook/assets/toggle.test-case.stories-CeUwdhGD.js +36 -0
  63. package/dist/storybook/assets/{tooltip.test-case.stories-CHibN8rC.js → tooltip.test-case.stories-C0wxGvKJ.js} +1 -1
  64. package/dist/storybook/assets/unit-input-CooRJQnF.js +10 -0
  65. package/dist/storybook/assets/unit-input.stories-zmSrl6iW.js +198 -0
  66. package/dist/storybook/assets/unit-input.test-case.stories-C1xRJ1EZ.js +220 -0
  67. package/dist/storybook/assets/unit-table.stories-Bl2gHPKG.js +152 -0
  68. package/dist/storybook/assets/unit-table.test-case.stories-DpSewGv4.js +1 -0
  69. package/dist/storybook/assets/use-previous-D775JrO6.js +1 -0
  70. package/dist/storybook/iframe.html +1 -1
  71. package/dist/storybook/index.json +1 -1
  72. package/dist/storybook/project.json +1 -1
  73. package/package.json +1 -1
  74. package/dist/storybook/assets/check-box.stories-DfbWw6mD.js +0 -126
  75. package/dist/storybook/assets/footer.stories-DgjDE_JR.js +0 -3
  76. package/dist/storybook/assets/form.stories-BrUnmw7R.js +0 -49
  77. package/dist/storybook/assets/iframe-B8VgeFPT.js +0 -2
  78. package/dist/storybook/assets/initialize-context-DOqEe1Xq.js +0 -1
  79. package/dist/storybook/assets/menu.stories-xWX80Eh2.js +0 -84
  80. package/dist/storybook/assets/modal.stories-LhoWfDE6.js +0 -220
  81. package/dist/storybook/assets/number-input.stories-DhCjZ37u.js +0 -180
  82. package/dist/storybook/assets/popover.stories-CGm0M5fv.js +0 -10
  83. package/dist/storybook/assets/radio-button.stories-5gvV0LD0.js +0 -71
  84. package/dist/storybook/assets/select-DnRuRG_N.js +0 -61
  85. package/dist/storybook/assets/select.input-D0UkAPd9.js +0 -1
  86. package/dist/storybook/assets/select.stories-B9w9ONzj.js +0 -579
  87. package/dist/storybook/assets/tabs.stories-dsXjRHJy.js +0 -30
  88. package/dist/storybook/assets/toaster.stories-HO4VBTy-.js +0 -89
  89. package/dist/storybook/assets/toggle.stories-qTHFTXxI.js +0 -141
  90. package/dist/storybook/assets/unit-input.stories-QnEpR0rY.js +0 -426
  91. package/dist/storybook/assets/unit-table.stories-BZCc0yfc.js +0 -152
@@ -1,426 +0,0 @@
1
- import{j as e}from"./jsx-runtime-eps93zm2.js";import{r as u}from"./index-DhsZuJvc.js";import{d as l}from"./index-C0x1JmaP.js";import{w as P,u as g,e as f,f as fe,a as ye}from"./index-DMAnyMX5.js";import{c as Jn}from"./index-Bk2sglWO.js";import{c as Tn,a as Yn,g as Zn,u as Qn}from"./initialize-context-DOqEe1Xq.js";import{M as Ge}from"./actions-D-uVCDzk.js";import{I as Xn}from"./input-group-addon-D68iUKV2.js";import{B as p}from"./button-DHevvVBE.js";import{T as ea}from"./tooltip-1V7clEnw.js";import{I as ta}from"./input-group-BaRSJAEN.js";import{S as U}from"./spacer-BWoNR27H.js";import{T as Te}from"./text-B3-TSWok.js";import{M as Ke}from"./types-BmbYqTX_.js";import{l as E}from"./lodash-c4VUpsOs.js";import{N as na,r as aa}from"./number-input-Bpg4Yqmo.js";import{D as ia}from"./divider-DY9nJ_7N.js";import{R as wn,C as Fe}from"./row-Bmiy2Lh0.js";import{F as V}from"./field-HrLaMLbx.js";import{M as we}from"./message-Y48EomV-.js";import{G as Vn}from"./grid-DRkC-bt8.js";import{C as F}from"./card-EcjmryU9.js";import{H as q}from"./heading-CRNoBc7q.js";import{T as Ae}from"./toggle-BbFVf61v.js";import{S as ra}from"./select-DnRuRG_N.js";import{I as kn}from"./icon-BSFY3vDO.js";import"./index-DRSy5Ssd.js";import"./index-CF7H4eMJ.js";import"./common-types-Sih75Sav.js";import"./disabled-context-rmpd7YJS.js";import"./types-Dx2TtIG9.js";import"./badge-CLQ59MDF.js";import"./spinner-AWUe4xwQ.js";import"./index-CUZDtIZe.js";import"./select.input-D0UkAPd9.js";import"./input-DTXbDJaL.js";import"./styled-components.browser.esm-BQ9GQzDc.js";import"./label-CqmyC9he.js";import"./help-icon-Buhx5nl6.js";import"./index-CEuq6vkz.js";import"./inheritsLoose-DP0QEDDI.js";import"./assertThisInitialized-B9jnkVVz.js";import"./memoize-one.esm-CcMeOnPo.js";import"./objectWithoutPropertiesLoose-CAYKN5F1.js";const sa=()=>{const t=u.useRef(null);return u.useLayoutEffect(()=>{t.current&&(t.current(),t.current=null)}),n=>{t.current=n}};var T=(t=>(t.CUSTOM="custom",t.PREDEFINED="predefined",t))(T||{});const Sn=t=>t==="undefined"||t===void 0||t===""||t==="null"||t===null||t==="NaN"||isNaN(t),jn=(t="",a,n,s="",i=!1)=>{var m;if(i)return t;if((m=l.validateNumber(t))!=null&&m.valid&&a&&!Sn(t))try{const o=l.isValueWithUnit(t)?t:l.withUnit(t,s);if(Tn({value:o,toUnit:a,unitkey:n})){const y=l.convertSamePrecision(o,a);return l.getValue(y)}return l.getValue(o)}catch{}},la=t=>t?!!l.getUnit(t):!1,O=({value:t="",toUnit:a,unitkey:n,defaultFromUnit:s,doNotConvertValue:i})=>{const m=la(t)||l.isValueWithUnit(t),o=l.getValue(t);return Sn(o)?o:m?jn(o,a,n,s,i):t},$e=t=>E.isObject(t)&&!E.isArray(t)&&!E.isFunction(t)?E.get(t,"fieldName",""):typeof t=="string"?t:"",ze=(t="")=>{var a;return(a=l.KNOWN_UNITS)==null?void 0:a.includes(t)},oa=(t,a)=>{const n=l.getUnit(t||"");return ze(a)&&ze(n)},ua="_predefinedMenuActive_ye9w9_1",da="_inputWrapper_ye9w9_4",Je={predefinedMenuActive:ua,inputWrapper:da},c=({name:t,placeholder:a="",disabled:n=!1,disabledUnit:s=!1,error:i=null,left:m=!1,small:o=!1,width:h="100%",value:y,unitkey:b="",initUnit:Ve,noConversion:Y=!1,onChange:_=E.noop,onClick:ke=E.noop,onFocus:Se=E.noop,onSwitchUnit:x=E.noop,unitTemplate:B,doNotConvertValue:R=!1,testId:M,warning:qe=null,predefinedOptions:S,initialPredefinedOption:En=!1,shouldLinkAutomaticly:Pe=!0,selectedPredefinedOptionKey:_e,validationCallback:Bn=()=>({name:"",error:null}),disabledValidation:Nn=!1,allowEmpty:ma=!1,autoValue:N,convertBackToStorageUnit:Dn=!1,enableCosmeticRounding:Re=!0,enableDisplayRounding:An=!1})=>{const W=Yn(),Fn=sa();typeof y=="number"&&(y=`${y}`);const[Me="",D=""]=y!==void 0?l.split(y):[],We=N?l.getUnit(N):"",Oe=u.useMemo(()=>Zn(b,B||(W==null?void 0:W.unitTemplate)),[b,B,W==null?void 0:W.unitTemplate]),qn=oa(y,Oe),k=Ve||Oe||D,Pn=Qn(k),He=O({value:y,toUnit:k,unitkey:b,defaultFromUnit:D,doNotConvertValue:R}),Le=O({value:N,toUnit:k,unitkey:b,defaultFromUnit:We,doNotConvertValue:R}),_n=He!==""?{value:He,unit:k}:Le!==""?{value:Le,unit:k}:{value:Me,unit:D},[v,je]=u.useState(_n),Rn=(v==null?void 0:v.value)===void 0,[A,Ee]=u.useState(En?T.PREDEFINED:T.CUSTOM),Be=Me===""&&N,Mn=!!(Nn||N),Z=S&&S.find(r=>{if(!(r!=null&&r.value))return;if(_e)return _e===r.valueKey;const d=l.isValueWithUnit(r.value)?l.getUnit(r.value):"";return l.withUnit(jn(y,d,b),d)===r.value}),Wn=()=>{const r=Be?N:y??"",d=v.unit;if(Tn({value:r,unitkey:b,toUnit:d})){if(b)try{let C=l.altUnitsList(r,b);return l.getValue(r)===""?C.map(w=>["",w[1]]):C}catch{return null}}else{let C=l.getAltUnitsListByQuantity(b);return C==null?void 0:C.map(w=>["",w==null?void 0:w.unit])}},On=r=>{const d=$e(t),j=r.target,{value:C,selectionStart:w}=j,Ie=l.withUnit(C,(v==null?void 0:v.unit)||""),De=Dn?l.withUnit(l.convertAndGetValue(Ie,D),D):Ie;_({target:{value:De,name:d}});const[$n,zn]=l.split(Ie);je({value:$n,unit:zn}),Fn(()=>{j.selectionStart=w,j.selectionEnd=w})},Hn=(r,d)=>{d===v.unit||isNaN(Number(r))||(je({value:r,unit:d}),x&&x(d))};u.useEffect(()=>{if(k){let r,d="";Pn!==k?(r=O({value:y,toUnit:k,unitkey:b,defaultFromUnit:D,doNotConvertValue:R}),d=k):l.withUnit(v.value,v.unit)!==y&&(r=O({value:y,toUnit:v.unit,unitkey:b,defaultFromUnit:D,doNotConvertValue:R}),d=v.unit),r!==void 0&&je({value:r,unit:d}),S&&Ee(Z&&Pe?T.PREDEFINED:T.CUSTOM)}},[k,y,i,Pe]);const be=Wn(),Ce=l.label(v.unit)||v.unit||"",Ln=Y||!be||be&&be.length===1,Ne=$e(t);let Ue;const Gn=r=>{const d=r!=null&&r.value?r.value:"",[j="",C=""]=l.isValueWithUnit(d)?l.split(d):[d];return{type:Ke.OPTION,inline:!0,onClick:()=>{l.validateNumber(j).valid&&!n&&(Ee(T.PREDEFINED),_({target:{value:d,name:typeof t=="string"?t:(t==null?void 0:t.fieldName)||"",predefinedSelected:!0,predefinedOption:r}}))},label:e.jsxs(e.Fragment,{children:[e.jsx(Te,{children:r.label}),e.jsx(U,{width:"20px",height:"0"})]}),description:l.isValueWithUnit(d)?`${j} ${C}`:d,selected:Z===r&&A===T.PREDEFINED}};if(Ue=[{type:Ke.OPTION,inline:!0,onClick:()=>{A!==T.CUSTOM&&!n&&_({target:{value:l.withUnit(v.value,v.unit),name:typeof t=="string"?t:(t==null?void 0:t.fieldName)||""}})},label:"Custom",selected:A===T.CUSTOM}],S!=null&&S.length){const r=S.map(Gn);Ue=[...Ue,...r]}const Kn=r=>{if(Be)return O({value:N,toUnit:v.unit,unitkey:b,defaultFromUnit:We,doNotConvertValue:R});if(l.isValueWithUnit(r)){const d=l.getUnit(r);return O({value:r,toUnit:v.unit,unitkey:b,defaultFromUnit:d,doNotConvertValue:R})}return r};return e.jsx("div",{className:A===T.PREDEFINED?Jn(Je.predefinedMenuActive):"",children:e.jsxs(ta,{small:o,width:h,children:[S&&e.jsx(ea,{text:A===T.PREDEFINED?Z==null?void 0:Z.label:"",children:e.jsx(Ge,{maxHeight:380,groupOrder:"first",testId:M&&`${M}-predefined-menu`,disabled:n,menu:{colored:!0,trigger:"Component",component:e.jsx(p,{groupOrder:"first",active:A===T.PREDEFINED,icon:A===T.PREDEFINED?"link":"unlink"}),small:o,sections:Ue}})}),e.jsx("div",{className:Je.inputWrapper,children:e.jsx(na,{name:Ne,testId:M,disabled:n,placeholder:Kn(a),value:v.value,onChange:On,onFocus:Se,error:i===null?void 0:i,warning:qe===null?void 0:qe,left:m,allowEmpty:Rn,validationCallback:(r,d)=>Bn(Ne,d),enableCosmeticRounding:Re,enableDisplayRounding:An,groupOrder:S?"middle":"first",disableInternalErrorValidationMessages:Mn,small:o},Ne)}),Ce&&(Ln||!qn?e.jsx(Xn,{groupOrder:"last",children:Ce}):e.jsx(Ge,{maxHeight:380,groupOrder:"last",disabled:s,testId:M&&`${M}-menu`,menu:{label:Ce,trigger:"DropDownButton",small:o,sections:be.map(([r,d,j])=>{const C=j||d||"",w=l.isValidNum(r)?r:"";return{type:"Option",label:Re?aa(w):w,inline:!0,onClick:De=>{De.stopPropagation(),Hn(Be?"":r,d)},description:C,selected:C===Ce,testId:`${M}-unit-${C}`}})}}))]})})};c.__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:"(name: string, error: string | null) => any",signature:{arguments:[{type:{name:"string"},name:"name"},{type:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},name:"error"}],return:{name:"any"}}},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: TChangeEvent | ICustomChangeEvent) => void",signature:{arguments:[{type:{name:"union",raw:"TChangeEvent | ICustomChangeEvent",elements:[{name:"intersection",raw:`ChangeEvent<T> & {
2
- target:
3
- | T
4
- | { name: string; value: any; label?: string; files?: FileList | null };
5
- }`,elements:[{name:"ChangeEvent",elements:[{name:"T"}],raw:"ChangeEvent<T>"},{name:"signature",type:"object",raw:`{
6
- target:
7
- | T
8
- | { name: string; value: any; label?: string; files?: FileList | null };
9
- }`,signature:{properties:[{key:"target",value:{name:"union",raw:`| T
10
- | { name: string; value: any; label?: string; files?: FileList | null }`,elements:[{name:"T"},{name:"signature",type:"object",raw:"{ name: string; value: any; label?: string; files?: FileList | null }",signature:{properties:[{key:"name",value:{name:"string",required:!0}},{key:"value",value:{name:"any",required:!0}},{key:"label",value:{name:"string",required:!1}},{key:"files",value:{name:"union",raw:"FileList | null",elements:[{name:"FileList"},{name:"null"}],required:!1}}]}}],required:!0}}]}}]},{name:"ICustomChangeEvent"}]},name:"event"}],return:{name:"void"}}},description:"",defaultValue:{value:"noop",computed:!0}},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:"noop",computed:!0}},onClick:{required:!1,tsType:{name:"MouseEventHandler",elements:[{name:"HTMLInputElement"}],raw:"MouseEventHandler<HTMLInputElement>"},description:"",defaultValue:{value:"noop",computed:!0}},onFocus:{required:!1,tsType:{name:"FocusEventHandler",elements:[{name:"HTMLInputElement"}],raw:"FocusEventHandler<HTMLInputElement>"},description:"",defaultValue:{value:"noop",computed:!0}},unitTemplate:{required:!1,tsType:{name:"Record",elements:[{name:"string"},{name:"any"}],raw:"Record<string, any>"},description:""},convertBackToStorageUnit:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}},enableCosmeticRounding:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"true",computed:!1}},enableDisplayRounding:{required:!1,tsType:{name:"boolean"},description:"",defaultValue:{value:"false",computed:!1}}}};const{useArgs:ca}=__STORYBOOK_MODULE_PREVIEW_API__,ai={title:"Forms/UnitInput",component:c,args:{name:"example",unitkey:"length",value:"123|m"}},I=t=>{const[a,n]=ca(),s=i=>{n({value:i.target.value})};return e.jsx(c,{...t,onChange:s})},xe=I.bind({}),Q=I.bind({});Q.args={initUnit:"ft",unitTemplate:{length:"ft"}};const X=I.bind({});X.args={value:'123|"',unitkey:'"'};const ee=I.bind({});ee.args={width:"180px"};const te=I.bind({});te.args={noConversion:!0};const ne=I.bind({});ne.args={small:!0};const H=()=>{const[t,a]=u.useState("123|m");return e.jsx(c,{name:"example",onChange:n=>a(n.target.value),placeholder:"Type a value...",value:t,initUnit:"m",unitkey:"depth",unitTemplate:{depth:"m"},testId:"testId"})};H.play=async({canvasElement:t,step:a})=>{const n=P(t),s=P(t.ownerDocument.body);await a("Shows validation error for non-numeric input",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"123x45s6"),await f(n.getByDisplayValue("123x45s6")).toBeInTheDocument(),await fe.mouseOver(i),await ye(()=>{f(s.getByText("Must be a numerical value")).toBeInTheDocument()})})};const L=()=>{const[t,a]=u.useState("|m");return e.jsx(c,{name:"example-ft",onChange:n=>a(n.target.value),placeholder:"7|ft",value:t,initUnit:"m",unitkey:"depth",unitTemplate:{depth:"m"},testId:"testId-ft"})};L.play=async({canvasElement:t,step:a})=>{const n=P(t),s=P(t.ownerDocument.body);await a("Handle input with unit only",async()=>{const i=n.getByTestId("testId-ft");await f(n.getByDisplayValue("")).toBeInTheDocument(),await fe.mouseOver(i),await ye(()=>{f(s.queryByText("Must be a numerical value")).not.toBeInTheDocument()})}),await a("Clear input and check placeholder",async()=>{const i=n.getByTestId("testId-ft");await g.clear(i),await f(i).toHaveAttribute("placeholder","2.13")}),await a("Type a correct numeric value and ensure no error",async()=>{const i=n.getByTestId("testId-ft");await g.type(i,"123"),await f(n.getByDisplayValue("123")).toBeInTheDocument(),await fe.mouseOver(i),await ye(()=>{f(s.queryByText("Must be a numerical value")).not.toBeInTheDocument()})}),await a("Remove value, type incorrect value and check for error",async()=>{const i=n.getByTestId("testId-ft");await g.clear(i),await g.type(i,"123abc"),await f(n.getByDisplayValue("123abc")).toBeInTheDocument(),await fe.mouseOver(i),await ye(()=>{f(s.getByText("Must be a numerical value")).toBeInTheDocument()})})};const ae=I.bind({});ae.args={error:"Error message goes here"};const ie=I.bind({});ie.args={value:"asas123asd|%"};const G=I.bind({});G.args={disabled:!0,disabledUnit:!0};G.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 re=I.bind({});re.args={disabled:!0,disabledUnit:!0,noConversion:!0};const se=I.bind({});se.args={disabledUnit:!0,unitkey:void 0};const le=I.bind({});le.args={disabledUnit:!0,unitkey:"length"};const oe=I.bind({});oe.args={disabledUnit:!1,disabled:!0};const K=t=>{const[a,n]=u.useState("123|m"),[s,i]=u.useState("223|m"),[m,o]=u.useState("ft");return e.jsxs(e.Fragment,{children:[e.jsx(p,{label:"Change initUnit",onClick:()=>o(m==="m"?"ft":"m")}),e.jsx(U,{}),e.jsx(p,{label:"Change value",onClick:()=>n(a==="123|m"?"456|m":"123|m")}),e.jsx(U,{}),e.jsx(c,{name:"example",onChange:h=>{n(h.target.value)},unitkey:"length",value:a,initUnit:m,onSwitchUnit:o}),e.jsx(U,{}),e.jsx(c,{name:"example2",onChange:h=>{i(h.target.value)},unitkey:"length",value:s,initUnit:m,onSwitchUnit:o}),e.jsx(ia,{}),e.jsx("h4",{children:"Without initUnit property (taken from the redux store)"}),e.jsx(c,{name:"example",onChange:h=>{n(h.target.value)},unitkey:"length",value:a,onSwitchUnit:o}),e.jsx(c,{name:"example2",onChange:h=>{i(h.target.value)},unitkey:"length",value:s,onSwitchUnit:o})]})};K.parameters={docs:{description:{story:"[OW-4380](https://oliasoft.atlassian.net/browse/OW-4380?atlOrigin=eyJpIjoiMmM1N2RkNWU3Mjk5NDYxY2E0YzhkMzk5ZTVmZTJhMjciLCJwIjoiaiJ9)"}}};const ue=I.bind({});ue.args={predefinedOptions:[{label:"bottom of casing",value:"12|km"},{label:"mud weight at shoe depth",value:"8|mm"}]};const $=()=>{const t="500px",[a,n]=u.useState(void 0);return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"Different edge cases such as +/- infinity, undefined, NaN, null:"}),e.jsxs(wn,{children:[e.jsxs(Fe,{width:"25%",children:[e.jsx(p,{label:"Change value infinity",onClick:()=>n(1/0)}),e.jsx("br",{}),e.jsx(p,{label:"Change value -infinity",onClick:()=>n(-1/0)}),e.jsx("br",{}),e.jsx(p,{label:"Change value null",onClick:()=>n(null)}),e.jsx("br",{}),e.jsx(p,{label:"Change value - undefined",onClick:()=>n(void 0)}),e.jsx("br",{}),e.jsx(p,{label:"Change value - NaN",onClick:()=>n(NaN)}),e.jsx("br",{}),e.jsx(p,{label:"Change value - nothing (empty)",onClick:()=>n(void 0)}),e.jsx("br",{}),e.jsx(p,{label:"Change value - empty string",onClick:()=>n("")})]}),e.jsxs(Fe,{width:"25%",children:[e.jsx(p,{label:"Change value infinity|m",onClick:()=>n("Infinity|m")}),e.jsx("br",{}),e.jsx(p,{label:"Change value -infinity|m",onClick:()=>n("-Infinity|m")}),e.jsx("br",{}),e.jsx(p,{label:"Change value null|m",onClick:()=>n("null|m")}),e.jsx("br",{}),e.jsx(p,{label:"Change value - undefined|m",onClick:()=>n("undefined|m")}),e.jsx("br",{}),e.jsx(p,{label:"Change value - NaN|m",onClick:()=>n("NaN|m")}),e.jsx("br",{}),e.jsx(p,{label:"Change value - nothing (empty)|m",onClick:()=>n("|m")})]})]}),e.jsx("br",{}),e.jsx(V,{label:"Normal PUI",children:e.jsx(c,{name:"example1",onChange:s=>n(s.target.value),value:a,unitkey:"length",width:t,placeholder:"value|unit"})}),e.jsx(V,{label:"Disabled validation",children:e.jsx(c,{name:"example2",onChange:s=>n(s.target.value),value:a,unitkey:"length",disabledValidation:!0,width:t})}),e.jsx(V,{label:"Disabled validation and manual error",children:e.jsx(c,{name:"example3",onChange:s=>n(s.target.value),value:a,unitkey:"length",error:"test",disabledValidation:!0,width:t})}),e.jsx(we,{message:{heading:"Current value inside PUI: "+a,visible:!0}})]})},de=()=>{const t="500px",[a,n]=u.useState("1|m"),[s,i]=u.useState("|m"),m="123|km";return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"Different cases for automatic (placeholder) values:"}),e.jsx(wn,{children:e.jsxs(Fe,{width:"25%",children:[e.jsx(p,{label:"Change value to ''",onClick:()=>n("")}),e.jsx("br",{}),e.jsx(p,{label:"Change value to 1",onClick:()=>n("1")}),e.jsx("br",{}),e.jsx(p,{label:"Change value to 1|m",onClick:()=>n("1|m")}),e.jsx("br",{}),e.jsx(p,{label:"Change value to |m - empty value",onClick:()=>n("|m")})]})}),e.jsx("br",{}),e.jsx(V,{label:"Normal PUI (placeholder + auto)",children:e.jsx(c,{name:"example1",onChange:o=>n(o.target.value),value:a,unitkey:"length",width:t,placeholder:"value|unit",autoValue:m})}),e.jsx(V,{label:"Normal PUI (only auto)",children:e.jsx(c,{name:"example1",onChange:o=>n(o.target.value),value:a,unitkey:"length",width:t,autoValue:m})}),e.jsx(V,{label:"Empty PUI with autoValue",children:e.jsx(c,{name:"example1",onChange:o=>i(o.target.value),value:s,unitkey:"length",width:t,autoValue:m})}),e.jsx(V,{label:"Normal PUI (only placeholder)",children:e.jsx(c,{name:"example1",onChange:o=>n(o.target.value),value:a,unitkey:"length",width:t,placeholder:"Placeholder test"})}),e.jsx(V,{label:"Normal PUI (placeholder + allowEmpty)",children:e.jsx(c,{name:"example1",onChange:o=>n(o.target.value),value:a,unitkey:"length",width:t,placeholder:"Placeholder test",allowEmpty:!0})}),e.jsx(we,{message:{heading:"Current value inside PUI: "+a,visible:!0}})]})};$.parameters={docs:{description:{story:"[OW-8884](https://oliasoft.atlassian.net/browse/OW-8884)"}}};const ce=()=>{const[t,a]=u.useState("123|%"),[n,s]=u.useState(null),i="This should be visible when an error appears",m=(o,h)=>(s(h),{name:o,error:h});return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"3rd party validation message when inputting invalid value:"}),e.jsx(c,{name:"example",onChange:o=>a(o.target.value),error:!n||i,validationCallback:m,value:t}),e.jsx("br",{}),e.jsx(U,{}),e.jsx("h4",{children:"Original validation message: "}),e.jsx(we,{message:{heading:n,visible:!0}})]})},me=()=>{const[t,a]=u.useState("123|m"),[n,s]=u.useState(""),[i,m]=u.useState("km"),o=()=>{m("ft"),s("placeholder"),a("|m")};return e.jsxs(e.Fragment,{children:[e.jsx("h4",{children:"Empty value case:"}),e.jsx(c,{name:"example",onChange:h=>a(h.target.value),value:t,allowEmpty:!0,placeholder:n,initUnit:i,unitkey:"length"}),e.jsx("br",{}),e.jsx(U,{}),e.jsx(p,{label:"Change value |m and unit ft",onClick:()=>o()})]})},pe=()=>{const[t,a]=u.useState("123|m"),[n,s]=u.useState("m");return e.jsxs(e.Fragment,{children:[e.jsx(c,{name:"example",onChange:i=>a(i.target.value),value:t,initUnit:n,unitkey:"length",onSwitchUnit:s}),e.jsx(U,{}),e.jsx(c,{name:"example",onChange:i=>a(i.target.value),value:t,initUnit:n,unitkey:"length",onSwitchUnit:s})]})},ge=()=>{const[t,a]=u.useState(!0),n=()=>{a(!1),setTimeout(()=>a(!0),0)},[s,i]=u.useState("123|ft");return e.jsxs(Vn,{columns:"1fr 1fr",gap:!0,children:[e.jsxs(F,{heading:e.jsx(q,{children:"Storage State (Redux)"}),children:[s,e.jsx(U,{}),e.jsx(p,{label:"Change value",onClick:()=>i(l.withUnit(String(Math.floor(Math.random()*100)),"ft"))})]}),e.jsx(F,{heading:e.jsx(q,{icon:e.jsx(kn,{icon:"refresh",testId:"triggerRerenderTestId"}),onIconClick:n,children:"UnitInput"}),children:t&&e.jsx(c,{name:"example",onChange:m=>i(m.target.value),value:s,initUnit:"m",unitkey:"depth",unitTemplate:{depth:"m"}})})]})},he=()=>e.jsxs(e.Fragment,{children:[e.jsx(Te,{faint:!0,children:"Reproduce OW-10614 rounding noise bug when storing values in a different unit to the display unit"}),e.jsx(U,{}),e.jsx(c,{name:"example",onChange:()=>{},value:l.withUnit(l.convertAndGetValue("9750|psi","bar"),"bar"),initUnit:"psi",unitkey:"pressure",unitTemplate:{pressure:"psi"}}),e.jsx(U,{}),e.jsx(c,{name:"example2",onChange:()=>{},value:l.withUnit(l.convertAndGetValue("8642|lbf","tonneForce"),"tonneForce"),initUnit:"lbf",unitkey:"force",unitTemplate:{force:"tonneForce"}})]}),z=()=>e.jsxs(e.Fragment,{children:[e.jsx(c,{name:"example",unitkey:"moleWeight",initUnit:"g/mol",doNotConvertValue:!0,value:"170|g/mol",unitTemplate:{moleWeight:"g/mol"},testId:"case1"}),e.jsx(U,{}),e.jsx(c,{name:"gor",unitkey:"moleWeight",initUnit:"gor",value:"Infinity|SCF/STB",testId:"case2"})]});z.play=async({canvasElement:t,step:a})=>{const n=P(t);await a("Can enter decimal values",async()=>{await f(n.getByDisplayValue("170")).toBeInTheDocument(),await f(n.getByDisplayValue("")).toBeInTheDocument()})};const ve=()=>{const[t,a]=u.useState(!0),n=()=>{a(!1),setTimeout(()=>a(!0),0)},[s,i]=u.useState("psi"),[m,o]=u.useState(!1),[h,y]=u.useState(!0),[b,Ve]=u.useState(!0),[Y,_]=u.useState("672.2388357750001|bar"),[ke,Se]=u.useState("");return e.jsxs(Vn,{columns:"1fr 1fr",gap:!0,children:[e.jsxs(F,{heading:e.jsx(q,{children:"Settings"}),children:[e.jsx(V,{label:"Enable display rounding:",labelLeft:!0,labelWidth:200,children:e.jsx(Ae,{checked:m,onChange:x=>o(x.target.checked)})}),e.jsx(V,{label:"Enable cosmetic rounding:",labelLeft:!0,labelWidth:200,children:e.jsx(Ae,{checked:h,onChange:x=>y(x.target.checked)})}),e.jsx(V,{label:"Convert back to storage unit (onChange):",labelLeft:!0,labelWidth:200,children:e.jsx(Ae,{checked:b,onChange:x=>Ve(x.target.checked)})})]}),e.jsxs(F,{heading:e.jsx(q,{icon:e.jsx(kn,{icon:"refresh",testId:"triggerRerenderTestId"}),onIconClick:n,children:"UnitInput"}),children:[e.jsx(Te,{faint:!0,children:"Cosmetic Rounding Test Case: type 9750 then return (compare with enableCosmeticRounding on and off)"}),e.jsx(U,{}),e.jsx(Te,{warning:!0,children:"Note: UnitInput uses convertSamePrecision internally (decision prior to cosmetic value implementation). This means not all rounding noise occurrences seen in NumberInput will be reproducible in UnitInput, because they get rounded off by other logic."}),e.jsx(U,{}),t&&e.jsx(c,{name:"Example",unitkey:"pressure",initUnit:s,unitTemplate:{pressure:"psi"},value:Y,onChange:x=>{const{value:B}=x.target;B&&_(B)},enableDisplayRounding:m,enableCosmeticRounding:h,error:l.convertAndGetValue(Y,"bar")>=0?"":"Value must be positive",validationCallback:(x,B)=>{Se(B??"")},convertBackToStorageUnit:b})]}),e.jsx(F,{heading:e.jsx(q,{children:"Unit Template"}),children:e.jsx(ra,{options:[{label:"Bar",value:"bar"},{label:"psi",value:"psi"}],value:s,width:70,onChange:x=>i(x.target.value)})}),e.jsx(F,{heading:e.jsx(q,{children:"Test Validation Callback"}),children:ke&&e.jsx(we,{message:{content:ke,icon:!0,type:"Error",visible:!0}})}),e.jsxs(F,{heading:e.jsx(q,{children:"Storage State / Redux"}),children:[Y,e.jsx(U,{}),e.jsx(p,{label:"Change value",onClick:()=>_(l.withUnit(String(Math.floor(Math.random()*100)),"bar"))})]})]})},J=()=>{const[t,a]=u.useState("123|m");return e.jsx(c,{name:"example",onChange:n=>a(n.target.value),value:t,initUnit:"m",unitkey:"depth",unitTemplate:{depth:"m"},testId:"testId"})};J.play=async({canvasElement:t,step:a})=>{const n=P(t),s=P(t.ownerDocument.body);await a("Can enter decimal values",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"123.123456789"),await f(n.getByDisplayValue("123.123456789")).toBeInTheDocument()}),await a("Can enter scientific notation",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"-1.12e3"),await f(n.getByDisplayValue("-1.12e3")).toBeInTheDocument()}),await a("Can enter comma decimals (converts to dot)",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"123,456"),await f(n.getByDisplayValue("123.456")).toBeInTheDocument()}),await a("Can enter small numbers",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"0.0000000023"),await f(n.getByDisplayValue("0.0000000023")).toBeInTheDocument()}),await a("Can enter large numbers",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"999999999999"),await f(n.getByDisplayValue("999999999999")).toBeInTheDocument()}),await a("Can convert units",async()=>{const i=n.getByTestId("testId"),m=n.getByTestId("testId-menu");await g.clear(i),await g.type(i,"456.1"),await g.click(m),await g.click(s.getByTestId("testId-unit-ft")),await f(n.getByDisplayValue("1496")).toBeInTheDocument()}),await a("Shows validation error for non-numeric input",async()=>{const i=n.getByTestId("testId");await g.clear(i),await g.type(i,"123x45s6"),await f(n.getByDisplayValue("123x45s6")).toBeInTheDocument(),await fe.mouseOver(i),await ye(()=>{f(s.getByText("Must be a numerical value")).toBeInTheDocument()})})};H.__docgenInfo={description:"",methods:[{name:"play",docblock:null,modifiers:["static"],params:[{name:"{ canvasElement, step }",optional:!1,type:null}],returns:null}],displayName:"Placeholder"};L.__docgenInfo={description:"",methods:[{name:"play",docblock:null,modifiers:["static"],params:[{name:"{ canvasElement, step }",optional:!1,type:null}],returns:null}],displayName:"PlaceholderWithUnit"};K.__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:"(name: string, error: string | null) => any",signature:{arguments:[{type:{name:"string"},name:"name"},{type:{name:"union",raw:"string | null",elements:[{name:"string"},{name:"null"}]},name:"error"}],return:{name:"any"}}},description:""},disabledValidation:{required:!1,tsType:{name:"boolean"},description:""},allowEmpty:{required:!1,tsType:{name:"boolean"},description:""},autoValue:{required:!1,tsType:{name:"string"},description:""},onChange:{required:!1,tsType:{name:"signature",type:"function",raw:"(event: TChangeEvent | ICustomChangeEvent) => void",signature:{arguments:[{type:{name:"union",raw:"TChangeEvent | ICustomChangeEvent",elements:[{name:"intersection",raw:`ChangeEvent<T> & {
11
- target:
12
- | T
13
- | { name: string; value: any; label?: string; files?: FileList | null };
14
- }`,elements:[{name:"ChangeEvent",elements:[{name:"T"}],raw:"ChangeEvent<T>"},{name:"signature",type:"object",raw:`{
15
- target:
16
- | T
17
- | { name: string; value: any; label?: string; files?: FileList | null };
18
- }`,signature:{properties:[{key:"target",value:{name:"union",raw:`| T
19
- | { name: string; value: any; label?: string; files?: FileList | null }`,elements:[{name:"T"},{name:"signature",type:"object",raw:"{ name: string; value: any; label?: string; files?: FileList | null }",signature:{properties:[{key:"name",value:{name:"string",required:!0}},{key:"value",value:{name:"any",required:!0}},{key:"label",value:{name:"string",required:!1}},{key:"files",value:{name:"union",raw:"FileList | null",elements:[{name:"FileList"},{name:"null"}],required:!1}}]}}],required:!0}}]}}]},{name:"ICustomChangeEvent"}]},name:"event"}],return:{name:"void"}}},description:""},onSwitchUnit:{required:!1,tsType:{name:"signature",type:"function",raw:"(unit: string) => void",signature:{arguments:[{type:{name:"string"},name:"unit"}],return:{name:"void"}}},description:""},onClick:{required:!1,tsType:{name:"MouseEventHandler",elements:[{name:"HTMLInputElement"}],raw:"MouseEventHandler<HTMLInputElement>"},description:""},onFocus:{required:!1,tsType:{name:"FocusEventHandler",elements:[{name:"HTMLInputElement"}],raw:"FocusEventHandler<HTMLInputElement>"},description:""},unitTemplate:{required:!1,tsType:{name:"Record",elements:[{name:"string"},{name:"any"}],raw:"Record<string, any>"},description:""},convertBackToStorageUnit:{required:!1,tsType:{name:"boolean"},description:""},enableCosmeticRounding:{required:!1,tsType:{name:"boolean"},description:""},enableDisplayRounding:{required:!1,tsType:{name:"boolean"},description:""}}};$.__docgenInfo={description:"",methods:[],displayName:"TestEdgeCases"};de.__docgenInfo={description:"",methods:[],displayName:"AutomaticValues"};ce.__docgenInfo={description:"",methods:[],displayName:"ValidationCallback"};me.__docgenInfo={description:"",methods:[],displayName:"AllowEmptyPUI"};pe.__docgenInfo={description:"",methods:[],displayName:"onSwitchUnit"};ge.__docgenInfo={description:"",methods:[],displayName:"ManagedTestCase"};he.__docgenInfo={description:"",methods:[],displayName:"OW_10614TestCase"};z.__docgenInfo={description:"",methods:[{name:"play",docblock:null,modifiers:["static"],params:[{name:"{ canvasElement, step }",optional:!1,type:null}],returns:null}],displayName:"OW_17784TestCase"};ve.__docgenInfo={description:"",methods:[],displayName:"DemoCosmeticRounding"};J.__docgenInfo={description:"",methods:[{name:"play",docblock:null,modifiers:["static"],params:[{name:"{ canvasElement, step }",optional:!1,type:null}],returns:null}],displayName:"TestUserInput"};var Ye,Ze,Qe;xe.parameters={...xe.parameters,docs:{...(Ye=xe.parameters)==null?void 0:Ye.docs,source:{originalSource:`args => {
20
- const [_, updateArgs] = useArgs();
21
- const handleChange = (evt: any) => {
22
- updateArgs({
23
- value: evt.target.value
24
- });
25
- };
26
- return <UnitInput {...args} onChange={handleChange} />;
27
- }`,...(Qe=(Ze=xe.parameters)==null?void 0:Ze.docs)==null?void 0:Qe.source}}};var Xe,et,tt;Q.parameters={...Q.parameters,docs:{...(Xe=Q.parameters)==null?void 0:Xe.docs,source:{originalSource:`args => {
28
- const [_, updateArgs] = useArgs();
29
- const handleChange = (evt: any) => {
30
- updateArgs({
31
- value: evt.target.value
32
- });
33
- };
34
- return <UnitInput {...args} onChange={handleChange} />;
35
- }`,...(tt=(et=Q.parameters)==null?void 0:et.docs)==null?void 0:tt.source}}};var nt,at,it;X.parameters={...X.parameters,docs:{...(nt=X.parameters)==null?void 0:nt.docs,source:{originalSource:`args => {
36
- const [_, updateArgs] = useArgs();
37
- const handleChange = (evt: any) => {
38
- updateArgs({
39
- value: evt.target.value
40
- });
41
- };
42
- return <UnitInput {...args} onChange={handleChange} />;
43
- }`,...(it=(at=X.parameters)==null?void 0:at.docs)==null?void 0:it.source}}};var rt,st,lt;ee.parameters={...ee.parameters,docs:{...(rt=ee.parameters)==null?void 0:rt.docs,source:{originalSource:`args => {
44
- const [_, updateArgs] = useArgs();
45
- const handleChange = (evt: any) => {
46
- updateArgs({
47
- value: evt.target.value
48
- });
49
- };
50
- return <UnitInput {...args} onChange={handleChange} />;
51
- }`,...(lt=(st=ee.parameters)==null?void 0:st.docs)==null?void 0:lt.source}}};var ot,ut,dt;te.parameters={...te.parameters,docs:{...(ot=te.parameters)==null?void 0:ot.docs,source:{originalSource:`args => {
52
- const [_, updateArgs] = useArgs();
53
- const handleChange = (evt: any) => {
54
- updateArgs({
55
- value: evt.target.value
56
- });
57
- };
58
- return <UnitInput {...args} onChange={handleChange} />;
59
- }`,...(dt=(ut=te.parameters)==null?void 0:ut.docs)==null?void 0:dt.source}}};var ct,mt,pt;ne.parameters={...ne.parameters,docs:{...(ct=ne.parameters)==null?void 0:ct.docs,source:{originalSource:`args => {
60
- const [_, updateArgs] = useArgs();
61
- const handleChange = (evt: any) => {
62
- updateArgs({
63
- value: evt.target.value
64
- });
65
- };
66
- return <UnitInput {...args} onChange={handleChange} />;
67
- }`,...(pt=(mt=ne.parameters)==null?void 0:mt.docs)==null?void 0:pt.source}}};var gt,ht,vt;H.parameters={...H.parameters,docs:{...(gt=H.parameters)==null?void 0:gt.docs,source:{originalSource:`() => {
68
- const [value, setValue] = useState('123|m');
69
- return <UnitInput name="example" onChange={evt => setValue(evt.target.value)} placeholder="Type a value..." value={value} initUnit="m" unitkey="depth" unitTemplate={{
70
- depth: 'm'
71
- }} testId="testId" />;
72
- }`,...(vt=(ht=H.parameters)==null?void 0:ht.docs)==null?void 0:vt.source}}};var ft,yt,bt;L.parameters={...L.parameters,docs:{...(ft=L.parameters)==null?void 0:ft.docs,source:{originalSource:`() => {
73
- const [value, setValue] = useState('|m');
74
- return <UnitInput name="example-ft" onChange={evt => setValue(evt.target.value)} placeholder="7|ft" value={value} initUnit="m" unitkey="depth" unitTemplate={{
75
- depth: 'm'
76
- }} testId="testId-ft" />;
77
- }`,...(bt=(yt=L.parameters)==null?void 0:yt.docs)==null?void 0:bt.source}}};var Ct,Ut,It;ae.parameters={...ae.parameters,docs:{...(Ct=ae.parameters)==null?void 0:Ct.docs,source:{originalSource:`args => {
78
- const [_, updateArgs] = useArgs();
79
- const handleChange = (evt: any) => {
80
- updateArgs({
81
- value: evt.target.value
82
- });
83
- };
84
- return <UnitInput {...args} onChange={handleChange} />;
85
- }`,...(It=(Ut=ae.parameters)==null?void 0:Ut.docs)==null?void 0:It.source}}};var xt,Tt,wt;ie.parameters={...ie.parameters,docs:{...(xt=ie.parameters)==null?void 0:xt.docs,source:{originalSource:`args => {
86
- const [_, updateArgs] = useArgs();
87
- const handleChange = (evt: any) => {
88
- updateArgs({
89
- value: evt.target.value
90
- });
91
- };
92
- return <UnitInput {...args} onChange={handleChange} />;
93
- }`,...(wt=(Tt=ie.parameters)==null?void 0:Tt.docs)==null?void 0:wt.source}}};var Vt,kt,St;G.parameters={...G.parameters,docs:{...(Vt=G.parameters)==null?void 0:Vt.docs,source:{originalSource:`args => {
94
- const [_, updateArgs] = useArgs();
95
- const handleChange = (evt: any) => {
96
- updateArgs({
97
- value: evt.target.value
98
- });
99
- };
100
- return <UnitInput {...args} onChange={handleChange} />;
101
- }`,...(St=(kt=G.parameters)==null?void 0:kt.docs)==null?void 0:St.source}}};var jt,Et,Bt;re.parameters={...re.parameters,docs:{...(jt=re.parameters)==null?void 0:jt.docs,source:{originalSource:`args => {
102
- const [_, updateArgs] = useArgs();
103
- const handleChange = (evt: any) => {
104
- updateArgs({
105
- value: evt.target.value
106
- });
107
- };
108
- return <UnitInput {...args} onChange={handleChange} />;
109
- }`,...(Bt=(Et=re.parameters)==null?void 0:Et.docs)==null?void 0:Bt.source}}};var Nt,Dt,At;se.parameters={...se.parameters,docs:{...(Nt=se.parameters)==null?void 0:Nt.docs,source:{originalSource:`args => {
110
- const [_, updateArgs] = useArgs();
111
- const handleChange = (evt: any) => {
112
- updateArgs({
113
- value: evt.target.value
114
- });
115
- };
116
- return <UnitInput {...args} onChange={handleChange} />;
117
- }`,...(At=(Dt=se.parameters)==null?void 0:Dt.docs)==null?void 0:At.source}}};var Ft,qt,Pt;le.parameters={...le.parameters,docs:{...(Ft=le.parameters)==null?void 0:Ft.docs,source:{originalSource:`args => {
118
- const [_, updateArgs] = useArgs();
119
- const handleChange = (evt: any) => {
120
- updateArgs({
121
- value: evt.target.value
122
- });
123
- };
124
- return <UnitInput {...args} onChange={handleChange} />;
125
- }`,...(Pt=(qt=le.parameters)==null?void 0:qt.docs)==null?void 0:Pt.source}}};var _t,Rt,Mt;oe.parameters={...oe.parameters,docs:{...(_t=oe.parameters)==null?void 0:_t.docs,source:{originalSource:`args => {
126
- const [_, updateArgs] = useArgs();
127
- const handleChange = (evt: any) => {
128
- updateArgs({
129
- value: evt.target.value
130
- });
131
- };
132
- return <UnitInput {...args} onChange={handleChange} />;
133
- }`,...(Mt=(Rt=oe.parameters)==null?void 0:Rt.docs)==null?void 0:Mt.source}}};var Wt,Ot,Ht;K.parameters={...K.parameters,docs:{...(Wt=K.parameters)==null?void 0:Wt.docs,source:{originalSource:`(args: IUnitInputProps) => {
134
- const [value, setValue] = useState('123|m');
135
- const [value2, setValue2] = useState('223|m');
136
- const [initUnit, setInitUnit] = useState('ft');
137
- return <>
138
- <Button label="Change initUnit" onClick={() => setInitUnit(initUnit === 'm' ? 'ft' : 'm')} />
139
- <Spacer />
140
- <Button label="Change value" onClick={() => setValue(value === '123|m' ? '456|m' : '123|m')} />
141
- <Spacer />
142
- <UnitInput name="example" onChange={evt => {
143
- setValue(evt.target.value);
144
- }} unitkey="length" value={value} initUnit={initUnit} onSwitchUnit={setInitUnit} />
145
- <Spacer />
146
- <UnitInput name="example2" onChange={evt => {
147
- setValue2(evt.target.value);
148
- }} unitkey="length" value={value2} initUnit={initUnit} onSwitchUnit={setInitUnit} />
149
- <Divider />
150
- <h4>Without initUnit property (taken from the redux store)</h4>
151
- <UnitInput name="example" onChange={evt => {
152
- setValue(evt.target.value);
153
- }} unitkey="length" value={value} onSwitchUnit={setInitUnit} />
154
- <UnitInput name="example2" onChange={evt => {
155
- setValue2(evt.target.value);
156
- }} unitkey="length" value={value2} onSwitchUnit={setInitUnit} />
157
- </>;
158
- }`,...(Ht=(Ot=K.parameters)==null?void 0:Ot.docs)==null?void 0:Ht.source}}};var Lt,Gt,Kt;ue.parameters={...ue.parameters,docs:{...(Lt=ue.parameters)==null?void 0:Lt.docs,source:{originalSource:`args => {
159
- const [_, updateArgs] = useArgs();
160
- const handleChange = (evt: any) => {
161
- updateArgs({
162
- value: evt.target.value
163
- });
164
- };
165
- return <UnitInput {...args} onChange={handleChange} />;
166
- }`,...(Kt=(Gt=ue.parameters)==null?void 0:Gt.docs)==null?void 0:Kt.source}}};var $t,zt,Jt;$.parameters={...$.parameters,docs:{...($t=$.parameters)==null?void 0:$t.docs,source:{originalSource:`() => {
167
- const width = '500px';
168
- const [value, setValue] = useState<any>(undefined);
169
- return <>
170
- <h4>Different edge cases such as +/- infinity, undefined, NaN, null:</h4>
171
- <Row>
172
- <Column width="25%">
173
- <Button label="Change value infinity" onClick={() => setValue(Infinity)} />
174
- <br />
175
- <Button label="Change value -infinity" onClick={() => setValue(-Infinity)} />
176
- <br />
177
- <Button label="Change value null" onClick={() => setValue(null)} />
178
- <br />
179
- <Button label="Change value - undefined" onClick={() => setValue(undefined)} />
180
- <br />
181
- <Button label="Change value - NaN" onClick={() => setValue(NaN)} />
182
- <br />
183
- <Button label="Change value - nothing (empty)" onClick={() => setValue(undefined)} />
184
- <br />
185
- <Button label="Change value - empty string" onClick={() => setValue('')} />
186
- </Column>
187
- <Column width="25%">
188
- <Button label="Change value infinity|m" onClick={() => setValue(Infinity + '|m')} />
189
- <br />
190
- <Button label="Change value -infinity|m" onClick={() => setValue(-Infinity + '|m')} />
191
- <br />
192
- <Button label="Change value null|m" onClick={() => setValue(null + '|m')} />
193
- <br />
194
- <Button label="Change value - undefined|m" onClick={() => setValue(undefined + '|m')} />
195
- <br />
196
- <Button label="Change value - NaN|m" onClick={() => setValue(NaN + '|m')} />
197
- <br />
198
- <Button label="Change value - nothing (empty)|m" onClick={() => setValue('|m')} />
199
- </Column>
200
- </Row>
201
- <br />
202
- <Field label="Normal PUI">
203
- <UnitInput name="example1" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" width={width} placeholder="value|unit" />
204
- </Field>
205
- <Field label="Disabled validation">
206
- <UnitInput name="example2" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" disabledValidation width={width} />
207
- </Field>
208
- <Field label="Disabled validation and manual error">
209
- <UnitInput name="example3" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" error="test" disabledValidation width={width} />
210
- </Field>
211
- <Message message={{
212
- heading: 'Current value inside PUI: ' + value,
213
- visible: true
214
- }} />
215
- </>;
216
- }`,...(Jt=(zt=$.parameters)==null?void 0:zt.docs)==null?void 0:Jt.source}}};var Yt,Zt,Qt;de.parameters={...de.parameters,docs:{...(Yt=de.parameters)==null?void 0:Yt.docs,source:{originalSource:`() => {
217
- const width = '500px';
218
- const [value, setValue] = useState<string>('1|m');
219
- const [valueB, setValueB] = useState('|m');
220
- const automaticValue = '123|km';
221
- return <>
222
- <h4>Different cases for automatic (placeholder) values:</h4>
223
- <Row>
224
- <Column width="25%">
225
- <Button label="Change value to ''" onClick={() => setValue('')} />
226
- <br />
227
- <Button label="Change value to 1" onClick={() => setValue('1')} />
228
- <br />
229
- <Button label="Change value to 1|m" onClick={() => setValue('1|m')} />
230
- <br />
231
- <Button label="Change value to |m - empty value" onClick={() => setValue('|m')} />
232
- </Column>
233
- </Row>
234
- <br />
235
- <Field label="Normal PUI (placeholder + auto)">
236
- <UnitInput name="example1" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" width={width} placeholder="value|unit" autoValue={automaticValue} />
237
- </Field>
238
- <Field label="Normal PUI (only auto)">
239
- <UnitInput name="example1" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" width={width} autoValue={automaticValue} />
240
- </Field>
241
- <Field label="Empty PUI with autoValue">
242
- <UnitInput name="example1" onChange={evt => setValueB(evt.target.value)} value={valueB} unitkey="length" width={width} autoValue={automaticValue} />
243
- </Field>
244
- <Field label="Normal PUI (only placeholder)">
245
- <UnitInput name="example1" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" width={width} placeholder="Placeholder test" />
246
- </Field>
247
- <Field label="Normal PUI (placeholder + allowEmpty)">
248
- <UnitInput name="example1" onChange={evt => setValue(evt.target.value)} value={value} unitkey="length" width={width} placeholder="Placeholder test" allowEmpty />
249
- </Field>
250
- <Message message={{
251
- heading: 'Current value inside PUI: ' + value,
252
- visible: true
253
- }} />
254
- </>;
255
- }`,...(Qt=(Zt=de.parameters)==null?void 0:Zt.docs)==null?void 0:Qt.source}}};var Xt,en,tn;ce.parameters={...ce.parameters,docs:{...(Xt=ce.parameters)==null?void 0:Xt.docs,source:{originalSource:`() => {
256
- const [value, setValue] = useState('123|%');
257
- const [validation, setValidation] = useState<string | null>(null);
258
- const predictedMessage = 'This should be visible when an error appears';
259
- const handleValidation = (name: string, error: string | null) => {
260
- setValidation(error);
261
- return {
262
- name,
263
- error
264
- };
265
- };
266
- return <>
267
- <h4>3rd party validation message when inputting invalid value:</h4>
268
- <UnitInput name="example" onChange={evt => setValue(evt.target.value)} error={!validation || predictedMessage} validationCallback={handleValidation} value={value} />
269
- <br />
270
- <Spacer />
271
- <h4>Original validation message: </h4>
272
- <Message message={{
273
- heading: validation,
274
- visible: true
275
- }} />
276
- </>;
277
- }`,...(tn=(en=ce.parameters)==null?void 0:en.docs)==null?void 0:tn.source}}};var nn,an,rn;me.parameters={...me.parameters,docs:{...(nn=me.parameters)==null?void 0:nn.docs,source:{originalSource:`() => {
278
- const [value, setValue] = useState('123|m');
279
- const [placeholder, setPlaceholder] = useState('');
280
- const [initUnit, setInitUnit] = useState('km');
281
- const setPlaceholderValue = () => {
282
- setInitUnit('ft');
283
- setPlaceholder('placeholder');
284
- setValue('|m');
285
- };
286
- return <>
287
- <h4>Empty value case:</h4>
288
- <UnitInput name="example" onChange={evt => setValue(evt.target.value)} value={value} allowEmpty placeholder={placeholder} initUnit={initUnit} unitkey="length" />
289
- <br />
290
- <Spacer />
291
- <Button label="Change value |m and unit ft" onClick={() => setPlaceholderValue()} />
292
- </>;
293
- }`,...(rn=(an=me.parameters)==null?void 0:an.docs)==null?void 0:rn.source}}};var sn,ln,on;pe.parameters={...pe.parameters,docs:{...(sn=pe.parameters)==null?void 0:sn.docs,source:{originalSource:`() => {
294
- const [value, setValue] = useState('123|m');
295
- const [unit, setUnit] = useState('m');
296
- return <>
297
- <UnitInput name="example" onChange={evt => setValue(evt.target.value)} value={value} initUnit={unit} unitkey="length" onSwitchUnit={setUnit} />
298
- <Spacer />
299
- <UnitInput name="example" onChange={evt => setValue(evt.target.value)} value={value} initUnit={unit} unitkey="length" onSwitchUnit={setUnit} />
300
- </>;
301
- }`,...(on=(ln=pe.parameters)==null?void 0:ln.docs)==null?void 0:on.source}}};var un,dn,cn;ge.parameters={...ge.parameters,docs:{...(un=ge.parameters)==null?void 0:un.docs,source:{originalSource:`() => {
302
- const [visible, setVisible] = useState(true);
303
- const triggerRerender = () => {
304
- setVisible(false);
305
- setTimeout(() => setVisible(true), 0);
306
- };
307
- const [value, setValue] = useState('123|ft');
308
- return <Grid columns="1fr 1fr" gap>
309
- <Card heading={<Heading>Storage State (Redux)</Heading>}>
310
- {value}
311
- <Spacer />
312
- <Button label="Change value" onClick={() => setValue(withUnit(String(Math.floor(Math.random() * 100)), 'ft'))} />
313
- </Card>
314
- <Card heading={<Heading icon={<Icon icon="refresh" testId="triggerRerenderTestId" />} onIconClick={triggerRerender}>
315
- UnitInput
316
- </Heading>}>
317
- {visible && <UnitInput name="example" onChange={evt => setValue(evt.target.value)} value={value} initUnit="m" unitkey="depth" unitTemplate={{
318
- depth: 'm'
319
- }} />}
320
- </Card>
321
- </Grid>;
322
- }`,...(cn=(dn=ge.parameters)==null?void 0:dn.docs)==null?void 0:cn.source}}};var mn,pn,gn;he.parameters={...he.parameters,docs:{...(mn=he.parameters)==null?void 0:mn.docs,source:{originalSource:`() => {
323
- return <>
324
- <Text faint>
325
- Reproduce OW-10614 rounding noise bug when storing values in a different
326
- unit to the display unit
327
- </Text>
328
- <Spacer />
329
- <UnitInput name="example" onChange={() => {}} value={withUnit(convertAndGetValue('9750|psi', 'bar'), 'bar')} initUnit="psi" unitkey="pressure" unitTemplate={{
330
- pressure: 'psi'
331
- }} />
332
- <Spacer />
333
- <UnitInput name="example2" onChange={() => {}} value={withUnit(convertAndGetValue('8642|lbf', 'tonneForce'), 'tonneForce')} initUnit="lbf" unitkey="force" unitTemplate={{
334
- force: 'tonneForce'
335
- }} />
336
- </>;
337
- }`,...(gn=(pn=he.parameters)==null?void 0:pn.docs)==null?void 0:gn.source}}};var hn,vn,fn;z.parameters={...z.parameters,docs:{...(hn=z.parameters)==null?void 0:hn.docs,source:{originalSource:`() => {
338
- return <>
339
- <UnitInput name="example" unitkey="moleWeight" initUnit="g/mol" doNotConvertValue //reproduces OW_17784
340
- value="170|g/mol" unitTemplate={{
341
- moleWeight: 'g/mol'
342
- }} testId="case1" />
343
- <Spacer />
344
- <UnitInput name="gor" unitkey="moleWeight" initUnit="gor" value="Infinity|SCF/STB" testId="case2" />
345
- </>;
346
- }`,...(fn=(vn=z.parameters)==null?void 0:vn.docs)==null?void 0:fn.source}}};var yn,bn,Cn;ve.parameters={...ve.parameters,docs:{...(yn=ve.parameters)==null?void 0:yn.docs,source:{originalSource:`() => {
347
- const [visible, setVisible] = useState(true);
348
- const triggerRerender = () => {
349
- setVisible(false);
350
- setTimeout(() => setVisible(true), 0);
351
- };
352
- const [preferredUnit, setPreferredUnit] = useState('psi');
353
- const [enableDisplayRounding, setEnableDisplayRounding] = useState(false);
354
- const [enableCosmeticRounding, setEnableCosmeticRounding] = useState(true);
355
- const [convertBackToStorageUnit, setConvertBackToStorageUnit] = useState(true);
356
- const [value, setValue] = useState('672.2388357750001|bar');
357
- const [callBackError, setCallBackError] = useState('');
358
- return <Grid columns="1fr 1fr" gap>
359
- <Card heading={<Heading>Settings</Heading>}>
360
- <Field label="Enable display rounding:" labelLeft labelWidth={200}>
361
- <Toggle checked={enableDisplayRounding} onChange={evt => setEnableDisplayRounding(evt.target.checked)} />
362
- </Field>
363
- <Field label="Enable cosmetic rounding:" labelLeft labelWidth={200}>
364
- <Toggle checked={enableCosmeticRounding} onChange={evt => setEnableCosmeticRounding(evt.target.checked)} />
365
- </Field>
366
- <Field label="Convert back to storage unit (onChange):" labelLeft labelWidth={200}>
367
- <Toggle checked={convertBackToStorageUnit} onChange={evt => setConvertBackToStorageUnit(evt.target.checked)} />
368
- </Field>
369
- </Card>
370
- <Card heading={<Heading icon={<Icon icon="refresh" testId="triggerRerenderTestId" />} onIconClick={triggerRerender}>
371
- UnitInput
372
- </Heading>}>
373
- <Text faint>
374
- Cosmetic Rounding Test Case: type 9750 then return (compare with
375
- enableCosmeticRounding on and off)
376
- </Text>
377
- <Spacer />
378
- <Text warning>
379
- Note: UnitInput uses convertSamePrecision internally (decision prior
380
- to cosmetic value implementation). This means not all rounding noise
381
- occurrences seen in NumberInput will be reproducible in UnitInput,
382
- because they get rounded off by other logic.
383
- </Text>
384
- <Spacer />
385
- {visible && <UnitInput name="Example" unitkey="pressure" initUnit={preferredUnit} unitTemplate={{
386
- pressure: 'psi'
387
- }} value={value} onChange={evt => {
388
- const {
389
- value
390
- } = evt.target;
391
- if (value) {
392
- setValue(value);
393
- }
394
- }} enableDisplayRounding={enableDisplayRounding} enableCosmeticRounding={enableCosmeticRounding} error={convertAndGetValue(value, 'bar') >= 0 ? '' : 'Value must be positive'} validationCallback={(name, error) => {
395
- setCallBackError(error ?? '');
396
- }} convertBackToStorageUnit={convertBackToStorageUnit} />}
397
- </Card>
398
- <Card heading={<Heading>Unit Template</Heading>}>
399
- <Select options={[{
400
- label: 'Bar',
401
- value: 'bar'
402
- }, {
403
- label: 'psi',
404
- value: 'psi'
405
- }]} value={preferredUnit} width={70} onChange={evt => setPreferredUnit(evt.target.value)} />
406
- </Card>
407
- <Card heading={<Heading>Test Validation Callback</Heading>}>
408
- {callBackError && <Message message={{
409
- content: callBackError,
410
- icon: true,
411
- type: 'Error',
412
- visible: true
413
- }} />}
414
- </Card>
415
- <Card heading={<Heading>Storage State / Redux</Heading>}>
416
- {value}
417
- <Spacer />
418
- <Button label="Change value" onClick={() => setValue(withUnit(String(Math.floor(Math.random() * 100)), 'bar'))} />
419
- </Card>
420
- </Grid>;
421
- }`,...(Cn=(bn=ve.parameters)==null?void 0:bn.docs)==null?void 0:Cn.source}}};var Un,In,xn;J.parameters={...J.parameters,docs:{...(Un=J.parameters)==null?void 0:Un.docs,source:{originalSource:`() => {
422
- const [value, setValue] = useState('123|m');
423
- return <UnitInput name="example" onChange={evt => setValue(evt.target.value)} value={value} initUnit="m" unitkey="depth" unitTemplate={{
424
- depth: 'm'
425
- }} testId="testId" />;
426
- }`,...(xn=(In=J.parameters)==null?void 0:In.docs)==null?void 0:xn.source}}};const ii=["Default","InitUnit","notKnownUnit","Width","NoConversion","Small","Placeholder","PlaceholderWithUnit","Error","InternalValidationError","Disabled","DisabledNoConversion","DisabledUnitWithoutUnitKey","DisabledUnitWithUnitKey","DisabledWithEnabledUnitMenu","TestExternalStateChangeWithSynchronizedUnits","PredefinedOptionsMenu","TestEdgeCases","AutomaticValues","ValidationCallback","AllowEmptyPUI","onSwitchUnit","ManagedTestCase","OW_10614TestCase","OW_17784TestCase","DemoCosmeticRounding","TestUserInput"];export{me as AllowEmptyPUI,de as AutomaticValues,xe as Default,ve as DemoCosmeticRounding,G as Disabled,re as DisabledNoConversion,le as DisabledUnitWithUnitKey,se as DisabledUnitWithoutUnitKey,oe as DisabledWithEnabledUnitMenu,ae as Error,Q as InitUnit,ie as InternalValidationError,ge as ManagedTestCase,te as NoConversion,he as OW_10614TestCase,z as OW_17784TestCase,H as Placeholder,L as PlaceholderWithUnit,ue as PredefinedOptionsMenu,ne as Small,$ as TestEdgeCases,K as TestExternalStateChangeWithSynchronizedUnits,J as TestUserInput,ce as ValidationCallback,ee as Width,ii as __namedExportsOrder,ai as default,X as notKnownUnit,pe as onSwitchUnit};