@oliasoft-open-source/react-ui-library 4.2.1-beta-2 → 4.3.0-beta-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +17 -5
- package/dist/index.js.map +1 -1
- package/dist/storybook/assets/{Color-6VNJS4EI-6b48c85b.js → Color-6VNJS4EI-caa8bffa.js} +1 -1
- package/dist/storybook/assets/{DocsRenderer-NNNQARDV-25c0f625.js → DocsRenderer-NNNQARDV-e463e8a5.js} +1 -1
- package/dist/storybook/assets/{WithTooltip-4HIR6TLV-9ebd09dc.js → WithTooltip-4HIR6TLV-9514f93a.js} +1 -1
- package/dist/storybook/assets/accordion-with-default-toggle-0b4845c8.js +1 -0
- package/dist/storybook/assets/accordion.stories-ad491954.js +170 -0
- package/dist/storybook/assets/{afe.stories-afb9be07.js → afe.stories-49904fdb.js} +1 -1
- package/dist/storybook/assets/breadcrumb-f8742fbd.js +1 -0
- package/dist/storybook/assets/breadcrumb.stories-b5582cfb.js +1 -0
- package/dist/storybook/assets/buttons-and-links-6c701fa6.js +14 -0
- package/dist/storybook/assets/{casing-loads.stories-cfbab702.js → casing-loads.stories-dff0b8fc.js} +1 -1
- package/dist/storybook/assets/{chunk-HLWAVYOI-1c498991.js → chunk-HLWAVYOI-d8be29f3.js} +1 -1
- package/dist/storybook/assets/{color-8b40ecf4.js → color-9e78f280.js} +1 -1
- package/dist/storybook/assets/{drawer.stories-39625e91.js → drawer.stories-59cd794a.js} +1 -1
- package/dist/storybook/assets/empty-2d83d50b.js +1 -0
- package/dist/storybook/assets/empty.stories-c98807b8.js +1 -0
- package/dist/storybook/assets/file-input-a3594635.js +1 -0
- package/dist/storybook/assets/file-input.stories-3d2e95e7.js +55 -0
- package/dist/storybook/assets/{formatter-SWP5E3XI-521171e8.js → formatter-SWP5E3XI-c42be4d9.js} +1 -1
- package/dist/storybook/assets/{preview-d47a2f40.css → global-aa71ac9c.css} +1 -1
- package/dist/storybook/assets/iframe-8d80f428.js +1 -0
- package/dist/storybook/assets/{index-665bded2.js → index-56f304c1.js} +4 -4
- package/dist/storybook/assets/{input-validation-560fd9e3.js → input-validation-1b895773.js} +1 -1
- package/dist/storybook/assets/{inputs-ed0fc7ad.js → inputs-e51c1c31.js} +2 -2
- package/dist/storybook/assets/{layout-forms-e9b95540.js → layout-forms-29ceb520.js} +1 -1
- package/dist/storybook/assets/{layout-general-7a81d7f9.js → layout-general-245ef20f.js} +1 -1
- package/dist/storybook/assets/{list-0dc3df85.js → list-e6e7e5ed.js} +1 -1
- package/dist/storybook/assets/{list.stories-5715452e.js → list.stories-e2d00aea.js} +1 -1
- package/dist/storybook/assets/{message-7e627e60.js → message-dabd76a8.js} +1 -1
- package/dist/storybook/assets/{message.stories-f41a0c22.js → message.stories-6f612f7c.js} +1 -1
- package/dist/storybook/assets/meta-content-6f132e03.js +1 -0
- package/dist/storybook/assets/modal-ad69eee9.js +1 -0
- package/dist/storybook/assets/modal-f1e8e468.css +1 -0
- package/dist/storybook/assets/{modal.stories-0e068cc1.js → modal.stories-448cc75d.js} +1 -1
- package/dist/storybook/assets/option-dropdown-fbe54c09.js +1 -0
- package/dist/storybook/assets/option-dropdown.stories-8b7ee529.js +21 -0
- package/dist/storybook/assets/{padding-and-spacing-ea2bf22c.js → padding-and-spacing-27e63c65.js} +1 -1
- package/dist/storybook/assets/page.stories-4ad3bea8.js +57 -0
- package/dist/storybook/assets/pop-confirm-e6b7cc0c.js +1 -0
- package/dist/storybook/assets/pop-confirm.stories-27da1975.js +7 -0
- package/dist/storybook/assets/preview-608a4ee9.js +1 -0
- package/dist/storybook/assets/{preview-51e87244.js → preview-72d84988.js} +3 -3
- package/dist/storybook/assets/preview-a5b25924.css +1 -0
- package/dist/storybook/assets/print-header-bd013690.js +1 -0
- package/dist/storybook/assets/{projects.stories-3884a80c.js → projects.stories-c383cdce.js} +1 -1
- package/dist/storybook/assets/{reservoirs.stories-6b14a37f.js → reservoirs.stories-b4549b91.js} +1 -1
- package/dist/storybook/assets/{rich-text-input.stories-661f34f1.js → rich-text-input-977847ce.js} +52 -127
- package/dist/storybook/assets/rich-text-input.stories-b770908d.js +76 -0
- package/dist/storybook/assets/{site.stories-dee8ce1c.js → site.stories-80a441ea.js} +1 -1
- package/dist/storybook/assets/{syntaxhighlighter-NMPM6SWI-96abff19.js → syntaxhighlighter-NMPM6SWI-73149e16.js} +1 -1
- package/dist/storybook/assets/text-link-f4589768.js +1 -0
- package/dist/storybook/assets/text-link.stories-6b7c8329.js +1 -0
- package/dist/storybook/assets/{toaster-541ce85b.js → toaster-3fba1dd3.js} +1 -1
- package/dist/storybook/assets/{toaster.stories-5e4d95b1.js → toaster.stories-4cdefe35.js} +1 -1
- package/dist/storybook/assets/tree-a5de7d3a.js +6 -0
- package/dist/storybook/assets/tree.stories-b16724d6.js +123 -0
- package/dist/storybook/assets/unit-input-9bf08434.js +1 -0
- package/dist/storybook/assets/unit-input.stories-65646cf3.js +273 -0
- package/dist/storybook/assets/unit-table.stories-4706910f.js +229 -0
- package/dist/storybook/iframe.html +1 -1
- package/dist/storybook/index.json +1 -1
- package/dist/storybook/project.json +1 -1
- package/dist/storybook/stories.json +1 -1
- package/package.json +1 -1
- package/dist/storybook/assets/accordion.stories-0f8af16e.js +0 -170
- package/dist/storybook/assets/breadcrumb.stories-e4334a75.js +0 -1
- package/dist/storybook/assets/buttons-and-links-16cf8577.js +0 -14
- package/dist/storybook/assets/dialog-8e840c50.css +0 -1
- package/dist/storybook/assets/dialog-cd58dd09.js +0 -1
- package/dist/storybook/assets/empty.stories-e0e3ac78.js +0 -1
- package/dist/storybook/assets/file-input.stories-1c6ce0ea.js +0 -55
- package/dist/storybook/assets/iframe-5eee0790.js +0 -1
- package/dist/storybook/assets/list-heading-88cc8a9b.js +0 -1
- package/dist/storybook/assets/option-dropdown.stories-5030bdb8.js +0 -21
- package/dist/storybook/assets/page.stories-7cb68fed.js +0 -57
- package/dist/storybook/assets/pop-confirm.stories-81b30901.js +0 -7
- package/dist/storybook/assets/preview-987fd1ab.js +0 -1
- package/dist/storybook/assets/text-link.stories-c1227c6f.js +0 -1
- package/dist/storybook/assets/tree.stories-590bdd69.js +0 -128
- package/dist/storybook/assets/unit-input.stories-0eea1703.js +0 -265
- /package/dist/storybook/assets/{accordion.stories-e92bccf3.css → accordion-with-default-toggle-e92bccf3.css} +0 -0
- /package/dist/storybook/assets/{breadcrumb.stories-a644544e.css → breadcrumb-a644544e.css} +0 -0
- /package/dist/storybook/assets/{empty.stories-9914c767.css → empty-9914c767.css} +0 -0
- /package/dist/storybook/assets/{file-input.stories-f40408e6.css → file-input-f40408e6.css} +0 -0
- /package/dist/storybook/assets/{list-heading-d7e578fa.css → meta-content-d7e578fa.css} +0 -0
- /package/dist/storybook/assets/{option-dropdown.stories-ddc96b15.css → option-dropdown-ddc96b15.css} +0 -0
- /package/dist/storybook/assets/{pop-confirm.stories-c9faec6b.css → pop-confirm-c9faec6b.css} +0 -0
- /package/dist/storybook/assets/{page.stories-dd8c1b35.css → print-header-dd8c1b35.css} +0 -0
- /package/dist/storybook/assets/{rich-text-input.stories-023a1c99.css → rich-text-input-023a1c99.css} +0 -0
- /package/dist/storybook/assets/{tree.stories-3406c5f6.css → tree-3406c5f6.css} +0 -0
- /package/dist/storybook/assets/{unit-input.stories-c251e2c8.css → unit-input-c251e2c8.css} +0 -0
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import{j as t}from"./jsx-runtime-f961835c.js";import{r as f}from"./index-f80c8c95.js";import{d as c}from"./index-57d7693e.js";import{G as V}from"./grid-3b729f81.js";import{C as T}from"./card-3847c251.js";import{F as M}from"./field-a094cd72.js";import{H as I}from"./heading-d29eb744.js";import{S as A}from"./select-205cd538.js";/* empty css */import"./accordion-168fa7c5.js";import"./accordion-with-default-toggle-0b4845c8.js";import{M as z}from"./actions-2d4e1c8e.js";import"./badge-20e7ee0b.js";import"./breadcrumb-f8742fbd.js";import{B as Q}from"./button-74c97e4a.js";import"./button-group-fa895d0c.js";import"./check-box-e21258d5.js";import"./row-2299f0e7.js";import"./divider-182aa58c.js";import"./modal-ad69eee9.js";import"./drawer-7f450988.js";import"./empty-2d83d50b.js";import"./file-input-a3594635.js";import"./flex-1d14d86c.js";import"./form-row-19dd7f6e.js";import{I as X}from"./icon-e9cbb4d7.js";import"./input-group-20c3add3.js";import"./input-group-addon-f8f6683a.js";import"./help-icon-d4189b1b.js";import"./input-d68625a5.js";import"./label-13d490a3.js";import"./list-e6e7e5ed.js";import"./meta-content-6f132e03.js";import"./loader-87ec8334.js";import"./message-dabd76a8.js";import"./option-dropdown-fbe54c09.js";import"./page-6d07f774.js";import"./pagination-8aade846.js";import"./popover-06e375a5.js";import"./portal-03fe4689.js";import"./print-header-bd013690.js";import"./progress-bar-40b8dbf0.js";import"./radio-button-135a9615.js";import"./rich-text-input-977847ce.js";import"./side-bar-88e8cf41.js";import"./slider-160e2152.js";import"./spacer-54db0620.js";import"./spinner-a81ebe38.js";import{T as Y}from"./table-da6f6045.js";import"./tabs-cf5ccede.js";import"./text-ad1f5f1d.js";import"./text-link-f4589768.js";import"./textarea-d48efea2.js";import"./toaster-3fba1dd3.js";import"./toggle-bb34b2a2.js";import"./tooltip-23e84186.js";import"./top-bar-a84b9365.js";import"./pop-confirm-e6b7cc0c.js";import"./tree-a5de7d3a.js";import"./number-input-7d49b0b3.js";import"./unit-input-9bf08434.js";import"./lodash-75c70a11.js";import"./disabled-context-d654f6ff.js";import"./index-54f0d271.js";import"./styled-components.browser.esm-416d73e5.js";import"./tslib.es6-dfef685f.js";import"./index-a80ed1cf.js";import"./common-types-2c81813f.js";import"./types-332ceaf3.js";import"./index-c89a1915.js";import"./inheritsLoose-d4851ab8.js";import"./assertThisInitialized-081f9914.js";import"./memoize-one.esm-52518564.js";import"./types-cc224262.js";import"./select.input-88b6ebab.js";import"./index-3d476d02.js";import"./index.es-85cc7dfc.js";import"./redux-10ee6be7.js";import"./objectSpread2-fdee9b6d.js";import"./index-c7f280f6.js";const Z="#ff6600",ee=({onDeleteTableRow:e,rowid:n})=>{let l=[{type:"Option",label:"Delete",icon:t.jsx(X,{icon:"delete",color:Z}),onClick:()=>e(n)}];return t.jsx(z,{menu:{trigger:"Component",component:t.jsx(Q,{small:!0,basic:!0,round:!0,colored:"muted",icon:"menu",testId:`row-menu-${n}`}),sections:l}})};try{tablerowmenu.displayName="tablerowmenu",tablerowmenu.__docgenInfo={description:"",displayName:"tablerowmenu",props:{onDeleteTableRow:{defaultValue:null,description:"",name:"onDeleteTableRow",required:!0,type:{name:"(rowid: number) => void"}},rowid:{defaultValue:null,description:"",name:"rowid",required:!0,type:{name:"number"}}}}}catch{}const te=["Rock","Sandstone"],G=te.map(e=>({label:e,value:e})),ne=[{Cp:"1256.039|J/(kg*degC)",Ro:"2243|kg/m3",name:"Utsira Formation",Lambda:"1.591|W/(mK)",depth_to:"1200|m",rock_type:"Rock",depth_from:"385|m"},{Cp:"1300|J/(kg*degC)",Ro:"2200|kg/m3",name:"Sele Formation",Lambda:"1.591|W/(mK)",depth_to:"1600|m",rock_type:"Sandstone",depth_from:"1200|m"},{Cp:"1256.039|J/(kg*degC)",Ro:"2243|kg/m3",name:"Lista Formation",Lambda:"1.591|W/(mK)",depth_to:"1950|m",rock_type:"Rock",depth_from:"1600|m"},{Cp:"1256.039|J/(kg*degC)",Ro:"2243|kg/m3",name:"Våge Formation",Lambda:"1.591|W/(mK)",depth_to:"2200|m",rock_type:"Rock",depth_from:"1950|m"}],ae=[{key:"rock_type",header:"Rock",translationKey:"rock",defaultValue:"",type:"Select",convertible:!1,unitKey:"",columnAlignment:"left",columnWidth:"150px",options:G},{key:"name",header:"Formation name",translationKey:"name",placeholder:"Formation Name",type:"Input",disabled:!1,convertible:!1,unitKey:"",columnAlignment:"left",columnWidth:"160px"},{key:"depth_from",header:"Top Depth (TVD)",translationKey:"top_depth",type:"NumberInput",disabled:!1,convertible:!0,unitKey:"length",columnAlignment:"right",columnWidth:"150px"},{key:"depth_to",header:"Bottom Depth (TVD)",translationKey:"bottom_depth",type:"NumberInput",disabled:!1,convertible:!0,unitKey:"length",columnAlignment:"right",columnWidth:"160px"},{key:"Ro",header:"Density",translationKey:"ro",type:"NumberInput",defaultValue:0,disabled:!0,convertible:!0,unitKey:"density",columnAlignment:"right",columnWidth:"100px"},{key:"Cp",header:"Specific Heat Capacity",translationKey:"cp",type:"NumberInput",defaultValue:0,unitKey:"specificHeatCapacity",disabled:!0,convertible:!0,columnWidth:"150px",columnAlignment:"right"},{key:"Lambda",header:"Thermal Conductivity",translationKey:"cp",type:"NumberInput",unitKey:"thermalConductivity",disabled:!0,convertible:!0,defaultValue:0,columnWidth:"150px",columnAlignment:"right"}],K={acceleration:"ft/s2",angleGradient:"deg/100ft",angles:"deg",areaOther:"ft2",areaTubular:"in2",blowoutFlowRate:"STB/d",blowoutGasFlowRate:"MMSCFD",blowoutOilFlowRate:"STB/d",density:"ppg",densityGas:"Glbm/ft3",densityOil:"lbm/ft3",densityOilGas:"lbm/ft3",densitySolid:"lbm/ft3",depth:"ft",diameters:"cm",distance:"ft",doglegSeverity:"deg/100ft",duration:"min",durationLong:"d",durationShort:"h",flowrate:"bpm",fluidCompressibility:"1/psi",force:"lbf",forceGradient:"lbf/ft",frequency:"Hz",gasliftFlowRate:"STB/d",gasVolume:"MMSCF",gor:"SCF/STB",height:"ft",inflowProductivityIndex:"STB/d/psi",injectionFlowRate:"bpm",intensity:"hhp/in2",interfacialTension:"lbf/ft",inverseStandSpeed:"min/stand",kickToleranceVolume:"bbl",length:"km",linearCapacity:"bbl/ft",location:"m",massFlowRate:"lbm/s",mixingRequirements:"m3/t",moleWeight:"lbf/mol",oilVolume:"STB",percentage:"%",permeability:"mD",power:"BTU/h",pressure:"psi",pressurechange:"psi",pressureGradient:"psi/ft",pressurePerTemperature:"psi/F",productionFlowRate:"STB/d",productionFlowRateGas:"MMSCFD",productionFlowRateOil:"STB/d",pumpRate:"bpm",rop:"ft/h",rotationalSpeed:"rpm",roughness:"in",specificHeatCapacity:"BTU/(lbm*degF)",speed:"ft/s",stress:"psi",temperature:"F",tempgrad:"F/100ft",thermalConductivity:"BTU/(h*ft*degF)",thermalExpansionCoefficient:"E-06/degF",torque:"Nm",torqueGradient:"lbf",turbulentSkin:"1/MMSCFD",viscosity:"cP",volume:"bbl",wearFactor:"E-10/psi",weight:"lbf",weightGradient:"ppf",wltubulars:"ppf",youngsModulus:"psi"},le=[{length:"10|m",pressure:"5|psi"},{length:"20|m",pressure:"10|psi"}],oe=[{key:"length",header:"Length",translationKey:"length",defaultValue:0,type:"NumberInput",convertible:!0,unitKey:"length",columnAlignment:"left",columnWidth:"150px"},{key:"pressure",header:"Pressure",translationKey:"pressure",defaultValue:0,type:"NumberInput",convertible:!0,unitKey:"pressure",columnAlignment:"left",columnWidth:"150px"}],re=({tableDef:e,displayedUnits:n,handleUnitChange:l})=>e.map(({convertible:g,unitKey:p,key:m})=>{var u;if(!g)return{value:""};const o=n[m],b=(u=c.getAltUnitsListByQuantity(p))==null?void 0:u.map(({unit:s,label:d})=>({label:d,value:s}));return{value:o,options:b,type:"Select",onChange:({target:{value:s}})=>{s!==o&&l(m,s)}}}),ie=({tableDef:e})=>e.map(({header:n})=>({value:n})),se=(e,n,l)=>e!=null&&e.length?e.map(g=>l.reduce((m,o)=>{const{key:b,defaultValue:v}=o,u=n[b];let s=g[b],d=s??v;return c.isValueWithUnit(s)&&u&&(d=c.convertAndGetValue(d,u)||0),{...m,[b]:c.isNumeric(d)?c.withUnit(d,u):d}},{})):[],de=(e,n,l)=>({label:"Add",icon:"plus",primary:!0,onClick:()=>e(n,l),testId:"lithology-table-add-new-row"}),U=(e,n)=>e.reduce((l,g)=>{const{key:p,unitKey:m}=g;return{...l,[p]:n[m]}},{}),pe=({rows:e,tableDef:n,displayedUnits:l,handleUnitChange:g,tableActions:p})=>{if(!e)return{rows:[],headers:[]};const{addRow:m}=p;return{headers:[{cells:ie({tableDef:n}),actions:m?[de(m,e,l)]:[]},{cells:re({tableDef:n,displayedUnits:l,handleUnitChange:g})}],rows:e}},S=({data:e,unitTemplate:n,tableDef:l,convertToCells:g,tableActions:p,testId:m})=>{const[o,b]=f.useState(U(l,n));f.useEffect(()=>{b(U(l,n))},[n]);const v=(d,C)=>{b(r=>({...r,[d]:C}))},{headers:u,rows:s}=f.useMemo(()=>pe({rows:g(se(e,o,l),o),tableDef:l,displayedUnits:o,handleUnitChange:v,tableActions:p}),[e,o]);return t.jsx(Y,{table:{testId:m,headers:u,rows:s,columnAlignment:l.map(d=>d.columnAlignment),columnWidths:l.map(d=>d.columnWidth),fixedWidth:"auto"},onListReorder:(p==null?void 0:p.reorderComponents)||void 0})};try{S.displayName="UnitTable",S.__docgenInfo={description:"",displayName:"UnitTable",props:{data:{defaultValue:null,description:"",name:"data",required:!0,type:{name:"any[]"}},unitTemplate:{defaultValue:null,description:"",name:"unitTemplate",required:!0,type:{name:"Record<string, any>"}},tableDef:{defaultValue:null,description:"",name:"tableDef",required:!0,type:{name:"ITableDefinition[]"}},convertToCells:{defaultValue:null,description:"",name:"convertToCells",required:!0,type:{name:"(displayedData: any[], displayedUnits: Record<string, any>) => { cells: ICell[]; actions: IActionsType; }[]"}},tableActions:{defaultValue:null,description:"",name:"tableActions",required:!0,type:{name:"ITableActions"}},testId:{defaultValue:null,description:"",name:"testId",required:!0,type:{name:"string"}}}}}catch{}const ue=e=>e===0,me=(e,n)=>n===e-1,ce=(e,n)=>n?`(Test value text) ${e}`:e,At={title:"Basic/UnitTable",component:S},D=()=>{const[e,n]=f.useState(le),[l,g]=f.useState([]),[p,m]=f.useState(K),o=(u,s,d,C)=>{const{value:r}=u.target;let a;n(w=>(a=[...w],a[d][s]=c.withUnit(r,C[s]),a))},b=(u,s)=>{const d=u.map((C,r)=>{let{length:a,pressure:w}=C;return{cells:[{value:c.getValue(a),type:"NumberInput",disabled:!1,onChange:y=>o(y,"length",r,s),testId:`table-cell-${r}-0`},{value:c.getValue(w),type:"NumberInput",disabled:!1,onChange:y=>o(y,"pressure",r,s),testId:`table-cell-${r}-1`}],actions:[]}});return g(u),d},v=[{value:"m",label:"m"},{value:"ft",label:"ft"},{value:"km",label:"km"},{value:"in",label:"in"},{value:"mm",label:"mm"}];return t.jsxs(V,{columns:"1fr",gap:!0,children:[t.jsx(T,{heading:t.jsx(I,{children:"Global View Settings"}),children:t.jsx(M,{label:"Active Unit Template For Length",children:t.jsx(A,{options:v,value:{value:p.length},onChange:u=>{m(s=>({...s,length:u.target.value}))},width:"100px"})})}),t.jsx(S,{tableActions:{},data:e,tableDef:oe,convertToCells:b,unitTemplate:p,testId:"Test"}),t.jsxs(V,{columns:"1fr 1fr",gap:!0,children:[t.jsx(T,{heading:t.jsx(I,{children:"Display data"}),children:t.jsx("pre",{children:t.jsx("code",{children:JSON.stringify(l,null,2)})})}),t.jsx(T,{heading:t.jsx(I,{children:"Storage data"}),children:t.jsx("pre",{children:t.jsx("code",{children:JSON.stringify(e,null,2)})})})]})]})},k=()=>{const[e,n]=f.useState(ne),[l,g]=f.useState([]),[p,m]=f.useState(K),o=(r,a,w,y)=>{const{value:i}=r.target;let R;n(_=>(R=[..._],R[w][a]=a==="rock_type"||a==="name"?i:c.withUnit(i,y[a]),R))},b=()=>{const r={...e[e.length-1]};n(a=>[...a,r])},v=r=>n(a=>a.filter((w,y)=>r!==y)),u=r=>t.jsx(ee,{onDeleteTableRow:v,rowid:r}),s=(r,a)=>{const w=r.map((y,i)=>{let{rock_type:R,name:_,depth_from:O,depth_to:W,Ro:B,Cp:q,Lambda:J}=y;const x=ue(i),F=me(e.length,i),P=x?[]:[{childComponent:u(i)}];return{cells:[{options:G,value:R||"Rock",type:"Select",disabled:!1,onChange:h=>o(h,"rock_type",i,a),testId:`table-cell-${i}-0`},{value:_,type:"Input",placeholder:"Name",disabled:!1,onChange:h=>o(h,"name",i,a),testId:`table-cell-${i}-1`},{value:ce(c.getValue(O),x),type:x?"Static":"NumberInput",style:x?{whiteSpace:"nowrap"}:{},disabled:x,onChange:h=>o(h,"depth_from",i,a),testId:`table-cell-${i}-2`},{value:c.getValue(W),type:F?"Static":"NumberInput",style:F?{whiteSpace:"nowrap"}:{},disabled:F,onChange:h=>o(h,"depth_to",i,a),testId:`table-cell-${i}-3`},{value:c.getValue(B),type:"NumberInput",disabled:!0,onChange:h=>o(h,"Ro",i,a),testId:`table-cell-${i}-4`},{value:c.getValue(q),type:"NumberInput",disabled:!0,onChange:h=>o(h,"Cp",i,a),testId:`table-cell-${i}-5`},{value:c.getValue(J),type:"NumberInput",disabled:!0,onChange:h=>o(h,"Lambda",i,a),testId:`table-cell-${i}-6`}],actions:P}});return g(r),w},d={addRow:b,reorderComponents:()=>{}},C=[{value:"m",label:"m"},{value:"ft",label:"ft"},{value:"km",label:"km"},{value:"in",label:"in"},{value:"mm",label:"mm"}];return t.jsxs(V,{columns:"1fr",gap:!0,children:[t.jsx(T,{heading:t.jsx(I,{children:"Global View Settings"}),children:t.jsx(M,{label:"Active Unit Template For Length",children:t.jsx(A,{options:C,value:{value:p.length},onChange:r=>{m(a=>({...a,length:r.target.value}))},width:"100px"})})}),t.jsx(S,{tableActions:d,data:e,tableDef:ae,convertToCells:s,unitTemplate:p,testId:"Test"}),t.jsxs(V,{columns:"1fr 1fr",gap:!0,children:[t.jsx(T,{heading:t.jsx(I,{children:"Display data"}),children:t.jsx("pre",{children:t.jsx("code",{children:JSON.stringify(l,null,2)})})}),t.jsx(T,{heading:t.jsx(I,{children:"Storage data"}),children:t.jsx("pre",{children:t.jsx("code",{children:JSON.stringify(e,null,2)})})})]})]})};var N,L,j;D.parameters={...D.parameters,docs:{...(N=D.parameters)==null?void 0:N.docs,source:{originalSource:`() => {
|
|
2
|
+
const [data, setData] = useState<any[]>(simpleData);
|
|
3
|
+
const [displayedData, setDisplayedData] = useState<any[]>([]);
|
|
4
|
+
const [unitTemplate, setUnitTemplate] = useState(initalUnitTemplate);
|
|
5
|
+
const onChangeValue = (ev: ChangeEvent<HTMLInputElement>, columnName: keyof ISimpleData, rowIx: number, displayedUnits: Record<string, string>) => {
|
|
6
|
+
const {
|
|
7
|
+
value
|
|
8
|
+
} = ev.target;
|
|
9
|
+
let newData: ISimpleData[];
|
|
10
|
+
setData(prev => {
|
|
11
|
+
newData = [...prev];
|
|
12
|
+
newData[rowIx][columnName] = withUnit(value, displayedUnits[columnName]);
|
|
13
|
+
return newData;
|
|
14
|
+
});
|
|
15
|
+
};
|
|
16
|
+
const convertToCells = (displayedRows: Array<any>, displayedUnits: Record<string, any>) => {
|
|
17
|
+
const cells = displayedRows.map((item, rowIndex) => {
|
|
18
|
+
let {
|
|
19
|
+
length,
|
|
20
|
+
pressure
|
|
21
|
+
} = item;
|
|
22
|
+
return {
|
|
23
|
+
cells: [{
|
|
24
|
+
value: getValue(length),
|
|
25
|
+
type: 'NumberInput',
|
|
26
|
+
disabled: false,
|
|
27
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'length', rowIndex, displayedUnits),
|
|
28
|
+
testId: \`table-cell-\${rowIndex}-\${0}\`
|
|
29
|
+
}, {
|
|
30
|
+
value: getValue(pressure),
|
|
31
|
+
type: 'NumberInput',
|
|
32
|
+
disabled: false,
|
|
33
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'pressure', rowIndex, displayedUnits),
|
|
34
|
+
testId: \`table-cell-\${rowIndex}-\${1}\`
|
|
35
|
+
}],
|
|
36
|
+
actions: []
|
|
37
|
+
};
|
|
38
|
+
});
|
|
39
|
+
setDisplayedData(displayedRows);
|
|
40
|
+
return cells;
|
|
41
|
+
};
|
|
42
|
+
const unitOptions = [{
|
|
43
|
+
value: 'm',
|
|
44
|
+
label: 'm'
|
|
45
|
+
}, {
|
|
46
|
+
value: 'ft',
|
|
47
|
+
label: 'ft'
|
|
48
|
+
}, {
|
|
49
|
+
value: 'km',
|
|
50
|
+
label: 'km'
|
|
51
|
+
}, {
|
|
52
|
+
value: 'in',
|
|
53
|
+
label: 'in'
|
|
54
|
+
}, {
|
|
55
|
+
value: 'mm',
|
|
56
|
+
label: 'mm'
|
|
57
|
+
}];
|
|
58
|
+
return <Grid columns="1fr" gap>
|
|
59
|
+
<Card heading={<Heading>Global View Settings</Heading>}>
|
|
60
|
+
<Field label="Active Unit Template For Length">
|
|
61
|
+
<Select options={unitOptions} value={{
|
|
62
|
+
value: unitTemplate.length
|
|
63
|
+
}} onChange={evt => {
|
|
64
|
+
setUnitTemplate(prev => ({
|
|
65
|
+
...prev,
|
|
66
|
+
length: evt.target.value
|
|
67
|
+
}));
|
|
68
|
+
}} width="100px" />
|
|
69
|
+
</Field>
|
|
70
|
+
</Card>
|
|
71
|
+
<UnitTable tableActions={{}} data={data} tableDef={simpleTableDef} convertToCells={convertToCells} unitTemplate={unitTemplate} testId="Test" />
|
|
72
|
+
<Grid columns="1fr 1fr" gap>
|
|
73
|
+
<Card heading={<Heading>Display data</Heading>}>
|
|
74
|
+
<pre>
|
|
75
|
+
<code>{JSON.stringify(displayedData, null, 2)}</code>
|
|
76
|
+
</pre>
|
|
77
|
+
</Card>
|
|
78
|
+
<Card heading={<Heading>Storage data</Heading>}>
|
|
79
|
+
<pre>
|
|
80
|
+
<code>{JSON.stringify(data, null, 2)}</code>
|
|
81
|
+
</pre>
|
|
82
|
+
</Card>
|
|
83
|
+
</Grid>
|
|
84
|
+
</Grid>;
|
|
85
|
+
}`,...(j=(L=D.parameters)==null?void 0:L.docs)==null?void 0:j.source}}};var $,H,E;k.parameters={...k.parameters,docs:{...($=k.parameters)==null?void 0:$.docs,source:{originalSource:`() => {
|
|
86
|
+
const [data, setData] = useState<IRock[]>(rocks);
|
|
87
|
+
const [displayedData, setDisplayedData] = useState<any[]>([]);
|
|
88
|
+
const [unitTemplate, setUnitTemplate] = useState(initalUnitTemplate);
|
|
89
|
+
const onChangeValue = (ev: ChangeEvent<HTMLInputElement>, columnName: keyof IRock, rowIx: number, displayedUnits: Record<string, string>) => {
|
|
90
|
+
const {
|
|
91
|
+
value
|
|
92
|
+
} = ev.target;
|
|
93
|
+
let newData: IRock[];
|
|
94
|
+
setData(prev => {
|
|
95
|
+
newData = [...prev];
|
|
96
|
+
newData[rowIx][columnName] = columnName === 'rock_type' || columnName === 'name' ? value : withUnit(value, displayedUnits[columnName]);
|
|
97
|
+
return newData;
|
|
98
|
+
});
|
|
99
|
+
};
|
|
100
|
+
const addRow = () => {
|
|
101
|
+
const newRow = {
|
|
102
|
+
...data[data.length - 1]
|
|
103
|
+
};
|
|
104
|
+
setData(prev => [...prev, newRow]);
|
|
105
|
+
};
|
|
106
|
+
const onDeleteRow = (ix: number) => setData(prev => prev.filter((_, index) => ix !== index));
|
|
107
|
+
const rowMenu = (rowIx: number) => <TableRowMenu onDeleteTableRow={onDeleteRow} rowid={rowIx} />;
|
|
108
|
+
const convertToCells = (displayedRows: Array<any>, displayedUnits: Record<string, any>) => {
|
|
109
|
+
const cells = displayedRows.map((item, rowIndex) => {
|
|
110
|
+
let {
|
|
111
|
+
rock_type,
|
|
112
|
+
name,
|
|
113
|
+
depth_from,
|
|
114
|
+
depth_to,
|
|
115
|
+
Ro,
|
|
116
|
+
Cp,
|
|
117
|
+
Lambda
|
|
118
|
+
} = item;
|
|
119
|
+
const disabledFirstRow = isFirstRow(rowIndex);
|
|
120
|
+
const disabledLastRow = isLastRow(data.length, rowIndex);
|
|
121
|
+
const actions = disabledFirstRow ? [] : [{
|
|
122
|
+
childComponent: rowMenu(rowIndex)
|
|
123
|
+
}];
|
|
124
|
+
return {
|
|
125
|
+
cells: [{
|
|
126
|
+
options: rocksList,
|
|
127
|
+
value: rock_type || 'Rock',
|
|
128
|
+
type: 'Select',
|
|
129
|
+
disabled: false,
|
|
130
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'rock_type', rowIndex, displayedUnits),
|
|
131
|
+
testId: \`table-cell-\${rowIndex}-\${0}\`
|
|
132
|
+
}, {
|
|
133
|
+
value: name,
|
|
134
|
+
type: 'Input',
|
|
135
|
+
placeholder: 'Name',
|
|
136
|
+
disabled: false,
|
|
137
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'name', rowIndex, displayedUnits),
|
|
138
|
+
testId: \`table-cell-\${rowIndex}-\${1}\`
|
|
139
|
+
}, {
|
|
140
|
+
value: getCellLength(getValue(depth_from), disabledFirstRow),
|
|
141
|
+
type: disabledFirstRow ? 'Static' : 'NumberInput',
|
|
142
|
+
style: disabledFirstRow ? {
|
|
143
|
+
whiteSpace: 'nowrap'
|
|
144
|
+
} : {},
|
|
145
|
+
disabled: disabledFirstRow,
|
|
146
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'depth_from', rowIndex, displayedUnits),
|
|
147
|
+
testId: \`table-cell-\${rowIndex}-\${2}\`
|
|
148
|
+
}, {
|
|
149
|
+
value: getValue(depth_to),
|
|
150
|
+
type: disabledLastRow ? 'Static' : 'NumberInput',
|
|
151
|
+
style: disabledLastRow ? {
|
|
152
|
+
whiteSpace: 'nowrap'
|
|
153
|
+
} : {},
|
|
154
|
+
disabled: disabledLastRow,
|
|
155
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'depth_to', rowIndex, displayedUnits),
|
|
156
|
+
testId: \`table-cell-\${rowIndex}-\${3}\`
|
|
157
|
+
}, {
|
|
158
|
+
value: getValue(Ro),
|
|
159
|
+
type: 'NumberInput',
|
|
160
|
+
disabled: true,
|
|
161
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'Ro', rowIndex, displayedUnits),
|
|
162
|
+
testId: \`table-cell-\${rowIndex}-\${4}\`
|
|
163
|
+
}, {
|
|
164
|
+
value: getValue(Cp),
|
|
165
|
+
type: 'NumberInput',
|
|
166
|
+
disabled: true,
|
|
167
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'Cp', rowIndex, displayedUnits),
|
|
168
|
+
testId: \`table-cell-\${rowIndex}-\${5}\`
|
|
169
|
+
}, {
|
|
170
|
+
value: getValue(Lambda),
|
|
171
|
+
type: 'NumberInput',
|
|
172
|
+
disabled: true,
|
|
173
|
+
onChange: (e: ChangeEvent<HTMLInputElement>) => onChangeValue(e, 'Lambda', rowIndex, displayedUnits),
|
|
174
|
+
testId: \`table-cell-\${rowIndex}-\${6}\`
|
|
175
|
+
}],
|
|
176
|
+
actions
|
|
177
|
+
};
|
|
178
|
+
});
|
|
179
|
+
setDisplayedData(displayedRows);
|
|
180
|
+
return cells;
|
|
181
|
+
};
|
|
182
|
+
const tableActions = {
|
|
183
|
+
addRow,
|
|
184
|
+
reorderComponents: () => {}
|
|
185
|
+
};
|
|
186
|
+
const unitOptions = [{
|
|
187
|
+
value: 'm',
|
|
188
|
+
label: 'm'
|
|
189
|
+
}, {
|
|
190
|
+
value: 'ft',
|
|
191
|
+
label: 'ft'
|
|
192
|
+
}, {
|
|
193
|
+
value: 'km',
|
|
194
|
+
label: 'km'
|
|
195
|
+
}, {
|
|
196
|
+
value: 'in',
|
|
197
|
+
label: 'in'
|
|
198
|
+
}, {
|
|
199
|
+
value: 'mm',
|
|
200
|
+
label: 'mm'
|
|
201
|
+
}];
|
|
202
|
+
return <Grid columns="1fr" gap>
|
|
203
|
+
<Card heading={<Heading>Global View Settings</Heading>}>
|
|
204
|
+
<Field label="Active Unit Template For Length">
|
|
205
|
+
<Select options={unitOptions} value={{
|
|
206
|
+
value: unitTemplate.length
|
|
207
|
+
}} onChange={evt => {
|
|
208
|
+
setUnitTemplate(prev => ({
|
|
209
|
+
...prev,
|
|
210
|
+
length: evt.target.value
|
|
211
|
+
}));
|
|
212
|
+
}} width="100px" />
|
|
213
|
+
</Field>
|
|
214
|
+
</Card>
|
|
215
|
+
<UnitTable tableActions={tableActions} data={data} tableDef={tableDef} convertToCells={convertToCells} unitTemplate={unitTemplate} testId="Test" />
|
|
216
|
+
<Grid columns="1fr 1fr" gap>
|
|
217
|
+
<Card heading={<Heading>Display data</Heading>}>
|
|
218
|
+
<pre>
|
|
219
|
+
<code>{JSON.stringify(displayedData, null, 2)}</code>
|
|
220
|
+
</pre>
|
|
221
|
+
</Card>
|
|
222
|
+
<Card heading={<Heading>Storage data</Heading>}>
|
|
223
|
+
<pre>
|
|
224
|
+
<code>{JSON.stringify(data, null, 2)}</code>
|
|
225
|
+
</pre>
|
|
226
|
+
</Card>
|
|
227
|
+
</Grid>
|
|
228
|
+
</Grid>;
|
|
229
|
+
}`,...(E=(H=k.parameters)==null?void 0:H.docs)==null?void 0:E.source}}};const Gt=["Default","Complex"];export{k as Complex,D as Default,Gt as __namedExportsOrder,At as default};
|