@cxbox-ui/core 1.37.2-alpha.9 → 1.37.3-alpha.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.
@@ -1,2 +1,2 @@
1
- var e=Object.defineProperty,a=Object.defineProperties,o=Object.getOwnPropertyDescriptors,t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,n=(a,o,t)=>o in a?e(a,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[o]=t,l=(e,a)=>{for(var o in a||(a={}))r.call(a,o)&&n(e,o,a[o]);if(t)for(var o of t(a))i.call(a,o)&&n(e,o,a[o]);return e},s=(e,t)=>a(e,o(t)),c=(a,o)=>{for(var t in o)e(a,t,{get:o[t],enumerable:!0})},d=(e,a,o)=>(n(e,"symbol"!=typeof a?a+"":a,o),o),p={};c(p,{createDataReducerBuilderManager:()=>ia,createDepthDataReducerBuilderManager:()=>la,createRouterReducerBuilderManager:()=>Sa,createScreenReducerBuilderManager:()=>go,createSessionReducerBuilderManager:()=>wo,createViewReducerBuilderManager:()=>Do,dataInitialState:()=>ra,initialDepthDataState:()=>na,initialRouterState:()=>Pa,initialScreenState:()=>ho,initialSessionState:()=>No,initialViewState:()=>Eo});var u={};c(u,{addNotification:()=>ea,addPendingRequest:()=>Xe,apiError:()=>Le,bcAddFilter:()=>Te,bcAddSorter:()=>Pe,bcCancelPendingChanges:()=>me,bcChangeCursors:()=>G,bcChangeDepthCursor:()=>J,bcChangePage:()=>Re,bcDeleteDataFail:()=>R,bcFetchDataFail:()=>k,bcFetchDataPages:()=>F,bcFetchDataRequest:()=>D,bcFetchDataSuccess:()=>I,bcFetchRowMeta:()=>j,bcFetchRowMetaFail:()=>A,bcFetchRowMetaSuccess:()=>T,bcForceUpdate:()=>ce,bcLoadMore:()=>x,bcNewData:()=>O,bcNewDataFail:()=>S,bcNewDataSuccess:()=>P,bcRemoveAllFilters:()=>Oe,bcRemoveFilter:()=>Ae,bcRemoveSorter:()=>Se,bcSaveDataFail:()=>le,bcSaveDataSuccess:()=>ne,bcSelectDepthRecord:()=>fe,bcSelectRecord:()=>ve,bulkUploadFiles:()=>Ke,changeAssociation:()=>be,changeAssociationFull:()=>ye,changeAssociationSameBc:()=>he,changeAssociations:()=>re,changeChildrenAssociations:()=>ge,changeChildrenAssociationsSameBc:()=>Ne,changeDataItem:()=>H,changeDataItems:()=>z,changeDescendantsAssociationsFull:()=>we,changeLocation:()=>v,clearValidationFails:()=>Be,closeConfirmModal:()=>$e,closeNotification:()=>je,closeViewError:()=>Ue,closeViewPopup:()=>ee,downloadFile:()=>_e,downloadFileByUrl:()=>qe,drillDown:()=>Y,dropAllAssociations:()=>Ce,dropAllAssociationsFull:()=>De,dropAllAssociationsSameBc:()=>Ee,emptyAction:()=>Je,exportState:()=>Ge,forceActiveChangeFail:()=>V,forceActiveRmUpdate:()=>Q,handleRouter:()=>Fe,httpError:()=>We,inlinePickListFetchDataRequest:()=>M,login:()=>f,loginDone:()=>b,loginFail:()=>h,logout:()=>y,logoutDone:()=>g,operationConfirmation:()=>se,processPostInvoke:()=>_,processPostInvokeConfirm:()=>K,processPreInvoke:()=>q,refreshMeta:()=>He,refreshMetaAndReloadPage:()=>ze,removeMultivalueTag:()=>ie,removeNotifications:()=>aa,removePendingRequest:()=>Ze,saveAssociations:()=>te,selectScreen:()=>N,selectScreenFail:()=>w,selectTableCell:()=>Ie,selectTableCellInit:()=>Me,selectView:()=>C,selectViewFail:()=>E,sendOperation:()=>U,sendOperationFail:()=>$,sendOperationSuccess:()=>B,showAllTableRecordsInit:()=>ke,showFileUploadPopup:()=>Z,showNotification:()=>xe,showViewError:()=>Ve,showViewPopup:()=>X,switchDebugMode:()=>Ye,switchRole:()=>Qe,uploadFile:()=>de,uploadFileDone:()=>pe,uploadFileFailed:()=>ue,userDrillDown:()=>L,userDrillDownSuccess:()=>W,viewClearPickMap:()=>oe,viewPutPickMap:()=>ae});import{createAction as m}from"@reduxjs/toolkit";var v=m("changeLocation"),f=m("login"),b=m("loginDone"),h=m("loginFail"),y=m("logout"),g=m("logoutDone"),N=m("selectScreen"),w=m("selectScreenFail"),C=m("selectView"),E=m("selectViewFail"),D=m("bcFetchDataRequest"),F=m("bcFetchDataPages"),M=m("inlinePickListFetchDataRequest"),I=m("bcFetchDataSuccess"),k=m("bcFetchDataFail"),x=m("bcLoadMore"),j=m("bcFetchRowMeta"),T=m("bcFetchRowMetaSuccess"),A=m("bcFetchRowMetaFail"),O=m("bcNewData"),P=m("bcNewDataSuccess"),S=m("bcNewDataFail"),R=m("bcDeleteDataFail"),V=m("forceActiveChangeFail"),U=m("sendOperation"),$=m("sendOperationFail"),B=m("sendOperationSuccess"),_=m("processPostInvoke"),q=m("processPreInvoke"),K=m("processPostInvokeConfirm"),L=m("userDrillDown"),W=m("userDrillDownSuccess"),Y=m("drillDown"),G=m("bcChangeCursors"),J=m("bcChangeDepthCursor"),H=m("changeDataItem"),z=m("changeDataItems"),Q=m("forceActiveRmUpdate"),X=m("showViewPopup"),Z=m("showFileUploadPopup"),ee=m("closeViewPopup"),ae=m("viewPutPickMap"),oe=m("viewClearPickMap"),te=m("saveAssociations"),re=m("cnangeAssociations"),ie=m("removeMultivalueTag"),ne=m("bcSaveDataSuccess"),le=m("bcSaveDataFail"),se=m("operationConfirmation"),ce=m("bcForceUpdate"),de=m("uploadFile"),pe=m("uploadFileDone"),ue=m("uploadFileFailed"),me=m("bcCancelPendingChanges"),ve=m("bcSelectRecord"),fe=m("bcSelectDepthRecord"),be=m("changeAssociations"),he=m("changeAssociationsSameBc"),ye=m("changeAssociationFull"),ge=m("changeChildrenAssociations"),Ne=m("changeChildrenAssociationsSameBc"),we=m("changeDescendantsAssociationsFull"),Ce=m("dropAllAssociations"),Ee=m("dropAllAssociationsSameBc"),De=m("dropAllAssociationsFull"),Fe=m("handleRouter"),Me=m("selectTableCellInit"),Ie=m("selectTableCell"),ke=m("showAllTableRecordsInit"),xe=m("showNotification"),je=m("closeNotification"),Te=m("bcAddFilter"),Ae=m("bcRemoveFilter"),Oe=m("bcRemoveAllFilters"),Pe=m("bcAddSorter"),Se=m("bcRemoveSorter"),Re=m("bcChangePage"),Ve=m("showViewError"),Ue=m("closeViewError"),$e=m("closeConfirmModal"),Be=m("clearValidationFails"),_e=m("downloadFile"),qe=m("downloadFileByUrl"),Ke=m("bulkUploadFiles"),Le=m("apiError"),We=m("httpError"),Ye=m("switchDebugMode"),Ge=m("exportState"),Je=m("emptyAction"),He=m("refreshMeta"),ze=m("refreshMetaAndReloadPage"),Qe=m("switchRole"),Xe=m("addPendingRequest"),Ze=m("removePendingRequest"),ea=m("addNotification"),aa=m("removeNotifications"),oa=class{constructor(){d(this,"reducers",[]),d(this,"matchers",[]),d(this,"defaultCaseReducer")}addCase(e,a){return this.reducers.push([e,a]),this}removeCase(e){return this.reducers=this.reducers.filter((a=>a[0].type!==e.type)),this}replaceCase(e,a){return this.removeCase(e).addCase(e,a),this}addMatcher(e,a){return this.matchers.push([e,a]),this}addDefaultCase(e){return this.defaultCaseReducer=e,this}get builder(){return e=>{const a=this.reducers.reduce(((e,a)=>e.addCase(...a)),e),o=this.matchers.reduce(((e,a)=>e.addMatcher(...a)),a);return void 0!==this.defaultCaseReducer?o.addDefaultCase(this.defaultCaseReducer):o}}},ta=[],ra={},ia=e=>(new oa).addCase(I,((e,a)=>{e[a.payload.bcName]=a.payload.data})).addCase(P,((e,a)=>{e[a.payload.bcName]=[...e[a.payload.bcName]||ta,a.payload.dataItem]})).addCase(ne,((e,a)=>{const o=a.payload.dataItem,t=e[a.payload.bcName].findIndex((e=>e.id===o.id));e[a.payload.bcName][t]=o})).addCase(T,((e,a)=>{const o=a.payload.cursor;if(!o)return;const t=(e[a.payload.bcName]||ta).find((e=>e.id===o)),r=s(l({},t),{id:o,vstamp:-1,_associate:t&&t._associate});a.payload.rowMeta.fields.find((e=>"id"===e.key&&!e.currentValue))||(a.payload.rowMeta.fields.filter((e=>"_associate"!==e.key)).forEach((e=>r[e.key]=e.currentValue)),e[a.payload.bcName]=t?e[a.payload.bcName].map((e=>e===t?r:e)):[...e[a.payload.bcName]||ta,r])})).addCase(re,((e,a)=>{e[`${a.payload.bcName}Delta`]=a.payload.records||[]})).addCase(C,(e=>{})),na={},la=e=>(new oa).addCase(I,((e,a)=>{!a.payload.depth||a.payload.depth<2||(e[a.payload.depth][a.payload.bcName]=a.payload.data)})).addCase(C,(e=>{})),sa={};c(sa,{AppNotificationType:()=>ca,ApplicationErrorType:()=>va,DrillDownType:()=>da,FieldType:()=>ua,FilterType:()=>ja,OperationPostInvokeConfirmType:()=>xa,OperationPostInvokeType:()=>ka,OperationPreInvokeType:()=>Ia,OperationTypeCrud:()=>Da,PaginationMode:()=>Ea,PendingValidationFailsFormat:()=>ma,PopupWidgetTypes:()=>ga,PositionTypes:()=>ha,RouteType:()=>pa,TableLikeWidgetTypes:()=>ya,WidgetTypes:()=>ba,coreOperations:()=>Fa,isCustomWidget:()=>Na,isCustomWidgetConfiguration:()=>wa,isOperationGroup:()=>Ma,isViewNavigationCategory:()=>Aa,isViewNavigationGroup:()=>Oa,isViewNavigationItem:()=>Ta,isWidgetFieldBlock:()=>Ca});var ca=(e=>(e.success="success",e.info="info",e.warning="warning",e.error="error",e))(ca||{});import{DrillDownType as da}from"@cxbox-ui/schema";var pa=(e=>(e.screen="screen",e.default="default",e.router="router",e.invalid="invalid",e.unknown="unknown",e))(pa||{});import{FieldType as ua}from"@cxbox-ui/schema";var ma=(e=>(e.old="old",e.target="target",e))(ma||{}),va=(e=>(e[e.BusinessError=0]="BusinessError",e[e.SystemError=1]="SystemError",e[e.NetworkError=2]="NetworkError",e))(va||{});import{WidgetTypes as fa}from"@cxbox-ui/schema";import{WidgetTypes as ba,PositionTypes as ha}from"@cxbox-ui/schema";var ya=[fa.List,fa.DataGrid,fa.AssocListPopup,fa.PickListPopup,fa.FlatTree,fa.FlatTreePopup],ga=[fa.PickListPopup,fa.AssocListPopup,fa.FlatTreePopup];function Na(e){return!!e&&!("component"in e)}function wa(e){return e&&"component"in e}function Ca(e){return!!e&&"blockId"in e}var Ea=(e=>(e.page="page",e.loadMore="loadMore",e))(Ea||{});import{OperationTypeCrud as Da}from"@cxbox-ui/schema";var Fa=[Da.create,Da.save,Da.delete,Da.associate,Da.cancelCreate,Da.fileUpload];function Ma(e){return Array.isArray(e.actions)}var Ia=(e=>(e.confirm="confirm",e.info="info",e.error="error",e))(Ia||{}),ka=(e=>(e.refreshBC="refreshBC",e.downloadFile="downloadFile",e.downloadFileByUrl="downloadFileByUrl",e.drillDown="drillDown",e.openPickList="openPickList",e.showMessage="showMessage",e.postDelete="postDelete",e))(ka||{}),xa=(e=>(e.confirm="confirm",e.confirmText="confirmText",e))(xa||{}),ja=(e=>(e.range="range",e.equals="equals",e.greaterThan="greaterThan",e.lessThan="lessThan",e.greaterOrEqualThan="greaterOrEqualThan",e.lessOrEqualThan="lessOrEqualThan",e.contains="contains",e.specified="specified",e.specifiedBooleanSql="specifiedBooleanSql",e.equalsOneOf="equalsOneOf",e.containsOneOf="containsOneOf",e))(ja||{});function Ta(e){return!!e&&"viewName"in e}function Aa(e){return!!e&&"categoryName"in e}function Oa(e){return!!e&&"child"in e&&!("categoryName"in e)}var Pa={type:"default",path:"/",params:null,screenName:null},Sa=e=>(new oa).addCase(b,((e,a)=>{e=l(l({},e),a.payload)})).addCase(v,((e,a)=>{e=l(l({},e),a.payload.location)}));import{OperationTypeCrud as Ra}from"@cxbox-ui/schema";var Va={};function Ua(e){return e.includes("?")?e+"&":e+"?"}function $a(e,a){return a?Ba(e,function(e){const a=l({},e);return Object.keys(a).reduce(((e,a)=>(e[a]||"number"==typeof e[a]||delete e[a],e)),a)}(a)):e}function Ba(e,a){if(!a)return e;const o=new URLSearchParams(a).toString();return`${Ua(e)}${o&&`${o}`}`}function _a(e,...a){let o="";for(let t=0;t<a.length;t++)o+=e[t],o+="${"+t+"}";return o+=e[e.length-1],o}function qa(e,a=!1,o){const t=o.screen.bo.bc,r=t[e];if(!r)return null;const i=[r.cursor&&a?`${r.name}/${r.cursor}`:r.name];let n=r;for(;n.parentName;)n=t[n.parentName],i.push(`${n.name}/${n.cursor}`);return i.reverse().join("/")}function Ka(e){const a=e.split("/"),o=[];for(let e=0;e<a.length;e+=2){const t=a[e],r=a[e+1];o.push(t&&r?`${t}/${r}`:t)}return o}c(Va,{addTailControlSequences:()=>Ua,applyParams:()=>$a,applyRawParams:()=>Ba,assignTreeLinks:()=>po,breadthFirstSearch:()=>fo,buildBcUrl:()=>qa,buildSearchResultTree:()=>mo,buildUrl:()=>Xa,checkShowCondition:()=>co,defaultBuildURL:()=>eo,defaultParseURL:()=>Za,deleteUndefinedFromObject:()=>bo,escapedSrc:()=>Ha,flattenOperations:()=>no,getBcChildren:()=>so,getDescendants:()=>uo,getFieldTitle:()=>Ga,getFilterType:()=>io,getFilters:()=>ao,getSorters:()=>oo,getTemplate:()=>_a,makeRelativeUrl:()=>za,matchOperationRole:()=>lo,parseBcCursors:()=>Qa,parseFilters:()=>to,parseSorters:()=>ro,presort:()=>vo,splitBcUrl:()=>Ka,splitIntoTokens:()=>Ja});var La=/\${([^{}]+)}/g,Wa=(e,a)=>e?e.replace(La,((e,o)=>{const[t,r]=o.split(":");return String((null==a?void 0:a[t])||r||"")})):"",Ya=e=>!!e&&null!==e.match(La);function Ga(e,a){return Ya(e)?Wa(e,a):e}function Ja(e,a){const o=a instanceof RegExp?a:Ha(a);return e.split(o)}function Ha(e){return new RegExp(`(${null==e?void 0:e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")})`,"gi")}function za(e){return e.startsWith("/")?e:`/${e}`}function Qa(e){if(!e)return null;const a={},o=e.split("/");for(let e=0;e<o.length;e+=2)o[e+1]&&(a[o[e]]=o[e+1]);return a}function Xa(e,...a){let o="";for(let t=0;t<a.length;t++){o+=e[t];const r=a[t];if("number"==typeof r)o+=r.toString(10);else{if("string"!=typeof r){const o=_a(e,a);throw new Error(`Неверный тип подстановочного знака в ${o}, index: ${t}, value: ${JSON.stringify(r)}`)}o+=encodeURIComponent(r)}}return o+=e[e.length-1],o}function Za(e){let a=e.pathname;a.startsWith("/")&&(a=a.substring(1)),a.endsWith("/")&&(a=a.substring(0,a.length-1)),(null==a?void 0:a.includes("&"))&&!(null==a?void 0:a.includes("?"))&&(a=a.substring(0,a.indexOf("&")));const o={};e.searchParams.forEach(((e,a)=>o[a]=e));const t=a.split("/").map(decodeURIComponent);let r="unknown",i=null,n=null,l=null;if(t.length>0&&"router"===t[0])r="router";else if(1===t.length)r="default";else if(t.length>=2&&"screen"===t[0]){let e=2;r="screen",i=t[1],t.length>=4&&"view"===t[2]&&(e+=2,n=t[3]),l=t.slice(e).map(encodeURIComponent).join("/")}return{type:r,path:0===a.length||a.startsWith("/")?a:`/${a}`,params:o,screenName:i,viewName:n,bcPath:l}}function eo(e){return`/screen/${e.screenName}/view/${e.viewName}/${e.bcPath}`}function ao(e){if(!e||!e.length)return null;const a={};return e.forEach((e=>{if("range"===e.type){const o=e.value;o[0]&&(a[`${e.fieldName}.greaterOrEqualThan`]=String(o[0])),o[1]&&(a[`${e.fieldName}.lessOrEqualThan`]=String(o[1]))}else{let o=String(e.value);Array.isArray(e.value)&&(o=`[${e.value.map((e=>`"${e}"`))}]`),a[`${e.fieldName}.${e.type}`]=o}})),a}function oo(e){if(!e||!e.length)return null;const a={};return e.forEach(((e,o)=>{a[`_sort.${o}.${e.direction}`]=e.fieldName})),a}function to(e=""){const a=[],o=new URL(e,window.location.origin).searchParams;return o.forEach((e=>{const[t,r]=e.split(".");if(t&&r&&o.get(e)){let i=o.getAll(e);if("containsOneOf"===r||"equalsOneOf"===r){try{"string"==typeof i&&(i=JSON.parse(i))}catch(e){console.warn(e)}i=Array.isArray(i)?i:[]}a.push({fieldName:t,type:r,value:i})}})),a.length?a:null}function ro(e){if(!e||!e.length)return null;const a=[],o=new URL(e,window.location.origin).searchParams;return Object.entries(o).map((([e,a])=>{const[o,t]=e.split(".").slice(1);return{fieldName:a,order:Number.parseInt(o,10),direction:t}})).sort(((e,a)=>e.order-a.order)).forEach((e=>{a.push({fieldName:e.fieldName,direction:e.direction})})),a}function io(e){switch(e){case ua.dictionary:return"equalsOneOf";case ua.checkbox:return"specified";case ua.input:case ua.text:return"contains";default:return"equals"}}function no(e){const a=[];return null==e||e.forEach((e=>{Ma(e)?e.actions.forEach((e=>{a.push(e)})):a.push(e)})),a}function lo(e,a,o){var t,r;if(a.operationType===e)return!0;const i=qa(a.bcName,!0,o),n=no(null==(r=null==(t=o.view.rowMeta[a.bcName])?void 0:t[i])?void 0:r.actions).find((e=>e.type===a.operationType));return"none"===e?Fa.every((e=>e!==a.operationType&&e!==(null==n?void 0:n.actionRole))):(null==n?void 0:n.actionRole)===e}function so(e,a,o){const t={};return a.filter((e=>e.bcName)).forEach((a=>{const r=[];r.push(a.bcName);let i=o[a.bcName].parentName;for(;i;)r.push(i),i=o[i].parentName;r.filter((a=>o[a].parentName===e)).forEach((e=>{t[e]=[...t[e]||[],a.name]}))})),a.filter((e=>{var a;return null==(a=e.options)?void 0:a.hierarchy})).forEach((a=>{const[o,r]=function(e,a){var o,t;const r=null==(t=null==(o=null==a?void 0:a.options)?void 0:o.hierarchy)?void 0:t.map((e=>e.bcName));if(e!==a.bcName&&!(null==r?void 0:r.includes(e)))return[];const i=null==r?void 0:r.findIndex((a=>a===e));return[null==r?void 0:r[i+1],a.name]}(e,a);o&&(t[o]=[...t[o]||[],r])})),t}function co(e,a,o,t){var r,i;const{bcName:n,isDefault:l,params:s}=e||{};if(!e||Array.isArray(e)||l)return!0;const c=a&&(null==o?void 0:o.find((e=>e.id===a)));if(!c)return!1;const d=null==(i=null==(r=null==t?void 0:t[n])?void 0:r[a])?void 0:i[null==s?void 0:s.fieldKey];return void 0!==d?d===(null==s?void 0:s.value):(null==c?void 0:c[null==s?void 0:s.fieldKey])===(null==s?void 0:s.value)}function po(e){const a=e.map((e=>l({},e))),o={},t=[];return a.forEach((r=>{var i,n;if(!r.parentId||"0"===r.parentId)return;let l=o[r.parentId];if("number"!=typeof l&&(l=e.findIndex((e=>e.id===r.parentId)),o[r.parentId]=l),-1===l)return t.push(r.parentId),void console.warn(`Record with [id] = ${r.id} has [parentId] = ${r.parentId}, but no matching parent record exist. Check the service for this BC.`);r.parent=a[l],a[l].children?null==(n=null==(i=a[l])?void 0:i.children)||n.push(r):a[l].children=[r]})),t.length?a.filter((e=>!t.includes(e.parentId))):a}function uo(e,a){e.forEach((e=>{a.push(e.id),e.children&&uo(e.children,a)}))}function mo(e,a){const o={};return e.forEach((e=>{var t;if(!a.includes(e.id))return;let r=e.parent;for(;r;)o[r.id]=!0,r=r.parent;o[e.id]=!0,null==(t=e.children)||t.forEach((e=>{o[e.id]=!0}))})),e.filter((e=>!0===o[e.id]))}function vo(e){const a=[];return e.filter((e=>1===e.level)).forEach((e=>{a.push(e.id),e.children&&uo(e.children,a)})),a.map((a=>e.find((e=>e.id===a))))}function fo(e,a,o=1,t="child"){const r=a(e)&&e,i=e[t];if(!r&&!i)return null;if(r)return{node:r,depth:o};let n=i.filter((e=>!e[t])).find((e=>a(e)));if(n)return{node:n,depth:o+1};let l=o;return i.some((e=>{const o=fo(e,a,l+1,null!=t?t:"child");return n=null==o?void 0:o.node,l=null==o?void 0:o.depth,null==o?void 0:o.node})),n?{node:n,depth:l}:null}function bo(e){Object.keys(e).forEach((a=>{void 0===e[a]&&delete e[a]}))}var ho={screenName:"",bo:{activeBcName:"",bc:{}},cachedBc:{},views:[],primaryView:"",filters:{},sorters:{}},yo=[Ra.associate,Ra.fileUpload],go=e=>(new oa).addCase(N,((e,a)=>{var o,t,r,i,n;const s={},c={},d={};null==(o=a.payload.screen.meta)||o.bo.bc.forEach((e=>{s[e.name]=e;const a=ro(e.defaultSort),o=to(e.defaultFilter);a&&(c[e.name]=a),o&&(d[e.name]=o)})),e.screenName=a.payload.screen.name,e.primaryView=null!=(r=null==(t=a.payload.screen.meta)?void 0:t.primary)?r:e.primaryView,e.views=null!=(n=null==(i=a.payload.screen.meta)?void 0:i.views)?n:e.views,e.bo={activeBcName:null,bc:s},e.sorters=l(l({},e.sorters),c),e.filters=l(l({},e.filters),d)})).addCase(w,((e,a)=>{e.screenName=a.payload.screenName,e.views=[]})).addCase(D,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0})).addCase(x,((e,a)=>{var o;const t=e.bo.bc[a.payload.bcName];t.page=(null!=(o=t.page)?o:1)+1,t.loading=!0})).addCase(C,((e,a)=>{var o;const t={};Array.from(new Set(null==(o=a.payload.widgets)?void 0:o.map((e=>e.bcName)))).filter((a=>e.bo.bc[a])).forEach((a=>{t[a]=s(l({},e.bo.bc[a]),{page:1})})),e.bo.bc=l(l({},e.bo.bc),t)})).addCase(I,((e,a)=>{const o=e.bo.bc[a.payload.bcName];o.hasNext=a.payload.hasNext,o.loading=!1,e.cachedBc[a.payload.bcName]=a.payload.bcUrl})).addCase(k,((e,a)=>{const o=a.payload.bcName;Object.values(e.bo.bc).some((e=>e.name===o))&&(e.bo.bc[o].loading=!1,e.cachedBc[o]=a.payload.bcUrl)})).addCase(U,((e,a)=>{yo.includes(a.payload.operationType)||(e.bo.bc[a.payload.bcName].loading=!0)})).addCase(P,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1,e.bo.bc[a.payload.bcName].cursor=a.payload.dataItem.id,e.cachedBc[a.payload.bcName]=a.payload.bcUrl})).addCase(G,((e,a)=>{const o={},t={};Object.entries(a.payload.cursorsMap).forEach((a=>{const[r,i]=a;o[r]=s(l({},e.bo.bc[r]),{cursor:i}),t[r]=i}));const r=Object.values(o).map((e=>`${e.url}/:id`));Object.values(e.bo.bc).forEach((a=>{r.some((e=>a.url.includes(e)))&&(o[a.name]=s(l({},e.bo.bc[a.name]),{cursor:null}),t[a.name]=null)})),Object.assign(e.bo.bc,o),Object.assign(e.cachedBc,t)})).addCase(J,((e,a)=>{var o;1===a.payload.depth?e.bo.bc[a.payload.bcName].cursor=a.payload.cursor:(e.bo.bc[a.payload.bcName].depthBc=null!=(o=e.bo.bc[a.payload.bcName].depthBc)?o:{},e.bo.bc[a.payload.bcName].depthBc[a.payload.depth].cursor=a.payload.cursor)})).addCase(ve,((e,a)=>{e.bo.bc[a.payload.bcName].cursor=a.payload.cursor})).addCase(ce,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0,e.cachedBc[a.payload.bcName]=null})).addCase(Te,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=t,i=e.filters[o]||[],n=i.find((e=>e.fieldName===t.fieldName&&e.type===t.type)),c=n?i.map((e=>e===n?s(l({},n),{value:r.value}):e)):[...i,r];e.bo.bc[o].page=1,e.filters[o]=c})).addCase(Ae,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=(e.filters[o]||[]).filter((e=>e.fieldName!==(null==t?void 0:t.fieldName)||e.type!==t.type)),i=s(l({},e.filters),{[o]:r});r.length||delete i[o],e.bo.bc[a.payload.bcName].page=1,e.filters=i})).addCase(Oe,((e,a)=>{delete e.filters[a.payload.bcName],e.bo.bc[a.payload.bcName].page=1})).addCase(Pe,((e,a)=>{e.sorters[a.payload.bcName]=Array.isArray(a.payload.sorter)?a.payload.sorter:[a.payload.sorter]})).addCase(Re,((e,a)=>{e.bo.bc[a.payload.bcName].page=a.payload.page,e.bo.bc[a.payload.bcName].loading=!0})).addCase(X,((e,a)=>{e.bo.bc[a.payload.bcName].page=1,e.bo.bc[a.payload.bcName].loading=a.payload.bcName!==a.payload.calleeBCName})).addCase(B,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(R,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase($,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(ne,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(le,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})),No={devPanelEnabled:!1,activeRole:null,roles:null,firstName:"",lastName:"",login:"",debugMode:!1,exportStateEnabled:!1,active:!1,logout:!1,loginSpin:!1,errorMsg:null,screens:[],pendingRequests:[],notifications:[]},wo=e=>(new oa).addCase(f,(e=>{e.loginSpin=!0,e.errorMsg=null})).addCase(b,((e,a)=>{(e=l(l({},e),a.payload)).loginSpin=!1,e.active=!0,e.logout=!1})).addCase(h,((e,a)=>{e.loginSpin=!1,e.errorMsg=a.payload.errorMsg})).addCase(y,(e=>{e.loginSpin=!1,e.active=!1,e.logout=!0})).addCase(Ye,((e,a)=>{e.debugMode=a.payload})).addCase(Xe,((e,a)=>{var o;null==(o=e.pendingRequests)||o.push(a.payload.request)})).addCase(Ze,((e,a)=>{var o;e.pendingRequests=null==(o=e.pendingRequests)?void 0:o.filter((e=>e.requestId!==a.payload.requestId))})).addCase(ea,((e,a)=>{e.notifications.push(a.payload)})).addCase(aa,((e,a)=>{const o=a.payload;e.notifications=e.notifications.filter((e=>!o.includes(e.key)))}));import{OperationTypeCrud as Co}from"@cxbox-ui/schema";var Eo={id:void 0,name:null,url:null,widgets:[],columns:null,readOnly:!1,rowHeight:null,rowMeta:{},metaInProgress:{},popupData:{bcName:null},pendingDataChanges:{},infiniteWidgets:[],pendingValidationFailsFormat:"old",pendingValidationFails:{},handledForceActive:{},selectedCell:null,ignoreHistory:null,systemNotifications:[],error:null,modalInvoke:null},Do=e=>(new oa).addCase(C,((e,a)=>{e.rowMeta=Eo.rowMeta,Object.assign(e,a.payload)})).addCase(j,((e,a)=>{e.metaInProgress[a.payload.bcName]=!0})).addCase(x,((e,a)=>{const o=e.infiniteWidgets||[];void 0!==a.payload.widgetName&&o.push(a.payload.widgetName),e.infiniteWidgets=Array.from(new Set(o))})).addCase(U,((e,a)=>{a.payload.operationType===Co.create&&(e.metaInProgress[a.payload.bcName]=!0)})).addCase(T,((e,a)=>{var o;e.rowMeta[a.payload.bcName]=null!=(o=e.rowMeta[a.payload.bcName])?o:{},e.rowMeta[a.payload.bcName][a.payload.bcUrl]=a.payload.rowMeta,e.metaInProgress[a.payload.bcName]=!1})).addCase(P,((e,a)=>{e.selectedCell=Eo.selectedCell})).addCase(Q,((e,a)=>{var o,t,r,i;const{bcName:n,bcUrl:s,currentRecordData:c,rowMeta:d,cursor:p}=a.payload,u={},m={},v={},f=[];d.fields.forEach((e=>{m[e.key]=e.currentValue,e.forceActive&&f.push(e.key)}));const b=l(l({},c),e.pendingDataChanges[n][p]);Object.keys(b).forEach((e=>{void 0!==m[e]&&b[e]!==m[e]&&(v[e]=m[e])}));const h=l(l({},e.pendingDataChanges[n][p]),v);f.forEach((e=>{void 0!==h[e]&&(u[e]=h[e])})),e.handledForceActive[n]=null!=(o=e.handledForceActive[n])?o:{},e.handledForceActive[n][p]=null!=(t=e.handledForceActive[n][p])?t:{},Object.assign(e.handledForceActive[n][p],u),e.pendingDataChanges[n]=null!=(r=e.pendingDataChanges[n])?r:{},e.pendingDataChanges[n][p]=h,e.rowMeta[n]=null!=(i=e.rowMeta[n])?i:{},e.rowMeta[n][s]=d})).addCase(H,((e,a)=>{var o,t,r;const i=a.payload.bcName,n=l(l({},(e.pendingDataChanges[a.payload.bcName]||{})[a.payload.cursor]||{}||{}),a.payload.dataItem),s=null==(o=e.rowMeta[i])?void 0:o[a.payload.bcUrl],c={},d="target"===e.pendingValidationFailsFormat;Object.keys(n).forEach((e=>{const a=null==s?void 0:s.fields.find((a=>a.required&&a.key===e)),o=null==n[e]||""===n[e]||Array.isArray(n[e])&&0===Object.keys(n[e]).length;a&&o&&(c[e]="This field is mandatory")})),e.pendingDataChanges[a.payload.bcName]=null!=(t=e.pendingDataChanges[a.payload.bcName])?t:{},e.pendingDataChanges[a.payload.bcName][a.payload.cursor]=n,d?(null==(r=e.pendingValidationFails)?void 0:r[i])[a.payload.cursor]=c:e.pendingValidationFails=c})).addCase(z,((e,a)=>{const o=l({},e.pendingDataChanges[a.payload.bcName]);a.payload.cursors.forEach(((e,t)=>{o[e]=a.payload.dataItems[t]})),e.pendingDataChanges[a.payload.bcName]=o})).addCase(Ce,((e,a)=>{const o=l({},e.pendingDataChanges);a.payload.bcNames.forEach((e=>{const a={};Object.keys(o[e]||{}).forEach((e=>{a[e]={id:e,_associate:!1}})),o[e]=a}));const t="target"===e.pendingValidationFailsFormat,r=e.pendingValidationFails?l({},e.pendingValidationFails):{};t&&a.payload.bcNames.forEach((e=>{r[e]={}})),e.pendingDataChanges=o,e.pendingValidationFails=t?r:Eo.pendingValidationFails})).addCase(Ee,((e,a)=>{})).addCase(De,((e,a)=>{})).addCase(S,((e,a)=>{e.metaInProgress[a.payload.bcName]=!1})).addCase(A,((e,a)=>{e.metaInProgress[a.payload.bcName]=!1})).addCase(V,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase(le,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase($,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase(B,((e,a)=>{var o,t,r;const i=a.payload.bcName,n=a.payload.cursor,l="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[i]=null!=(o=e.pendingDataChanges[i])?o:{},e.pendingDataChanges[i][n]={},l?(null==(t=e.pendingValidationFails)?void 0:t[i])[n]={}:e.pendingValidationFails=Eo.pendingValidationFails,e.handledForceActive[i]=null!=(r=e.handledForceActive[i])?r:{},e.handledForceActive[i][n]={}})).addCase(ne,((e,a)=>{var o,t,r;const{bcName:i,cursor:n}=a.payload,l="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[i]=null!=(o=e.pendingDataChanges[i])?o:{},e.pendingDataChanges[i][n]={},l?(null==(t=e.pendingValidationFails)?void 0:t[i])[n]={}:e.pendingValidationFails=Eo.pendingValidationFails,e.handledForceActive[i]=null!=(r=e.handledForceActive[i])?r:{},e.handledForceActive[i][n]={}})).addCase(me,((e,a)=>{var o,t;const r=l({},e.pendingDataChanges);for(const o in e.pendingDataChanges)a.payload&&!a.payload.bcNames.includes(o)||(r[o]={});const i="target"===e.pendingValidationFailsFormat;let n=e.pendingValidationFails?l({},e.pendingValidationFails):{};i&&((null==(t=null==(o=a.payload)?void 0:o.bcNames)?void 0:t.length)>0?a.payload.bcNames.forEach((e=>{n[e]={}})):n=Eo.pendingValidationFails),e.pendingDataChanges=r,e.pendingValidationFails=i?n:Eo.pendingValidationFails})).addCase(Be,(e=>{e.pendingValidationFails=Eo.pendingValidationFails})).addCase(X,((e,a)=>{const{bcName:o,calleeBCName:t,calleeWidgetName:r,associateFieldKey:i,assocValueKey:n,active:l,isFilter:s,type:c,widgetName:d}=a.payload;e.popupData={widgetName:d,type:c,bcName:o,calleeBCName:t,calleeWidgetName:r,associateFieldKey:i,assocValueKey:n,active:l,isFilter:s}})).addCase(Z,((e,a)=>{var o,t;const r=null==(t=null==(o=e.widgets)?void 0:o.find((e=>e.name===a.payload.widgetName)))?void 0:t.bcName;e.popupData={type:"file-upload",bcName:r,calleeBCName:r}})).addCase(ae,((e,a)=>{e.pickMap=a.payload.map})).addCase(oe,(e=>{e.pickMap=null})).addCase(ee,(e=>{e.popupData={},e.popupData.bcName=null})).addCase(Ie,((e,a)=>{e.selectedCell={widgetName:a.payload.widgetName,rowId:a.payload.rowId,fieldKey:a.payload.fieldKey}})).addCase(v,((e,a)=>{e.pendingDataChanges=Eo.pendingDataChanges,e.selectedCell=Eo.selectedCell})).addCase(xe,((e,a)=>{var o,t;e.systemNotifications=null!=(o=e.systemNotifications)?o:[],e.systemNotifications.push({type:a.payload.type,message:a.payload.message,id:null==(t=e.systemNotifications)?void 0:t.length})})).addCase(je,((e,a)=>{var o;e.systemNotifications=null!=(o=e.systemNotifications)?o:[],e.systemNotifications=e.systemNotifications.filter((e=>e.id!==a.payload.id))})).addCase(Ve,((e,a)=>{e.error=a.payload.error})).addCase(se,((e,a)=>{e.modalInvoke=a.payload})).addCase($e,((e,a)=>{e.modalInvoke=null})).addCase(Ue,(e=>{e.error=null})).addCase(_,(e=>{e.selectedCell=null})),Fo={};c(Fo,{apiErrorEpic:()=>Fr,bcCancelCreateDataEpic:()=>il,bcDeleteDataEpic:()=>$n,bcFetchDataEpic:()=>Tn,bcFetchRowMetaRequestEpic:()=>Cl,bcLoadMoreEpic:()=>dn,bcNewDataEpic:()=>zi,bcSaveDataEpic:()=>hn,bcSelectDepthRecordEpic:()=>dl,bcSelectRecordEpic:()=>Ln,changeAssociationEpic:()=>Hn,changeAssociationFullEpic:()=>Il,changeAssociationSameBcEpic:()=>Bl,changeChildrenAssociationsEpic:()=>es,changeChildrenAssociationsSameBcEpic:()=>rs,changeDescendantsAssociationsFullEpic:()=>cs,changeLocationEpic:()=>dr,changeScreen:()=>zt,changeViewEpic:()=>Bt,clearPendingDataChangesAfterCursorChangeEpic:()=>Mt,downloadFileByUrlEpic:()=>ei,downloadFileEpic:()=>jr,drillDownEpic:()=>Tt,fileUploadConfirmEpic:()=>Yo,getRowMetaByForceActiveEpic:()=>bt,handleRouterEpic:()=>Yt,httpError401Epic:()=>Or,httpError409Epic:()=>Rr,httpError418Epic:()=>qr,httpError500Epic:()=>Wr,httpErrorDefaultEpic:()=>Hr,inlinePickListFetchDataEpic:()=>Yl,loginByAnotherRoleEpic:()=>Pi,loginDoneEpic:()=>St,loginDoneSessionEpic:()=>Mi,processPostInvokeConfirmEpic:()=>pi,processPostInvokeEpic:()=>ii,refreshMetaAndReloadPageEpic:()=>qi,refreshMetaEpic:()=>Ci,removeMultivalueTagEpic:()=>fl,saveAssociationsActiveEpic:()=>Sl,saveAssociationsPassiveEpic:()=>zl,selectScreenFailEpic:()=>br,selectTableCellInitEpic:()=>Qo,selectViewEpic:()=>wn,selectViewFailEpic:()=>mr,sendOperationAssociateEpic:()=>lt,sendOperationEpic:()=>Po,showAllTableRecordsInitEpic:()=>wt,showAssocPopupEpic:()=>Bo,showFileUploadPopupEpic:()=>tt,switchRoleEpic:()=>fi,userDrillDownChangeCursorsEpic:()=>gr,userDrillDownEpic:()=>rr});import{catchError as Mo,concat as Io,EMPTY as ko,filter as xo,mergeMap as jo,of as To}from"rxjs";import{of as Ao}from"rxjs";function Oo(e,a,o,t,r){const i=Object.values(xa).includes(null==a?void 0:a.type),n=[];return a&&n.push(_({bcName:r,postInvoke:a,widgetName:e})),i&&n.push(K({bcName:r,operationType:t,widgetName:e,postInvokeConfirm:a})),o&&n.push(q({bcName:r,operationType:t,widgetName:e,preInvoke:o})),n.map((e=>Ao(e)))}var Po=(e,a,{api:o})=>e.pipe(xo(U.match),xo((e=>lo("none",e.payload,a.value))),jo((e=>{var t,r,i,n,c,d,p,u,m,f;const b=a.value,h=b.screen.screenName,{bcName:y,operationType:g,widgetName:N}=e.payload,w=(null==(t=e.payload.confirmOperation)?void 0:t.type)||e.payload.confirm,C=qa(y,!0,b),E=b.screen.bo.bc[y],D=C&&(null==(r=b.view.rowMeta[y])?void 0:r[C]),F=null==D?void 0:D.fields,M=E.cursor,I=null==(i=b.data[y])?void 0:i.find((e=>e.id===E.cursor)),k=b.screen.filters[y],x=b.screen.sorters[y],j=l({},null==(n=b.view.pendingDataChanges[y])?void 0:n[E.cursor]);for(const e in j)F.find((a=>a.key===e&&a.disabled))&&delete j[e];const T=I&&s(l({},j),{vstamp:I.vstamp}),A=(null==(u=null==(p=null==(d=null==(c=b.view.widgets)?void 0:c.find((e=>e.name===N)))?void 0:d.options)?void 0:p.actionGroups)?void 0:u.defaultSave)===e.payload.operationType&&v.match(null==(f=null==(m=e.payload)?void 0:m.onSuccessAction)?void 0:f.type),O=l(l({_action:g},ao(k)),oo(x));return w&&(O._confirm=w),o.customAction(h,C,T,{widgetName:e.payload.widgetName},O).pipe(jo((a=>{var o,t;const r=null==(o=a.postActions)?void 0:o[0],i=a.preInvoke;return A?(null==(t=null==e?void 0:e.payload)?void 0:t.onSuccessAction)?Io(To(me({bcNames:[y]})),To(e.payload.onSuccessAction)):ko:Io(To(B({bcName:y,cursor:M})),To(ce({bcName:y})),...Oo(N,r,i,g,y))})),Mo((e=>{var a,o,t,r,i,n;console.error(e);let l=null,s=null;const c=null==(a=e.response)?void 0:a.data;return(null==(o=e.response)?void 0:o.data)===Object(null==(t=e.response)?void 0:t.data)&&(s=null==(r=null==c?void 0:c.error)?void 0:r.entity,l=null==(n=null==(i=null==c?void 0:c.error)?void 0:i.popup)?void 0:n[0]),To($({bcName:y,bcUrl:C,viewError:l,entityError:s}))})))})));import{EMPTY as So,filter as Ro,mergeMap as Vo,of as Uo}from"rxjs";import{WidgetTypes as $o}from"@cxbox-ui/schema";var Bo=(e,a)=>e.pipe(Ro(X.match),Ro((e=>!(!e.payload.calleeBCName||!e.payload.associateFieldKey))),Vo((e=>{var o,t,r,i;const{bcName:n,calleeBCName:l}=e.payload,s=a.value,c=s.view.widgets.find((e=>e.bcName===n&&e.type===$o.AssocListPopup)),d=null==(o=s.screen.bo.bc[l])?void 0:o.cursor,p=null==(t=s.view.pendingDataChanges[l])?void 0:t[d],u=e.payload.associateFieldKey,m=null==p?void 0:p[u];if(!(c&&p&&m&&m)||c.options&&!c.options.hierarchyFull)return So;const v={};m.forEach((e=>{v[e.id]={id:e.id,_associate:!0,_value:e.value}}));const f=null==(r=s.data[l])?void 0:r.find((e=>e.id===d)),b=null==(i=null==f?void 0:f[u])?void 0:i.map((e=>e.id)),h=m.map((e=>e.id));return b&&b.forEach((e=>{h.includes(e)||(v[e]={id:e,_associate:!1})})),Uo(z({bcName:n,cursors:Object.keys(v),dataItems:Object.values(v)}))})));import{concat as _o,filter as qo,mergeMap as Ko,of as Lo}from"rxjs";import{OperationTypeCrud as Wo}from"@cxbox-ui/schema";var Yo=(e,a,{api:o})=>e.pipe(qo(Ke.match),Ko((e=>{var t,r;const i=a.value,n=null==(t=i.view.popupData)?void 0:t.bcName,l=qa(n,!0,i),s=null==(r=i.view.widgets.find((e=>e.bcName===n)))?void 0:r.name;return o.customAction(i.screen.screenName,l,{bulkIds:e.payload.fileIds},null,{_action:"file-upload-save"}).pipe(Ko((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0],t=e.preInvoke;return _o(Lo(B({bcName:n,cursor:null})),Lo(ce({bcName:n})),Lo(ee(null)),...Oo(s,o,t,Wo.save,n))})))})));import{concat as Go,filter as Jo,mergeMap as Ho,of as zo}from"rxjs";var Qo=(e,a)=>e.pipe(Jo(Me.match),Ho((e=>{var o;const t=[],r=a.value,{rowId:i,fieldKey:n}=e.payload,l=r.view.widgets.find((a=>a.name===e.payload.widgetName)),s=null==l?void 0:l.bcName,c=null==(o=r.screen.bo.bc[s])?void 0:o.cursor,d=r.view.selectedCell;return i!==c&&t.push(zo(ve({bcName:s,cursor:i}))),d&&n===d.fieldKey&&i===d.rowId&&(null==l?void 0:l.name)===d.widgetName||t.push(zo(Ie({widgetName:null==l?void 0:l.name,rowId:i,fieldKey:n}))),Go(...t)})));import{concat as Xo,filter as Zo,mergeMap as et,of as at}from"rxjs";import{OperationTypeCrud as ot}from"@cxbox-ui/schema";var tt=(e,a)=>e.pipe(Zo(U.match),Zo((e=>lo(ot.fileUpload,e.payload,a.value))),et((e=>Xo(at(G({cursorsMap:{[e.payload.bcName]:null}})),at(Z({widgetName:e.payload.widgetName}))))));import{filter as rt,map as it}from"rxjs";import{OperationTypeCrud as nt}from"@cxbox-ui/schema";var lt=(e,a)=>e.pipe(rt(U.match),rt((e=>lo(nt.associate,e.payload,a.value))),it((e=>X({bcName:e.payload.bcKey?`${e.payload.bcKey}`:`${e.payload.bcName}Assoc`,calleeBCName:e.payload.bcName,active:!0,calleeWidgetName:e.payload.widgetName}))));import{EMPTY as st,concat as ct,filter as dt,mergeMap as pt,of as ut,catchError as mt}from"rxjs";import{WidgetTypes as vt}from"@cxbox-ui/schema";import{nanoid as ft}from"@reduxjs/toolkit";var bt=(e,a,{api:o})=>e.pipe(dt(H.match),pt((e=>{var t,r,i,n;const c=a.value,d=c.view.url,{bcName:p,cursor:u,disableRetry:m}=e.payload;if(c.view.widgets.some((e=>{var a,o;return e.bcName===p&&e.type===vt.AssocListPopup&&((null==(a=e.options)?void 0:a.hierarchySameBc)||(null==(o=e.options)?void 0:o.hierarchyFull))})))return st;const v=c.view.widgets.find((e=>{var a;return e.name===(null==(a=c.view.popupData)?void 0:a.widgetName)&&[vt.PickListPopup,vt.FlatTreePopup].includes(e.type)})),f=qa(p,!0,c),b=c.view.pendingDataChanges[p][u],h=(null==(t=c.view.handledForceActive[p])?void 0:t[u])||{},y=null==(r=c.data[p])?void 0:r.find((e=>e.id===u)),g=null==(n=null==(i=c.view.rowMeta[p])?void 0:i[f])?void 0:n.fields;let N=null;const w=ct(ut(ee(null)),ut(oe(null)),ut(Oe({bcName:p}))),C=null==g?void 0:g.filter((e=>e.forceActive&&void 0!==b[e.key])).some((e=>{const a=b[e.key]!==h[e.key];return a&&(N=e.key),a})),E=ft();return C&&!m?ct(ut(Xe({request:{requestId:E,type:"force-active"}})),o.getRmByForceActive(c.screen.screenName,f,s(l({},b),{vstamp:null==y?void 0:y.vstamp})).pipe(pt((e=>{const a=[ut(Ze({requestId:E}))];return c.view.url===d&&a.push(ut(Q({rowMeta:e,currentRecordData:y,bcName:p,bcUrl:f,cursor:u}))),v&&a.push(w),ct(...a)})),mt((e=>{var a,o,t,r,i,n;console.error(e);let l=null,s=null;const m=null==(a=e.response)?void 0:a.data;return(null==(o=e.response)?void 0:o.data)===Object(null==(t=e.response)?void 0:t.data)&&(s=null==(r=null==m?void 0:m.error)?void 0:r.entity,l=null==(n=null==(i=null==m?void 0:m.error)?void 0:i.popup)?void 0:n[0]),ct(ut(Ze({requestId:E})),c.view.url===d?ct(ut(H({bcName:p,bcUrl:qa(p,!0,c),cursor:u,dataItem:{[N]:null==y?void 0:y[N]},disableRetry:!0})),ut(V({bcName:p,bcUrl:f,viewError:l,entityError:s}))):st)})))):v?w:st})));import{concat as ht,filter as yt,mergeMap as gt,of as Nt}from"rxjs";var wt=(e,a)=>e.pipe(yt(ke.match),gt((e=>{const o=[],{bcName:t,cursor:r}=e.payload,i=a.value.router;o.push(Nt(G({cursorsMap:{[t]:null}})));const n=i.bcPath.slice(0,i.bcPath.indexOf(`${t}/${r}`)),c=eo(s(l({},i),{bcPath:n}));return o.push(Nt(ce({bcName:t}))),o.push(Nt(v({location:Za(new URL(c,window.location.origin))}))),ht(...o)})));import{EMPTY as Ct,filter as Et,mergeMap as Dt,of as Ft}from"rxjs";var Mt=(e,a)=>e.pipe(Et(G.match),Dt((e=>{const o=a.value,t=Qa(o.router.bcPath)||{},r={};return Object.entries(t).forEach((e=>{const[a,t]=e,i=o.screen.bo.bc[a];i&&(null==i?void 0:i.cursor)===t||(r[a]=t)})),Object.keys(r).length?Ft(G({cursorsMap:r})):Ct})));import{concat as It,EMPTY as kt,filter as xt,switchMap as jt}from"rxjs";var Tt=(e,a)=>e.pipe(xt(Y.match),jt((e=>{var o,t;const r=a.value,i=e.payload.url,n=[];switch(e.payload.drillDownType){case da.external:window.location.href=i;break;case da.externalNew:/^[a-z0-9]+:\/\//i.test(i)&&window.open(i);break;case da.relative:window.location.href=`${window.location.origin}/${i}`;break;case da.relativeNew:window.open(`${window.location.origin}/${i}`,"_blank");break;default:const[e]=i.split("?"),a=new URL(i,window.location.origin),c=a.searchParams.get("filters"),d=a.searchParams.get("sorters");let p={},u={};try{p=null!=(o=JSON.parse(c))?o:p}catch(e){c&&console.warn("Failed to parse filters on drilldown"),p={}}try{u=null!=(t=JSON.parse(d))?t:u}catch(e){d&&console.warn("Failed to parse sorters on drilldown"),u={}}const m={};Object.keys(r.screen.filters).forEach((e=>{(""===p[e]||p[e])&&(m[e]=!0,n.push(Oe({bcName:e})))}));const f=Za(a),b=f.viewName;Object.entries(p).forEach((([e,a])=>{var o;const t=null==(o=to(a))?void 0:o.map((e=>s(l({},e),{viewName:b})));null==t||t.forEach((a=>{m[e]=!0,n.push(Te({bcName:e,filter:a}))}))})),Object.entries(u).forEach((([e,a])=>{const o=ro(a);n.push(Pe({bcName:e,sorter:o})),m[e]=!0})),function(e,a,o=[]){const t=[];if(!e&&!a)return null;if(!e)return Object.keys(a);if(!a)return Object.keys(e);const r=Object.keys(a);return r.forEach((r=>{e[r]===a[r]||o.includes(r)||t.push(r)})),Object.keys(e).forEach((e=>{r.includes(e)||t.push(e)})),t}(r.router,f,["params"]).length>0||Object.keys(m).forEach((e=>{n.push(ce({bcName:e}))})),n.push(v({location:Za(new URL(za(e),window.location.origin))}))}return n.length?It(n):kt})));import{filter as At,of as Ot,switchMap as Pt}from"rxjs";var St=(e,a)=>e.pipe(At(b.match),Pt((e=>{const o=a.value;if("router"===o.router.type)return Ot(Fe(o.router));const t=o.router.screenName,r=o.session.screens.find((e=>t?e.name===t:e.defaultScreen))||o.session.screens[0];return Ot(r?N({screen:r}):w({screenName:t}))})));import{EMPTY as Rt,filter as Vt,of as Ut,switchMap as $t}from"rxjs";var Bt=(e,a)=>e.pipe(Vt(C.match),$t((e=>{const o=a.value,t=Qa(o.router.bcPath)||{},r={};return Object.entries(t).forEach((e=>{const[a,t]=e,i=o.screen.bo.bc[a];i&&i.cursor===t||(r[a]=t)})),Object.keys(r).length?Ut(G({cursorsMap:r})):Rt})));import{catchError as _t,EMPTY as qt,filter as Kt,mergeMap as Lt,switchMap as Wt}from"rxjs";var Yt=(e,a,{api:o})=>e.pipe(Kt(Fe.match),Wt((e=>o.routerRequest(e.payload.path,e.payload.params).pipe(Lt((()=>qt)),_t((e=>(console.error(e),qt)))))));import{filter as Gt,of as Jt,switchMap as Ht}from"rxjs";var zt=(e,a)=>e.pipe(Gt(N.match),Ht((e=>{const o=a.value,t=o.router.viewName,r=o.screen.views.find((e=>e.name===t)),i=!t&&o.screen.primaryView&&o.screen.views.find((e=>e.name===o.screen.primaryView)),n=r||i||o.screen.views[0];return Jt(n?C(n):E({viewName:t}))})));import{catchError as Qt,concat as Xt,EMPTY as Zt,filter as er,mergeMap as ar,of as or,switchMap as tr}from"rxjs";var rr=(e,a,{api:o})=>e.pipe(er(L.match),tr((e=>{const t=a.value,{bcName:r,fieldKey:i,cursor:n}=e.payload,l=qa(r,!0,t);return o.fetchRowMeta(t.screen.screenName,l).pipe(ar((e=>{var a,o,s,c;const d=e.fields.find((e=>e.key===i)),p=t.router,u=null==(o=null==(a=t.view.widgets.find((e=>e.bcName===r)))?void 0:a.fields.find((e=>e.key===i)))?void 0:o.drillDownKey,m=null==(c=null==(s=t.data[r])?void 0:s.find((e=>e.id===n)))?void 0:c[u];return m||(null==d?void 0:d.drillDown)||(null==d?void 0:d.drillDown)!==p.path?Xt((null==d?void 0:d.drillDownType)!==da.inner?or(T({bcName:r,rowMeta:e,bcUrl:l,cursor:n})):Zt,or(W({bcName:r,bcUrl:l,cursor:n})),or(Y({url:m||d.drillDown,drillDownType:d.drillDownType,route:p}))):Zt})),Qt((e=>(console.error(e),Zt))))})));import{concat as ir,EMPTY as nr,filter as lr,mergeMap as sr,of as cr}from"rxjs";var dr=(e,a)=>e.pipe(lr(v.match),sr((e=>{var o,t;const r=a.value;if(!r.session.active)return nr;if("router"===r.router.type)return cr(Fe(r.router));const i=r.screen.screenName,n=(null==(o=r.session.screens.find((e=>e.defaultScreen)))?void 0:o.name)||(null==(t=r.session.screens[0])?void 0:t.name),l="default"===r.router.type?n:r.router.screenName;if(l!==i){const e=r.session.screens.find((e=>e.name===l));return cr(e?N({screen:e}):w({screenName:l}))}const s=r.view.name,c=r.router.viewName,d=Qa(r.router.bcPath)||{},p={};Object.entries(d).forEach((e=>{const[a,o]=e,t=r.screen.bo.bc[a];t&&(null==t?void 0:t.cursor)===o||(p[a]=o)}));const u=Object.keys(p).length,m=c!==s,v=[];if(u&&v.push(cr(G({cursorsMap:p}))),m){const e=c?r.screen.views.find((e=>e.name===c)):r.screen.primaryView?r.screen.views.find((e=>e.name===r.screen.primaryView)):r.screen.views[0];v.push(cr(e?C(e):E({viewName:c})))}return u&&!m&&Object.entries(d).forEach((e=>{const[a,o]=e;r.data[a].find((e=>e.id===o))||v.push(cr(ce({bcName:a})))})),ir(...v)})));import{filter as pr,map as ur}from"rxjs";var mr=(e,a)=>e.pipe(pr(E.match),ur((e=>ea({type:"error",key:"selectViewFail",message:`View is missing or unavailable for your role', ${e.payload.viewName}`,duration:15}))));import{filter as vr,map as fr}from"rxjs";var br=e=>e.pipe(vr(w.match),fr((e=>ea({type:"error",key:"selectScreenFail",message:`Screen is missing or unavailable for your role', ${e.payload.screenName}}`,duration:15}))));import{filter as hr,map as yr}from"rxjs";var gr=(e,a)=>e.pipe(hr(L.match),yr((e=>{var o;const t=a.value,r=t.view.widgets.find((a=>a.name===e.payload.widgetName));return(null==(o=t.screen.bo.bc[null==r?void 0:r.bcName])?void 0:o.cursor)!==e.payload.cursor?G({cursorsMap:{[e.payload.bcName]:e.payload.cursor}}):Je})));import Nr from"axios";import{EMPTY as wr,filter as Cr,mergeMap as Er,of as Dr}from"rxjs";var Fr=e=>e.pipe(Cr(Le.match),Er((e=>{const{error:a,callContext:o}=e.payload;return a.response?Dr(We({statusCode:a.response.status,error:a,callContext:o})):Nr.isCancel(a)?wr:Dr(Ve({error:{type:2}}))})));import{EMPTY as Mr,filter as Ir,mergeMap as kr,tap as xr}from"rxjs";var jr=(e,a,{api:o})=>e.pipe(Ir(_e.match),xr((e=>{const{fileId:a}=e.payload,t=document.createElement("a");t.href=`${o.fileUploadEndpoint}?id=${encodeURIComponent(a)}`,t.style.display="none",document.body.appendChild(t),setTimeout((()=>{t.click(),document.body.removeChild(t)}),100)})),kr((()=>Mr)));import{filter as Tr,map as Ar}from"rxjs";var Or=e=>e.pipe(Tr(We.match),Tr((e=>401===e.payload.statusCode)),Ar((e=>g(null))));import{filter as Pr,map as Sr}from"rxjs";var Rr=(e,a)=>e.pipe(Pr(We.match),Pr((e=>409===e.payload.statusCode)),Sr((e=>{var a,o,t;const r=(null==(t=null==(o=(null==(a=e.payload.error.response)?void 0:a.data).error)?void 0:o.popup)?void 0:t[0])||"";return ea({key:"action_edit_error",message:r,type:"buttonWarningNotification",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"OK"}}})})));import{concat as Vr,EMPTY as Ur,filter as $r,mergeMap as Br,of as _r}from"rxjs";var qr=(e,a)=>e.pipe($r(We.match),$r((e=>418===e.payload.statusCode)),Br((e=>{var o,t;const{error:r,callContext:i}=e.payload,n=[],l=null==(o=r.response)?void 0:o.data;if(!l.error.popup)return Ur;if(n.push(_r(Ve({error:{type:0,message:l.error.popup[0]}}))),null==(t=l.error.postActions)?void 0:t[0]){const e=a.value.view.widgets.find((e=>e.name===i.widgetName));n.push(_r(_({bcName:null==e?void 0:e.bcName,postInvoke:l.error.postActions[0],widgetName:null==e?void 0:e.name})))}return Vr(...n)})));import{filter as Kr,map as Lr}from"rxjs";var Wr=(e,a)=>e.pipe(Kr(We.match),Kr((e=>500===e.payload.statusCode)),Lr((e=>{var a;const o={type:1,details:(null==(a=e.payload.error.response)?void 0:a.statusText)||"",error:e.payload.error};return Ve({error:o})})));import{filter as Yr,map as Gr}from"rxjs";var Jr=[401,409,418,500],Hr=(e,a)=>e.pipe(Yr(We.match),Yr((e=>!Jr.includes(e.payload.statusCode))),Gr((e=>{var a,o;const t={type:0,code:null==(a=e.payload.error.response)?void 0:a.status,details:null==(o=e.payload.error.response)?void 0:o.data};return Ve({error:t})})));import{EMPTY as zr,filter as Qr,mergeMap as Xr,tap as Zr}from"rxjs";var ei=(e,a)=>e.pipe(Qr(qe.match),Zr((e=>{const{url:a}=e.payload,o=document.createElement("a");o.href=a,o.style.display="none",document.body.appendChild(o),setTimeout((()=>{o.click(),document.body.removeChild(o)}),100)})),Xr((()=>zr)));import{EMPTY as ai,filter as oi,mergeMap as ti,of as ri}from"rxjs";var ii=(e,a)=>e.pipe(oi(_.match),ti((e=>{var o;const t=a.value;switch(e.payload.postInvoke.type){case"drillDown":return ri(Y(s(l({},e.payload.postInvoke),{route:t.router,widgetName:e.payload.widgetName})));case"postDelete":{const a=[G({cursorsMap:{[e.payload.bcName]:null}})];if(null==(o=t.router.bcPath)?void 0:o.includes(`${e.payload.bcName}/`)){const o=t.router.bcPath.split(e.payload.bcName)[0]||"";a.push(v({location:Za(new URL(`/screen/${t.router.screenName}/view/${t.router.viewName}/${o}`,window.location.origin))}))}else a.push(D({bcName:e.payload.bcName,widgetName:e.payload.widgetName}));return ri(...a)}case"refreshBC":{const a=e.payload.postInvoke,o=a.bc,r=t.screen.bo.bc[a.bc],i=e.payload.widgetName||"",n=t.view.infiniteWidgets||[],l=t.view.widgets.some((e=>e.bcName===o&&n.includes(e.name)));return ri(l?F({bcName:r.name,widgetName:i,from:1,to:r.page}):D({bcName:r.name,widgetName:i}))}case"showMessage":{const a=e.payload.postInvoke;return ri(xe({type:a.messageType,message:a.messageText}))}case"downloadFile":return ri(_e({fileId:e.payload.postInvoke.fileId}));case"downloadFileByUrl":return ri(qe({url:e.payload.postInvoke.url}));default:return ai}})));import{EMPTY as ni,filter as li,mergeMap as si,of as ci}from"rxjs";import{isAnyOf as di}from"@reduxjs/toolkit";var pi=(e,a)=>e.pipe(li(di(K,q)),si((e=>{const{bcName:a,operationType:o,widgetName:t}=e.payload,r=K.match(e)?e.payload.postInvokeConfirm:e.payload.preInvoke;switch(r.type){case"confirm":case"info":case"error":case"confirmText":return ci(se({operation:{bcName:a,operationType:o,widgetName:t},confirmOperation:r}));default:return ni}})));import{concat as ui,filter as mi,switchMap as vi}from"rxjs";var fi=(e,a)=>e.pipe(mi(Qe.match),vi((e=>ui([g(null),f({login:"",password:"",role:e.payload.role})]))));import{catchError as bi,concat as hi,filter as yi,mergeMap as gi,of as Ni,switchMap as wi}from"rxjs";var Ci=(e,a,{api:o})=>e.pipe(yi(He.match),gi((()=>{const e=a.value,{router:t}=e,{activeRole:r}=e.session;return o.refreshMeta().pipe(wi((()=>hi([g(null),f({login:"",password:"",role:r}),v({location:t})]))),bi((e=>Ni(h(e)))))})));import{EMPTY as Ei,filter as Di,switchMap as Fi}from"rxjs";var Mi=(e,a)=>e.pipe(Di(f.match),Fi((e=>Ei)));import{catchError as Ii,concat as ki,filter as xi,mergeMap as ji,of as Ti,switchMap as Ai}from"rxjs";var Oi={401:"Invalid credentials",403:"Access denied"},Pi=(e,a,{api:o})=>e.pipe(xi(f.match),xi((e=>{var a;return!!(null==(a=e.payload)?void 0:a.role)})),Ai((e=>{var t;const r=null!=(t=e.payload.role)?t:"",i=r&&r!==a.value.session.activeRole;return o.loginByRoleRequest(r).pipe(ji((e=>{var a;const o=[];if(i){const t=e.screens.find((e=>e.defaultScreen))||e.screens[0],r=null!=(a=null==t?void 0:t.primary)?a:t.meta.views[0].name,i=null==t?void 0:t.meta.views.find((e=>r===e.name));i&&o.push(v({location:Za(new URL(i.url,window.location.origin))}))}return ki([...o,b({devPanelEnabled:e.devPanelEnabled,activeRole:e.activeRole,roles:e.roles,screens:e.screens,firstName:e.firstName,lastName:e.lastName,login:e.login})])})),Ii((e=>(console.error(e),Ti(h({errorMsg:e.response?Oi[e.response.status]||"Server application unavailable":"Empty server response"}))))))})));import{concat as Si,EMPTY as Ri,filter as Vi,of as Ui,switchMap as $i,take as Bi,tap as _i}from"rxjs";var qi=(e,a)=>e.pipe(Vi(ze.match),$i((()=>Si(Ui(He(null)),e.pipe(Vi(b.match),Bi(1),_i((()=>location.reload())),$i((()=>Ri)))))));import{catchError as Ki,concat as Li,EMPTY as Wi,filter as Yi,mergeMap as Gi,of as Ji}from"rxjs";import{OperationTypeCrud as Hi}from"@cxbox-ui/schema";var zi=(e,a,{api:o})=>e.pipe(Yi(U.match),Yi((e=>lo(Hi.create,e.payload,a.value))),Gi((e=>{var t;const r=a.value,i=e.payload.bcName,n=null!=(t=qa(i,!1,r))?t:"";return o.newBcData(r.screen.screenName,n,{widgetName:e.payload.widgetName},{_action:e.payload.operationType}).pipe(Gi((a=>{var o,t;const l=a.row,s={id:null,vstamp:-1};a.row.fields.forEach((e=>{s[e.key]=e.currentValue}));const c=null==(o=a.postActions)?void 0:o[0],d=s.id;return Li(Ji(P({bcName:i,dataItem:s,bcUrl:n})),Ji(T({bcName:i,bcUrl:`${n}/${d}`,rowMeta:l,cursor:d})),Ji(H({bcName:i,bcUrl:null!=(t=qa(i,!0,r))?t:"",cursor:d,dataItem:{id:d}})),c?Ji(_({bcName:i,postInvoke:c,cursor:d,widgetName:e.payload.widgetName})):Wi)})),Ki((e=>(console.error(e),Ji(S({bcName:i}))))))})));import{catchError as Qi,filter as Xi,mergeMap as Zi,of as en,race as an}from"rxjs";import{filter as on,mergeMap as tn,of as rn,take as nn}from"rxjs";import{isAnyOf as ln}from"@reduxjs/toolkit";var sn=[C,y];function cn(e,a,o,t,r=(e=>!0)){return e.pipe(on(ln(...a)),on(r),tn((()=>(null==o||o(),rn(t)))),nn(1))}var dn=(e,a,{api:o})=>e.pipe(Xi(x.match),Zi((t=>{var r,i;const n=a.value,s=t.payload.bcName,c=n.screen.bo.bc[s],{cursor:d,page:p}=c,u=(null==(r=n.view.widgets.find((e=>e.bcName===s)))?void 0:r.limit)||c.limit,m=null==(i=n.router.bcPath)?void 0:i.includes(`${s}/${d}`),v=qa(s,m,n),f=n.screen.sorters[s],b=l(l({_page:p,_limit:u},ao(n.screen.filters[s]||[])),oo(f)),h=o.createCanceler(),y=cn(e,sn,h.cancel,k({bcName:s,bcUrl:v})),g=o.fetchBcData(n.screen.screenName,v,b,h.cancelToken).pipe(Zi((e=>{var a;const o=null==(a=n.data[s])?void 0:a.map((e=>e.id)),t=[...n.data[s],...e.data.filter((e=>!o.includes(e.id)))];return en(I({bcName:s,data:t,bcUrl:v,hasNext:e.hasNext}))})),Qi((e=>(console.error(e),en(k({bcName:s,bcUrl:v}))))));return an(y,g)})));import{catchError as pn,concat as un,EMPTY as mn,filter as vn,mergeMap as fn,of as bn}from"rxjs";var hn=(e,a,{api:o})=>e.pipe(vn(U.match),vn((e=>lo(Da.save,e.payload,a.value))),fn((e=>{var t,r,i,n;const c=a.value,d=e.payload.bcName,p=null!=(t=qa(d,!0,c))?t:"",u=e.payload.widgetName,m=c.screen.bo.bc[d].cursor,v=c.data[d].find((e=>e.id===m)),f=l({},null==(r=c.view.pendingDataChanges[d])?void 0:r[m]),b=p&&(null==(i=c.view.rowMeta[d])?void 0:i[p]),h=null==(n=c.view.widgets.find((e=>e.name===u)))?void 0:n.options;if(b){const e=b.fields;for(const a in f)e.find((e=>e.key===a&&e.disabled))&&delete f[a]}const y=Object.entries(so(d,c.view.widgets,c.screen.bo.bc)).map((e=>{const[a,o]=e;return D({bcName:a,widgetName:o[0]})})),g={widgetName:e.payload.widgetName};return o.saveBcData(c.screen.screenName,p,s(l({},f),{vstamp:null==v?void 0:v.vstamp}),g).pipe(fn((a=>{var o;const t=null==(o=a.postActions)?void 0:o[0],r=a.record;return un(bn(ne({bcName:d,cursor:m,dataItem:r})),bn(j({widgetName:u,bcName:d})),bn(...y),t?bn(_({bcName:d,widgetName:u,postInvoke:t,cursor:r.id})):mn,e.payload.onSuccessAction?bn(e.payload.onSuccessAction):mn)})),pn((a=>{var o,t,r,i,n,l,s,c;console.error(a);let u=mn;e.payload.onSuccessAction&&!(null==h?void 0:h.disableNotification)&&(u=bn(ea({key:"data_autosave_undo",type:"buttonWarningNotification",message:"There are pending changes. Please save them or cancel.",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"Cancel changes",actionsForClick:[me({bcNames:[d]})]}}})));let m=null,v=null;const f=null==(o=a.response)?void 0:o.data;return(null==(t=a.response)?void 0:t.data)===Object(null==(r=a.response)?void 0:r.data)&&(v=null!=(n=null==(i=null==f?void 0:f.error)?void 0:i.entity)?n:v,m=null!=(c=null==(s=null==(l=null==f?void 0:f.error)?void 0:l.popup)?void 0:s[0])?c:m),un(bn(le({bcName:d,bcUrl:p,viewError:m,entityError:v})),u)})))})));import{EMPTY as yn,filter as gn,mergeMap as Nn}from"rxjs";var wn=(e,a)=>e.pipe(gn(C.match),Nn((e=>{try{const e=a.value,o={};return e.view.widgets.filter((e=>!ga.includes(e.type))).forEach((a=>{if(a.bcName){let t=a.bcName,r=e.screen.bo.bc[a.bcName].parentName;for(;r;)t=r,r=e.screen.bo.bc[r].parentName;o[t]||(o[t]=a)}})),Object.entries(o).map((([e,a])=>D({widgetName:a.name,bcName:e})))}catch(e){return console.error(`selectView Epic:: ${e}`),yn}})));import{catchError as Cn,concat as En,EMPTY as Dn,filter as Fn,mergeMap as Mn,of as In,race as kn}from"rxjs";import{WidgetTypes as xn}from"@cxbox-ui/schema";import{isAnyOf as jn}from"@reduxjs/toolkit";var Tn=(e,a,{api:o})=>e.pipe(Fn(jn(D,F,X,ce,Re)),Mn((t=>kn(...(()=>{var r,i,n,s,c,d,p,u;const m=a.value,{widgetName:v=""}=t.payload,{widgets:f,infiniteWidgets:b}=m.view,h=null!=(r=null==f?void 0:f.find((e=>e.name===v)))?r:null==f?void 0:f.find((e=>e.bcName===t.payload.bcName));if(!h)return[Dn];const y=t.payload.bcName,g=m.screen.bo.bc[y],{cursor:N,page:w=1}=g,C=null!=(n=(null==(i=null==f?void 0:f.find((e=>e.bcName===y)))?void 0:i.limit)||g.limit)?n:5,E=m.screen.sorters[y];if(X.match(t)&&y===t.payload.calleeBCName)return[Dn];const M=null==f?void 0:f.find((e=>e.bcName===h.bcName&&e.type===xn.AssocListPopup&&function(e){var a,o;return(null==(a=e.options)?void 0:a.hierarchy)||(null==(o=e.options)?void 0:o.hierarchyFull)}(e))),x=null==(s=m.view.widgets)?void 0:s.find((e=>{var a;return e.bcName===h.bcName&&e.type===xn.AssocListPopup&&(null==(a=e.options)?void 0:a.hierarchyFull)})),T=null==(c=m.router.bcPath)?void 0:c.includes(`${y}/${N}`),A=qa(y,T,m),O=l(l({_page:w,_limit:C},ao(x?[]:m.screen.filters[y]||[])),oo(E));ce.match(t)&&(v&&(null==b?void 0:b.includes(v))||(null==(p=null==(d=null==f?void 0:f.filter((e=>e.bcName===y)))?void 0:d.find((e=>null==b?void 0:b.includes(e.name))))?void 0:p.name))&&(O._page=1,O._limit=C*w),F.match(t)&&(O._page=t.payload.from||1,O._limit=(t.payload.to||w-O._page)*C),(D.match(t)&&t.payload.ignorePageLimit||(null==(u=null==M?void 0:M.options)?void 0:u.hierarchyFull))&&(O._limit=0);const P=o.createCanceler(),S=cn(e,sn,P.cancel,k({bcName:y,bcUrl:A})),R=cn(e,[ve],P.cancel,k({bcName:y,bcUrl:A}),(e=>g.parentName===e.payload.bcName)),V=o.fetchBcData(m.screen.screenName,A,O,P.cancelToken).pipe(Mn((e=>{var a,o;const r=((e,a,o)=>{var r;const{bcName:i}=t.payload,n=D.match(t)?t.payload.keepDelta:void 0,l=null==(r=e[0])?void 0:r.id;return In(G({cursorsMap:{[i]:e.some((e=>e.id===a))?a:l},keepDelta:o||n}))})(e.data,N,!!M),i=null==f?void 0:f.some((e=>{var a;return(null==(a=m.screen.bo.bc[e.bcName])?void 0:a.parentName)===y&&!ga.includes(e.type)})),n=a=>{var o,t,r,i,n,l,s,c,d;if((null==(o=a.showCondition)?void 0:o.bcName)===(null==(t=m.screen.bo.bc[a.bcName])?void 0:t.parentName)){let e=null==(i=m.screen.bo.bc[null==(r=a.showCondition)?void 0:r.bcName])?void 0:i.parentName,o=e===y;for(;!o&&e;)e=null==(n=m.screen.bo.bc[e])?void 0:n.parentName,o=e===y;if(o)return!0}const p=y===(null==(l=a.showCondition)?void 0:l.bcName)?e.data:m.data[null==(s=a.showCondition)?void 0:s.bcName];return co(a.showCondition,null==(d=m.screen.bo.bc[null==(c=a.showCondition)?void 0:c.bcName])?void 0:d.cursor,p,m.view.pendingDataChanges)},l=(!n(h)||ga.includes(h.type))&&!i,s=(null==(a=m.view.popupData)?void 0:a.bcName)!==h.bcName;if(l&&s)return Dn;const c=(null==(o=e.data)?void 0:o.length)?((e,a,o,r)=>{const{bcName:i}=t.payload,{ignorePageLimit:n,keepDelta:l}=D.match(t)?t.payload:{ignorePageLimit:void 0,keepDelta:void 0};return En(...Object.entries(so(i,e,a)).filter((([a,o])=>{const i=e.find((e=>o.includes(e.name)&&!ga.includes(e.type)&&r(e)));return!!X.match(t)||!!i})).map((([a,i])=>{const s=e.find((e=>i.includes(e.name)&&!ga.includes(e.type)&&r(e)));return In(D({bcName:a,widgetName:null==s?void 0:s.name,ignorePageLimit:n||X.match(t),keepDelta:o||l}))})))})(f,m.screen.bo.bc,!!M,n):Dn,d=In(j({widgetName:v,bcName:y}));return En(r,In(I({bcName:y,data:e.data,bcUrl:A,hasNext:e.hasNext})),d,c)})),Cn((e=>(console.error(e),In(k({bcName:t.payload.bcName,bcUrl:A}))))));return[S,R,V]})()))));import{catchError as An,concat as On,EMPTY as Pn,filter as Sn,mergeMap as Rn,of as Vn}from"rxjs";import{OperationTypeCrud as Un}from"@cxbox-ui/schema";var $n=(e,a,{api:o})=>e.pipe(Sn(U.match),Sn((e=>lo(Un.delete,e.payload,a.value))),Rn((e=>{const t=e.payload.widgetName,r=a.value,i=e.payload.bcName,n=r.screen.bo.bc[i].cursor,l=qa(i,!0,r),s="target"===r.view.pendingValidationFailsFormat;return o.deleteBcData(r.screen.screenName,l,{widgetName:e.payload.widgetName}).pipe(Rn((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return On(s?Vn(me({bcNames:[i]})):Pn,Vn(D({bcName:i,widgetName:t})),o?Vn(_({bcName:i,postInvoke:o,cursor:n,widgetName:t})):Pn)})),An((e=>(console.error(e),Vn(R({bcName:i}))))))})));import{concat as Bn,filter as _n,mergeMap as qn,of as Kn}from"rxjs";var Ln=(e,a)=>e.pipe(_n(ve.match),qn((e=>{const{bcName:o,cursor:t}=e.payload,r=Object.entries(so(o,a.value.view.widgets,a.value.screen.bo.bc)).map((a=>{const[o,t]=a;return D({bcName:o,widgetName:t[0],ignorePageLimit:e.payload.ignoreChildrenPageLimit,keepDelta:e.payload.keepDelta})}));return Bn(Kn(G({cursorsMap:{[o]:t},keepDelta:e.payload.keepDelta})),Kn(j({widgetName:"",bcName:o})),r)})));import{concat as Wn,filter as Yn,mergeMap as Gn,of as Jn}from"rxjs";var Hn=(e,a)=>e.pipe(Yn(be.match),Gn((e=>{var o,t,r,i,n;const c=a.value,d=e.payload.dataItem._associate,p=e.payload.bcName,u=[Jn(H({bcName:p,bcUrl:qa(p,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],m=c.view.widgets.find((a=>a.name===e.payload.widgetName)),v=e.payload.bcName===m.bcName,f={bcName:m.bcName,radio:null==(o=m.options)?void 0:o.hierarchyRadio,fields:m.fields},b=null==(t=m.options)?void 0:t.hierarchy,h=v?f:null==b?void 0:b.find((a=>a.bcName===e.payload.bcName)),y=null==(r=m.options)?void 0:r.hierarchyGroupSelection,g=null==(i=m.options)?void 0:i.hierarchyTraverse,N=null==b?void 0:b.slice(b.findIndex((a=>a.bcName===e.payload.bcName))+1).map((e=>e.bcName));y&&h.radio&&!d&&u.push(Jn(Ce({bcNames:N})));const w=v?null:(null==b?void 0:b.find(((a,o)=>{var t;return(null==(t=b[o+1])?void 0:t.bcName)===e.payload.bcName})))||f,C=null==(n=c.data[null==w?void 0:w.bcName])?void 0:n.find((e=>e.id===c.screen.bo.bc[null==w?void 0:w.bcName].cursor));if(w&&g&&d&&(h.radio&&u.push(Jn(Ce({bcNames:[w.bcName]}))),u.push(Jn(be({bcName:w.bcName,widgetName:e.payload.widgetName,dataItem:s(l({},C),{_associate:!0,_value:null==C?void 0:C[w.assocValueKey||e.payload.assocValueKey]}),assocValueKey:e.payload.assocValueKey})))),w&&g&&!d){const a=c.data[e.payload.bcName],o=a.filter((a=>a.id!==e.payload.dataItem.id)).every((e=>!e._associate)),t=c.view.pendingDataChanges[e.payload.bcName],r=!t||!Object.values(t).find((o=>!0===o._associate&&o.id!==e.payload.dataItem.id&&a.find((e=>e.id===o.id))));o&&r&&u.push(Jn(be({bcName:w.bcName,widgetName:e.payload.widgetName,dataItem:s(l({},C),{_associate:!1}),assocValueKey:e.payload.assocValueKey})))}return Wn(...u)})));import{catchError as zn,concat as Qn,EMPTY as Xn,filter as Zn,mergeMap as el,of as al}from"rxjs";import{OperationTypeCrud as ol}from"@cxbox-ui/schema";import{isAnyOf as tl}from"@reduxjs/toolkit";var rl=tl(U),il=(e,a,{api:o})=>e.pipe(Zn(rl),Zn((e=>lo(ol.cancelCreate,e.payload,a.value))),el((e=>{var t,r;const i=a.value,n=i.screen.screenName,c=e.payload.bcName,d=qa(c,!0,i),p=i.screen.bo.bc[c],u=null==p?void 0:p.cursor,m={widgetName:e.payload.widgetName},v=null==(t=i.data[c])?void 0:t.find((e=>e.id===p.cursor)),f=null==(r=i.view.pendingDataChanges[c])?void 0:r[p.cursor],b=v&&s(l({},f),{vstamp:v.vstamp}),h={[e.payload.bcName]:null};return o.customAction(n,d,b,m,{_action:e.payload.operationType}).pipe(el((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return Qn(al(B({bcName:c,cursor:u})),al(G({cursorsMap:h})),o?al(_({bcName:c,postInvoke:o,cursor:u,widgetName:m.widgetName})):Xn)})),zn((e=>(console.error(e),al(R({bcName:c}))))))})));import{concat as nl,filter as ll,mergeMap as sl,of as cl}from"rxjs";var dl=e=>e.pipe(ll(fe.match),sl((e=>{const{bcName:a,cursor:o,depth:t}=e.payload;return nl(cl(J({bcName:a,depth:t,cursor:o})),cl(D({bcName:a,depth:t+1,widgetName:"",ignorePageLimit:!0})))})));import{concat as pl,filter as ul,mergeMap as ml,of as vl}from"rxjs";var fl=(e,a)=>e.pipe(ul(ie.match),ml((e=>{var o,t,r,i,n,c,d,p,u,m;const v=a.value,{bcName:f,cursor:b,popupBcName:h,associateFieldKey:y}=e.payload,g=v.view.widgets.find((e=>e.bcName===h&&ga.includes(e.type)));let N=((null==v?void 0:v.data[h])||[]).map((e=>{var a;const o=null==(a=v.view.pendingDataChanges[h])?void 0:a[e.id];return l(l({},e),o)}));const w=N.find((a=>a.id===e.payload.removedItem.id)),C=e.payload.dataItem.map((e=>e.id));let E=[];if(null==(o=null==g?void 0:g.options)?void 0:o.hierarchyGroupDeselection){(null==(t=null==g?void 0:g.options)?void 0:t.hierarchyTraverse)&&(N=po(N));const a=N.filter((e=>e.parentId===(null==w?void 0:w.id)));E=[null==w?void 0:w.id,...a.filter((e=>C.includes(e.id))).map((e=>e.id))],(null==(r=null==g?void 0:g.options)?void 0:r.hierarchyTraverse)&&(uo(a,E),E=N.filter((e=>E.includes(e.id)&&C.includes(e.id))).map((e=>e.id)));const o=N.find((e=>e.id===(null==w?void 0:w.parentId))),n=N.filter((e=>e.parentId===(null==o?void 0:o.id))),c=n.every((e=>E.includes(e.id)||!C.includes(e.id)));if(o&&c)if(null==(i=null==g?void 0:g.options)?void 0:i.hierarchyTraverse){const a=[];if(uo(n,a),a.every((e=>E.includes(e)||!C.includes(e))))return pl(vl(ie(s(l({},e.payload),{removedItem:{id:o.id,value:null}}))))}else E.push(o.id)}if(null==(n=null==g?void 0:g.options)?void 0:n.hierarchyFull)return vl(H({bcName:f,bcUrl:qa(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem.filter((e=>!E.includes(e.id)))}}));if(null==(c=null==g?void 0:g.options)?void 0:c.hierarchy){const a=null!=(m=null==(u=null==(p=null==(d=null==g?void 0:g.options)?void 0:d.hierarchy)?void 0:p.find((a=>{var o;return null==(o=v.view.pendingDataChanges[a.bcName])?void 0:o[e.payload.removedItem.id]})))?void 0:u.bcName)?m:f;return pl(vl(H({bcName:a,bcUrl:qa(a,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),vl(H({bcName:f,bcUrl:qa(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))}return pl(vl(H({bcName:h,bcUrl:qa(h,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),vl(H({bcName:f,bcUrl:qa(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))})));import{catchError as bl,filter as hl,map as yl,mergeMap as gl,of as Nl,race as wl}from"rxjs";var Cl=(e,a,{api:o})=>e.pipe(hl(j.match),gl((t=>{var r,i;const n=a.value,l=n.screen.screenName,s=t.payload.bcName,c=null!=(r=n.screen.bo.bc[s].cursor)?r:"",d=null!=(i=qa(s,!0,n))?i:"",p=o.createCanceler(),u=cn(e,sn,p.cancel,A({bcName:s})),m=cn(e,[ve],p.cancel,A({bcName:s}),(e=>n.screen.bo.bc[s].parentName===e.payload.bcName)),v=o.fetchRowMeta(l,d,void 0,p.cancelToken).pipe(yl((e=>T({bcName:s,rowMeta:e,bcUrl:d,cursor:c}))),bl((e=>(console.error(e),Nl(A({bcName:s}))))));return wl(u,m,v)})));import{concat as El,filter as Dl,mergeMap as Fl,of as Ml}from"rxjs";var Il=(e,a)=>e.pipe(Dl(ye.match),Fl((e=>{var o,t,r,i,n;const c=a.value,d=[],p=e.payload.assocValueKey||(null==(o=c.view.popupData)?void 0:o.assocValueKey),u=e.payload.bcName,m=c.data[u],v=e.payload.dataItem._associate,f=e.payload.depth||1,b=f-1,h=f>1&&m.find((a=>a.id===e.payload.dataItem.parentId)),y=c.view.widgets.find((a=>a.name===e.payload.widgetName)),g=null==(t=y.options)?void 0:t.hierarchyTraverse,N=null==(r=y.options)?void 0:r.hierarchyRadio,w=null==(i=y.options)?void 0:i.hierarchyGroupDeselection,C=m.filter((e=>e.level===f&&(1===e.level||e.parentId===(null==h?void 0:h.id))));if(N&&w&&1===f)if(v){const a=c.view.pendingDataChanges[u],o=m.find((o=>{if(1===o.level&&o.id!==e.payload.dataItem.id){const e=null==a?void 0:a[o.id];if((null==e?void 0:e._associate)||!e&&o._associate)return!0}return!1}));o&&d.push(Ml(ye({bcName:u,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},o),{_associate:!1}),assocValueKey:p})))}else d.push(Ml(we({bcName:u,parentId:e.payload.dataItem.id,depth:f+1,assocValueKey:p,selected:!1})));if(d.push(Ml(H({bcName:e.payload.bcName,bcUrl:qa(e.payload.bcName,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))),b&&g&&v&&d.push(Ml(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:s(l({},h),{_associate:!0,_value:null==h?void 0:h[p]}),assocValueKey:p}))),b&&g&&!v){const a=c.view.pendingDataChanges[u],o=!a||!Object.values(a).find((a=>!0===a._associate&&a.id!==e.payload.dataItem.id&&C.find((e=>e.id===a.id)))),t=a&&(null==(n=Object.values(a))?void 0:n.filter((e=>!1===e._associate)).map((e=>e.id)));C.filter((a=>a.id!==e.payload.dataItem.id&&!(null==t?void 0:t.includes(a.id)))).every((e=>!e._associate))&&o&&d.push(Ml(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:s(l({},h),{_associate:!1}),assocValueKey:p})))}return El(...d)})));import{catchError as kl,concat as xl,EMPTY as jl,filter as Tl,mergeMap as Al,of as Ol,switchMap as Pl}from"rxjs";var Sl=(e,a,{api:o})=>e.pipe(Tl(te.match),Tl((e=>{var o;return null==(o=a.value.view.popupData)?void 0:o.active})),Pl((e=>{var t,r;const i=a.value,n=null==(t=i.view.popupData)?void 0:t.calleeBCName,l=null==(r=i.view.popupData)?void 0:r.calleeWidgetName,s=e.payload.bcNames,c=qa(n,!0,i),d=s.length?{_bcName:s[s.length-1]}:{};return o.associate(i.screen.screenName,c,Object.values(i.view.pendingDataChanges[s[0]]||{}).filter((e=>e._associate)),d).pipe(Al((e=>{const a=e.postActions[0],o=i.view.widgets.find((e=>e.bcName===n));return xl(a?Ol(_({bcName:n,postInvoke:a,widgetName:null==o?void 0:o.name})):jl,Ol(me({bcNames:s})),Ol(ce({bcName:n,widgetName:l})))})),kl((e=>(console.error(e),jl))))})));import{concat as Rl,filter as Vl,mergeMap as Ul,of as $l}from"rxjs";var Bl=(e,a)=>e.pipe(Vl(he.match),Ul((e=>{var o,t,r,i,n,c;const d=a.value,p=e.payload.bcName,u=[$l(H({bcName:p,bcUrl:qa(p,!0,d),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],m=e.payload.dataItem._associate,v=e.payload.depth||1,f=v-1,b=null==(o=d.view.widgets.find((a=>a.name===e.payload.widgetName)).options)?void 0:o.hierarchyTraverse,h=v>1?null==(t=d.depthData[v])?void 0:t[p]:d.data[p],y=f?f>1?null==(i=null==(r=d.screen.bo.bc[p].depthBc)?void 0:r[f])?void 0:i.cursor:d.screen.bo.bc[p].cursor:null,g=y?f>1?null==(c=null==(n=d.depthData[f])?void 0:n[p])?void 0:c.find((e=>e.id===y)):d.data[p].find((e=>e.id===y)):null;return f&&b&&m&&u.push($l(he({bcName:p,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},g),{_associate:!0,_value:null==g?void 0:g[e.payload.assocValueKey]}),assocValueKey:e.payload.assocValueKey}))),f&&b&&!m&&h.filter((a=>a.id!==e.payload.dataItem.id)).every((e=>!e._associate))&&u.push($l(he({bcName:p,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},g),{_associate:!1}),assocValueKey:e.payload.assocValueKey}))),Rl(...u)})));import{catchError as _l,filter as ql,mergeMap as Kl,of as Ll,race as Wl}from"rxjs";var Yl=(e,a,{api:o})=>e.pipe(ql(M.match),Kl((t=>{const{bcName:r,searchSpec:i,searchString:n}=t.payload,l=qa(r,!1,a.value),s=o.createCanceler(),c=cn(e,sn,s.cancel,k({bcName:r,bcUrl:l})),d=o.fetchBcData(a.value.screen.screenName,l,{[i+".contains"]:n},s.cancelToken).pipe(Kl((e=>Ll(I({bcName:r,data:e.data,bcUrl:l})))),_l((e=>(console.error(e),Ll(k({bcName:t.payload.bcName,bcUrl:l}))))));return Wl(c,d)})));import{filter as Gl,of as Jl,switchMap as Hl}from"rxjs";var zl=(e,a)=>e.pipe(Gl(te.match),Gl((()=>{var e;return!(null==(e=a.value.view.popupData)?void 0:e.active)})),Hl((e=>{var o,t;const r=a.value,{calleeBCName:i=e.payload.calleeBcName,associateFieldKey:n=e.payload.associateFieldKey}=null!=(o=r.view.popupData)?o:{},l=r.screen.bo.bc[i].cursor,s=null!=(t=r.data[i].find((e=>e.id===l))[n])?t:[],c=[];e.payload.bcNames.forEach((e=>{Object.entries(r.view.pendingDataChanges[e]||{}).forEach((([e,a])=>{c.push(a)}))}));const d=c.filter((e=>!s.find((a=>a.id===e.id))&&e._associate)).map((e=>({id:e.id,options:{},value:e._value}))),p=s.filter((e=>{const a=c.find((a=>a.id===e.id));return!a||!1!==(null==a?void 0:a._associate)})).concat(...d);return Jl(H({bcName:i,bcUrl:qa(i,!0,r),cursor:l,dataItem:{[n]:p}}))})));import{filter as Ql,mergeMap as Xl,of as Zl}from"rxjs";var es=(e,a,{})=>e.pipe(Ql(ge.match),Xl((e=>{const o=a.value.data[e.payload.bcName];return Zl(z({bcName:e.payload.bcName,cursors:o.map((e=>e.id)),dataItems:o.map((a=>s(l({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))})));import{filter as as,mergeMap as os,of as ts}from"rxjs";var rs=(e,a)=>e.pipe(as(Ne.match),os((e=>{var o;const t=(null==(o=a.value.depthData[e.payload.depth])?void 0:o[e.payload.bcName])||[];return ts(z({bcName:e.payload.bcName,cursors:t.map((e=>e.id)),dataItems:t.map((a=>s(l({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))})));import{concat as is,filter as ns,mergeMap as ls,of as ss}from"rxjs";var cs=(e,a)=>e.pipe(ns(we.match),ls((e=>{const o=e.payload.depth,t=a.value.data[e.payload.bcName],r=(t||[]).filter((a=>a.level===o&&a.parentId===e.payload.parentId)),i=[ss(z({bcName:e.payload.bcName,cursors:r.map((e=>e.id)),dataItems:r.map((a=>s(l({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))];return r.forEach((a=>{t.find((e=>e.parentId===a.id))&&i.push(ss(we(s(l({},e.payload),{parentId:a.id,depth:o+1}))))})),is(...i)})));import ds from"axios";import{from as ps,map as us,takeWhile as ms}from"rxjs";function vs(e){var a;if(null==(a=e.data)?void 0:a.redirectUrl){let a=e.data.redirectUrl;return a.startsWith("/")||a.match("^http(.?)://")||(a=`${window.location.pathname}#/${a}`),a.startsWith("/")&&!a.startsWith("//")&&(a=`${window.location.origin}${a}`),window.location.replace(a),!1}return!0}var fs=class{constructor(e){d(this,"instance",ds.create({responseType:"json",headers:{Pragma:"no-cache","Cache-Control":"no-cache, no-store, must-revalidate"}})),this.instance=e}get(e,a,o){return ps(this.instance.get(e,a)).pipe(ms(vs),us((e=>e.data)))}put(e,a,o){return ps(this.instance.put(e,a)).pipe(ms(vs),us((e=>e.data)))}post(e,a,o,t){return ps(this.instance.post(e,a)).pipe(ms(vs),us((e=>e.data)))}delete(e,a,o,t){return ps(this.instance.delete(e,a)).pipe(ms(vs),us((e=>e.data)))}};import bs from"axios";import{EMPTY as hs,expand as ys,map as gs,reduce as Ns}from"rxjs";var ws=class{constructor(e){d(this,"api$"),this.api$=new fs(e)}routerRequest(e,a){return this.api$.get(Ba(e,a))}fetchBcData(e,a,o={},t){const r=0===o._limit,i=$a(Xa`data/${e}/`+a,s(l({},o),{_page:r?void 0:"_page"in o?o._page:1,_limit:r?void 0:"_limit"in o?o._limit:30}));return this.api$.get(i,{cancelToken:t})}fetchBcDataAll(e,a,o={}){let t=1;return this.fetchBcData(e,a,s(l({},o),{_page:t})).pipe(ys((r=>r.hasNext?this.fetchBcData(e,a,s(l({},o),{_page:++t})):hs)),Ns(((e,a)=>[...e,...a.data]),[]))}fetchRowMeta(e,a,o,t){const r=$a(Xa`row-meta/${e}/`+a,o);return this.api$.get(r,{cancelToken:t}).pipe(gs((e=>{var a;return null==(a=e.data)?void 0:a.row})))}newBcData(e,a,o,t){const r=$a(Xa`row-meta-new/${e}/`+a,t);return this.api$.get(r,void 0,o).pipe(gs((e=>e.data)))}saveBcData(e,a,o,t,r){const i=$a(Xa`data/${e}/`+a,r);return this.api$.put(i,{data:o},t).pipe(gs((e=>e.data)))}deleteBcData(e,a="",o,t){const r=$a(Xa`data/${e}/`+a,t);return this.api$.delete(r,o).pipe(gs((e=>e.data)))}customAction(e,a,o,t,r){const i=$a(Xa`custom-action/${e}/`+a,r);return this.api$.post(i,{data:o||{}},void 0,t).pipe(gs((e=>e.data)))}associate(e,a,o,t){const r=Array.isArray(o)?o.map((e=>({id:e.id,vstamp:e.vstamp,associated:e._associate}))):o,i=$a(Xa`associate/${e}/`+a,t);return this.api$.post(i,r).pipe(gs((e=>e.data)))}getRmByForceActive(e,a,o,t){const r=$a(Xa`row-meta/${e}/`+(null!=a?a:""),t);return this.api$.post(r,{data:o}).pipe(gs((e=>e.data.row)))}get fileUploadEndpoint(){const e=this.api$.instance;return e.defaults.baseURL?e.defaults.baseURL.endsWith("/")?`${e.defaults.baseURL}file`:`${e.defaults.baseURL}/file`:"/file"}refreshMeta(){return this.api$.get(Xa`bc-registry/refresh-meta`)}loginByRoleRequest(e){return this.api$.get(Xa`login?role=${e}`)}createCanceler(){let e;const a=new bs.CancelToken((a=>{e=a}));return{cancel:e,cancelToken:a}}};function Cs(e,a,o){var t;const r=null==(t=e.view.pendingDataChanges[a])?void 0:t[o];return r&&!Object.keys(r).includes("_associate")&&Object.values(r).length>0}var Es={autosave:({getState:e,dispatch:a})=>o=>t=>{var r,i,n,l,s,c,d;const p=e(),u=U.match(t),m=u&&Fa.includes(t.payload.operationType),f=Me.match(t),b=!(u&&t.payload.operationType===Da.save),h=u&&t.payload.bcName,y=Object.keys(p.view.pendingDataChanges).filter((e=>e!==h)).filter((e=>function(e,a){var o,t;return Object.keys(null!=(t=null==(o=e.view.pendingDataChanges)?void 0:o[a])?t:{}).some((o=>Cs(e,a,o)))}(p,e))).length>0,g=m&&y,N=p.view.selectedCell,w=N&&f&&(N.widgetName!==t.payload.widgetName||N.rowId!==t.payload.rowId),C=null==(r=p.view.widgets)?void 0:r.find((e=>{var a,o;return null==(o=null==(a=null==e?void 0:e.options)?void 0:a.actionGroups)?void 0:o.defaultSave})),E=null==(n=null==(i=p.screen.bo.bc)?void 0:i[null==C?void 0:C.bcName])?void 0:n.cursor,D=null==(c=null==(s=null==(l=p.view)?void 0:l.pendingDataChanges)?void 0:s[null==C?void 0:C.bcName])?void 0:c[E];return C&&v.match(t)&&Object.keys(D||{}).length>0?o(U({bcName:C.bcName,operationType:(null==(d=C.options)?void 0:d.actionGroups).defaultSave,widgetName:C.name,onSuccessAction:t})):b&&(g||w)?function(e,a,o){var t,r,i;const n=a.getState(),l=a.dispatch,s=Object.keys(n.view.pendingDataChanges),c=(null==(t=e.payload)?void 0:t.bcName)&&Cs(n,e.payload.bcName,null==(r=n.screen.bo.bc[e.payload.bcName])?void 0:r.cursor)?s.findIndex((a=>{var o;return a===(null==(o=e.payload)?void 0:o.bcName)})):s.findIndex((e=>{var a;return Cs(n,e,null==(a=n.screen.bo.bc[e])?void 0:a.cursor)})),d=s[c];if(c>-1&&s.splice(c,1),d){s.forEach((e=>{var a,o;const t=null==(a=n.view.widgets)?void 0:a.find((a=>a.bcName===e)),r=null==(o=n.screen.bo.bc[e])?void 0:o.cursor;Cs(n,e,r)&&l(U({bcName:e,operationType:Da.save,widgetName:null==t?void 0:t.name}))}));const a=null==(i=n.view.widgets)?void 0:i.find((e=>e.bcName===d));return o(U({bcName:d,operationType:Da.save,widgetName:null==a?void 0:a.name,onSuccessAction:e}))}return o(e)}(t,{getState:e,dispatch:a},o):o(t)},requiredFields:({getState:e,dispatch:a})=>o=>t=>{var r,i,n,l;const s=e();if(U.match(t)){const{bcName:e,operationType:c,widgetName:d}=t.payload,p=null==(r=s.screen.bo.bc[e])?void 0:r.cursor;if(p){const r=qa(e,!0,s),u=null==(i=s.data[e])?void 0:i.find((e=>e.id===p)),m=r&&(null==(n=s.view.rowMeta[e])?void 0:n[r]),v=null==(l=s.view.pendingDataChanges[e])?void 0:l[p],f=s.view.widgets.find((e=>e.name===d));if(function(e,a){let o=!1;return a?(o=no(a).some((a=>a.type===e&&a.autoSaveBefore)),o):(console.error('rowMeta is missing in the middle of "sendOperation" action'),o)}(c,null==m?void 0:m.actions)){const r={};s.view.widgets.filter((e=>e.bcName===(null==f?void 0:f.bcName))).forEach((e=>{const a=e.fields;e.fields&&e.fields.forEach((e=>{Ca(e)&&e.fields.forEach((e=>a.push(e)))})),a.forEach((e=>{var a;const o=null==(a=null==m?void 0:m.fields)?void 0:a.find((a=>a.key===e.key));r[e.key]||!o||o.hidden||(r[e.key]=o)}))}));const i=function(e,a,o){const t={};return o.forEach((o=>{const r=null==a?void 0:a[o.key],i=void 0!==r?r:null==e?void 0:e[o.key];let n=!1;(null==i||""===i||Array.isArray(i)&&!i.length||i&&"object"==typeof i&&!Object.keys(i).length)&&(n=!0),o.required&&n&&(t[o.key]=Array.isArray(i)?[]:null)})),Object.keys(t).length>0?t:null}(u,v,Object.values(r));return i&&ya.includes(null==f?void 0:f.type)&&a(Me({widgetName:d,rowId:p,fieldKey:Object.keys(i)[0]})),o(i?H({bcName:e,bcUrl:qa(e,!0,s),cursor:p,dataItem:i}):t)}if(function(e,a){var o;if("target"!==e.view.pendingValidationFailsFormat&&e.view.pendingValidationFails&&Object.keys(e.view.pendingValidationFails).length)return!0;let t=!1;const r=null==(o=e.view.pendingValidationFails)?void 0:o[a],i=r&&Object.keys(r);if(!i)return!1;let n=0;for(;n<i.length;n++)if(Object.keys(r[i[n]]).length){t=!0;break}return t}(s,e))return ea({key:"requiredFieldsMissing",type:"buttonWarningNotification",message:"Required fields are missing",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"Cancel changes",actionsForClick:[me(null),Be(null)]}}})}}return o(t)},preInvoke:({getState:e})=>a=>o=>{var t,r,i;if(U.match(o)){const n=e(),{operationType:l,widgetName:s,confirm:c}=o.payload,d=null==(t=n.view.widgets.find((e=>e.name===s)))?void 0:t.bcName,p=qa(d,!0,n),u=p&&(null==(r=n.view.rowMeta[d])?void 0:r[p]),m=u&&no(u.actions),v=null==(i=null==m?void 0:m.find((e=>e.type===l)))?void 0:i.preInvoke;return a(v&&!c?q({bcName:d,operationType:l,widgetName:s,preInvoke:v}):o)}return a(o)},popup:({getState:e})=>a=>o=>{var t,r,i;if(X.match(o)){const n=e(),c=o.payload.bcName,d=null==(r=null==(t=n.view.widgets.find((e=>e.bcName===c)))?void 0:t.options)?void 0:r.displayedValueKey,p=null!=(i=o.payload.assocValueKey)?i:d;return a(d?X(s(l({},o.payload),{assocValueKey:p})):o)}return a(o)}};export{ws as Api,u as actions,Fo as epics,sa as interfaces,Es as middlewares,p as reducers,Va as utils};
1
+ var e=Object.defineProperty,a=Object.defineProperties,o=Object.getOwnPropertyDescriptors,t=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,n=(a,o,t)=>o in a?e(a,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[o]=t,l=(e,a)=>{for(var o in a||(a={}))r.call(a,o)&&n(e,o,a[o]);if(t)for(var o of t(a))i.call(a,o)&&n(e,o,a[o]);return e},s=(e,t)=>a(e,o(t)),c=(a,o)=>{for(var t in o)e(a,t,{get:o[t],enumerable:!0})},d=(e,a,o)=>(n(e,"symbol"!=typeof a?a+"":a,o),o),p={};c(p,{createDataReducerBuilderManager:()=>la,createDepthDataReducerBuilderManager:()=>ca,createRouterReducerBuilderManager:()=>Va,createScreenReducerBuilderManager:()=>Fo,createSessionReducerBuilderManager:()=>ko,createViewReducerBuilderManager:()=>To,dataInitialState:()=>na,initialDepthDataState:()=>sa,initialRouterState:()=>Sa,initialScreenState:()=>Do,initialSessionState:()=>Io,initialViewState:()=>jo});var u={};c(u,{addNotification:()=>oa,addPendingRequest:()=>ea,apiError:()=>Le,bcAddFilter:()=>Te,bcAddSorter:()=>Pe,bcCancelPendingChanges:()=>me,bcChangeCursors:()=>G,bcChangeDepthCursor:()=>J,bcChangePage:()=>Se,bcDeleteDataFail:()=>S,bcFetchDataFail:()=>k,bcFetchDataPages:()=>M,bcFetchDataRequest:()=>D,bcFetchDataSuccess:()=>I,bcFetchRowMeta:()=>j,bcFetchRowMetaFail:()=>A,bcFetchRowMetaSuccess:()=>T,bcForceUpdate:()=>ce,bcLoadMore:()=>x,bcNewData:()=>O,bcNewDataFail:()=>R,bcNewDataSuccess:()=>P,bcRemoveAllFilters:()=>Oe,bcRemoveFilter:()=>Ae,bcRemoveSorter:()=>Re,bcSaveDataFail:()=>le,bcSaveDataSuccess:()=>ne,bcSelectDepthRecord:()=>fe,bcSelectRecord:()=>ve,bulkUploadFiles:()=>Ke,changeAssociation:()=>be,changeAssociationFull:()=>ye,changeAssociationSameBc:()=>he,changeAssociations:()=>re,changeChildrenAssociations:()=>ge,changeChildrenAssociationsSameBc:()=>Ne,changeDataItem:()=>H,changeDataItems:()=>z,changeDescendantsAssociationsFull:()=>we,changeLocation:()=>v,clearValidationFails:()=>Be,closeConfirmModal:()=>$e,closeNotification:()=>je,closeViewError:()=>Ue,closeViewPopup:()=>ee,downloadFile:()=>_e,downloadFileByUrl:()=>qe,drillDown:()=>Y,dropAllAssociations:()=>Ce,dropAllAssociationsFull:()=>De,dropAllAssociationsSameBc:()=>Ee,emptyAction:()=>Je,exportState:()=>Ge,forceActiveChangeFail:()=>V,forceActiveRmUpdate:()=>Q,handleRouter:()=>Me,httpError:()=>We,inlinePickListFetchDataRequest:()=>F,login:()=>f,loginDone:()=>b,loginFail:()=>h,logout:()=>y,logoutDone:()=>g,operationConfirmation:()=>se,processPostInvoke:()=>_,processPostInvokeConfirm:()=>K,processPreInvoke:()=>q,refreshMeta:()=>He,refreshMetaAndReloadPage:()=>Xe,refreshMetaDone:()=>ze,refreshMetaFail:()=>Qe,removeMultivalueTag:()=>ie,removeNotifications:()=>ta,removePendingRequest:()=>aa,saveAssociations:()=>te,selectScreen:()=>N,selectScreenFail:()=>w,selectTableCell:()=>Ie,selectTableCellInit:()=>Fe,selectView:()=>C,selectViewFail:()=>E,sendOperation:()=>U,sendOperationFail:()=>$,sendOperationSuccess:()=>B,showAllTableRecordsInit:()=>ke,showFileUploadPopup:()=>Z,showNotification:()=>xe,showViewError:()=>Ve,showViewPopup:()=>X,switchDebugMode:()=>Ye,switchRole:()=>Ze,uploadFile:()=>de,uploadFileDone:()=>pe,uploadFileFailed:()=>ue,userDrillDown:()=>L,userDrillDownSuccess:()=>W,viewClearPickMap:()=>oe,viewPutPickMap:()=>ae});import{createAction as m}from"@reduxjs/toolkit";var v=m("changeLocation"),f=m("login"),b=m("loginDone"),h=m("loginFail"),y=m("logout"),g=m("logoutDone"),N=m("selectScreen"),w=m("selectScreenFail"),C=m("selectView"),E=m("selectViewFail"),D=m("bcFetchDataRequest"),M=m("bcFetchDataPages"),F=m("inlinePickListFetchDataRequest"),I=m("bcFetchDataSuccess"),k=m("bcFetchDataFail"),x=m("bcLoadMore"),j=m("bcFetchRowMeta"),T=m("bcFetchRowMetaSuccess"),A=m("bcFetchRowMetaFail"),O=m("bcNewData"),P=m("bcNewDataSuccess"),R=m("bcNewDataFail"),S=m("bcDeleteDataFail"),V=m("forceActiveChangeFail"),U=m("sendOperation"),$=m("sendOperationFail"),B=m("sendOperationSuccess"),_=m("processPostInvoke"),q=m("processPreInvoke"),K=m("processPostInvokeConfirm"),L=m("userDrillDown"),W=m("userDrillDownSuccess"),Y=m("drillDown"),G=m("bcChangeCursors"),J=m("bcChangeDepthCursor"),H=m("changeDataItem"),z=m("changeDataItems"),Q=m("forceActiveRmUpdate"),X=m("showViewPopup"),Z=m("showFileUploadPopup"),ee=m("closeViewPopup"),ae=m("viewPutPickMap"),oe=m("viewClearPickMap"),te=m("saveAssociations"),re=m("cnangeAssociations"),ie=m("removeMultivalueTag"),ne=m("bcSaveDataSuccess"),le=m("bcSaveDataFail"),se=m("operationConfirmation"),ce=m("bcForceUpdate"),de=m("uploadFile"),pe=m("uploadFileDone"),ue=m("uploadFileFailed"),me=m("bcCancelPendingChanges"),ve=m("bcSelectRecord"),fe=m("bcSelectDepthRecord"),be=m("changeAssociations"),he=m("changeAssociationsSameBc"),ye=m("changeAssociationFull"),ge=m("changeChildrenAssociations"),Ne=m("changeChildrenAssociationsSameBc"),we=m("changeDescendantsAssociationsFull"),Ce=m("dropAllAssociations"),Ee=m("dropAllAssociationsSameBc"),De=m("dropAllAssociationsFull"),Me=m("handleRouter"),Fe=m("selectTableCellInit"),Ie=m("selectTableCell"),ke=m("showAllTableRecordsInit"),xe=m("showNotification"),je=m("closeNotification"),Te=m("bcAddFilter"),Ae=m("bcRemoveFilter"),Oe=m("bcRemoveAllFilters"),Pe=m("bcAddSorter"),Re=m("bcRemoveSorter"),Se=m("bcChangePage"),Ve=m("showViewError"),Ue=m("closeViewError"),$e=m("closeConfirmModal"),Be=m("clearValidationFails"),_e=m("downloadFile"),qe=m("downloadFileByUrl"),Ke=m("bulkUploadFiles"),Le=m("apiError"),We=m("httpError"),Ye=m("switchDebugMode"),Ge=m("exportState"),Je=m("emptyAction"),He=m("refreshMeta"),ze=m("refreshMetaDone"),Qe=m("refreshMetaFail"),Xe=m("refreshMetaAndReloadPage"),Ze=m("switchRole"),ea=m("addPendingRequest"),aa=m("removePendingRequest"),oa=m("addNotification"),ta=m("removeNotifications"),ra=class{constructor(){d(this,"reducers",[]),d(this,"matchers",[]),d(this,"defaultCaseReducer")}addCase(e,a){return this.reducers.push([e,a]),this}removeCase(e){return this.reducers=this.reducers.filter((a=>a[0].type!==e.type)),this}replaceCase(e,a){return this.removeCase(e).addCase(e,a),this}addMatcher(e,a){return this.matchers.push([e,a]),this}addDefaultCase(e){return this.defaultCaseReducer=e,this}get builder(){return e=>{const a=this.reducers.reduce(((e,a)=>e.addCase(...a)),e),o=this.matchers.reduce(((e,a)=>e.addMatcher(...a)),a);return void 0!==this.defaultCaseReducer?o.addDefaultCase(this.defaultCaseReducer):o}}},ia=[],na={},la=e=>(new ra).addCase(I,((e,a)=>{e[a.payload.bcName]=a.payload.data})).addCase(P,((e,a)=>{e[a.payload.bcName]=[...e[a.payload.bcName]||ia,a.payload.dataItem]})).addCase(ne,((e,a)=>{const o=a.payload.dataItem,t=e[a.payload.bcName].findIndex((e=>e.id===o.id));e[a.payload.bcName][t]=o})).addCase(T,((e,a)=>{const o=a.payload.cursor;if(!o)return;const t=(e[a.payload.bcName]||ia).find((e=>e.id===o)),r=s(l({},t),{id:o,vstamp:-1,_associate:t&&t._associate});a.payload.rowMeta.fields.find((e=>"id"===e.key&&!e.currentValue))||(a.payload.rowMeta.fields.filter((e=>"_associate"!==e.key)).forEach((e=>r[e.key]=e.currentValue)),e[a.payload.bcName]=t?e[a.payload.bcName].map((e=>e===t?r:e)):[...e[a.payload.bcName]||ia,r])})).addCase(re,((e,a)=>{e[`${a.payload.bcName}Delta`]=a.payload.records||[]})).addCase(C,(e=>{})),sa={},ca=e=>(new ra).addCase(I,((e,a)=>{!a.payload.depth||a.payload.depth<2||(e[a.payload.depth][a.payload.bcName]=a.payload.data)})).addCase(C,(e=>{})),da={};c(da,{AppNotificationType:()=>pa,ApplicationErrorType:()=>ba,DrillDownType:()=>ua,FieldType:()=>va,FilterType:()=>Aa,OperationPostInvokeConfirmType:()=>Ta,OperationPostInvokeType:()=>ja,OperationPreInvokeType:()=>xa,OperationTypeCrud:()=>Fa,PaginationMode:()=>Ma,PendingValidationFailsFormat:()=>fa,PopupWidgetTypes:()=>wa,PositionTypes:()=>ga,RouteType:()=>ma,TableLikeWidgetTypes:()=>Na,WidgetTypes:()=>ya,coreOperations:()=>Ia,isCustomWidget:()=>Ca,isCustomWidgetConfiguration:()=>Ea,isOperationGroup:()=>ka,isViewNavigationCategory:()=>Pa,isViewNavigationGroup:()=>Ra,isViewNavigationItem:()=>Oa,isWidgetFieldBlock:()=>Da});var pa=(e=>(e.success="success",e.info="info",e.warning="warning",e.error="error",e))(pa||{});import{DrillDownType as ua}from"@cxbox-ui/schema";var ma=(e=>(e.screen="screen",e.default="default",e.router="router",e.invalid="invalid",e.unknown="unknown",e))(ma||{});import{FieldType as va}from"@cxbox-ui/schema";var fa=(e=>(e.old="old",e.target="target",e))(fa||{}),ba=(e=>(e[e.BusinessError=0]="BusinessError",e[e.SystemError=1]="SystemError",e[e.NetworkError=2]="NetworkError",e))(ba||{});import{WidgetTypes as ha}from"@cxbox-ui/schema";import{WidgetTypes as ya,PositionTypes as ga}from"@cxbox-ui/schema";var Na=[ha.List,ha.DataGrid,ha.AssocListPopup,ha.PickListPopup,ha.FlatTree,ha.FlatTreePopup],wa=[ha.PickListPopup,ha.AssocListPopup,ha.FlatTreePopup];function Ca(e){return!!e&&!("component"in e)}function Ea(e){return e&&"component"in e}function Da(e){return!!e&&"blockId"in e}var Ma=(e=>(e.page="page",e.loadMore="loadMore",e))(Ma||{});import{OperationTypeCrud as Fa}from"@cxbox-ui/schema";var Ia=[Fa.create,Fa.save,Fa.delete,Fa.associate,Fa.cancelCreate,Fa.fileUpload];function ka(e){return Array.isArray(e.actions)}var xa=(e=>(e.confirm="confirm",e.info="info",e.error="error",e))(xa||{}),ja=(e=>(e.refreshBC="refreshBC",e.downloadFile="downloadFile",e.downloadFileByUrl="downloadFileByUrl",e.drillDown="drillDown",e.openPickList="openPickList",e.showMessage="showMessage",e.postDelete="postDelete",e))(ja||{}),Ta=(e=>(e.confirm="confirm",e.confirmText="confirmText",e))(Ta||{}),Aa=(e=>(e.range="range",e.equals="equals",e.greaterThan="greaterThan",e.lessThan="lessThan",e.greaterOrEqualThan="greaterOrEqualThan",e.lessOrEqualThan="lessOrEqualThan",e.contains="contains",e.specified="specified",e.specifiedBooleanSql="specifiedBooleanSql",e.equalsOneOf="equalsOneOf",e.containsOneOf="containsOneOf",e))(Aa||{});function Oa(e){return!!e&&"viewName"in e}function Pa(e){return!!e&&"categoryName"in e}function Ra(e){return!!e&&"child"in e&&!("categoryName"in e)}var Sa={type:"default",path:"/",params:null,screenName:null},Va=e=>(new ra).addCase(b,((e,a)=>{e=l(l({},e),a.payload)})).addCase(v,((e,a)=>{e=l(l({},e),a.payload.location)}));import{OperationTypeCrud as Ua}from"@cxbox-ui/schema";var $a={};function Ba(e){return e.includes("?")?e+"&":e+"?"}function _a(e,a){return a?qa(e,function(e){const a=l({},e);return Object.keys(a).reduce(((e,a)=>(e[a]||"number"==typeof e[a]||delete e[a],e)),a)}(a)):e}function qa(e,a){if(!a)return e;const o=new URLSearchParams(a).toString();return`${Ba(e)}${o&&`${o}`}`}c($a,{addTailControlSequences:()=>Ba,applyParams:()=>_a,applyRawParams:()=>qa,assignTreeLinks:()=>yo,breadthFirstSearch:()=>Co,buildBcUrl:()=>Ha,buildSearchResultTree:()=>No,buildUrl:()=>io,checkShowCondition:()=>ho,createApiError:()=>Ya,createApiErrorObservable:()=>Ga,defaultBuildURL:()=>lo,defaultParseURL:()=>no,deleteUndefinedFromObject:()=>Eo,escapedSrc:()=>oo,flattenOperations:()=>vo,getBcChildren:()=>bo,getDescendants:()=>go,getFieldTitle:()=>eo,getFilterType:()=>mo,getFilters:()=>so,getSorters:()=>co,getTemplate:()=>Ja,makeRelativeUrl:()=>to,matchOperationRole:()=>fo,parseBcCursors:()=>ro,parseFilters:()=>po,parseSorters:()=>uo,presort:()=>wo,splitBcUrl:()=>za,splitIntoTokens:()=>ao});import{actions as Ka}from"@cxbox-ui/core";import{EMPTY as La,of as Wa}from"rxjs";function Ya(e,a={widgetName:"unknown"}){if(e.isAxiosError)return Ka.apiError({error:e,callContext:a})}function Ga(e,a){const o=Ya(e,a);return o?Wa(o):La}function Ja(e,...a){let o="";for(let t=0;t<a.length;t++)o+=e[t],o+="${"+t+"}";return o+=e[e.length-1],o}function Ha(e,a=!1,o){const t=o.screen.bo.bc,r=t[e];if(!r)return null;const i=[r.cursor&&a?`${r.name}/${r.cursor}`:r.name];let n=r;for(;n.parentName;)n=t[n.parentName],i.push(`${n.name}/${n.cursor}`);return i.reverse().join("/")}function za(e){const a=e.split("/"),o=[];for(let e=0;e<a.length;e+=2){const t=a[e],r=a[e+1];o.push(t&&r?`${t}/${r}`:t)}return o}var Qa=/\${([^{}]+)}/g,Xa=(e,a)=>e?e.replace(Qa,((e,o)=>{const[t,r]=o.split(":");return String((null==a?void 0:a[t])||r||"")})):"",Za=e=>!!e&&null!==e.match(Qa);function eo(e,a){return Za(e)?Xa(e,a):e}function ao(e,a){const o=a instanceof RegExp?a:oo(a);return e.split(o)}function oo(e){return new RegExp(`(${null==e?void 0:e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")})`,"gi")}function to(e){return e.startsWith("/")?e:`/${e}`}function ro(e){if(!e)return null;const a={},o=e.split("/");for(let e=0;e<o.length;e+=2)o[e+1]&&(a[o[e]]=o[e+1]);return a}function io(e,...a){let o="";for(let t=0;t<a.length;t++){o+=e[t];const r=a[t];if("number"==typeof r)o+=r.toString(10);else{if("string"!=typeof r){const o=Ja(e,a);throw new Error(`Неверный тип подстановочного знака в ${o}, index: ${t}, value: ${JSON.stringify(r)}`)}o+=encodeURIComponent(r)}}return o+=e[e.length-1],o}function no(e){let a=e.pathname;a.startsWith("/")&&(a=a.substring(1)),a.endsWith("/")&&(a=a.substring(0,a.length-1)),(null==a?void 0:a.includes("&"))&&!(null==a?void 0:a.includes("?"))&&(a=a.substring(0,a.indexOf("&")));const o={};e.searchParams.forEach(((e,a)=>o[a]=e));const t=a.split("/").map(decodeURIComponent);let r="unknown",i=null,n=null,l=null;if(t.length>0&&"router"===t[0])r="router";else if(1===t.length)r="default";else if(t.length>=2&&"screen"===t[0]){let e=2;r="screen",i=t[1],t.length>=4&&"view"===t[2]&&(e+=2,n=t[3]),l=t.slice(e).map(encodeURIComponent).join("/")}return{type:r,path:0===a.length||a.startsWith("/")?a:`/${a}`,params:o,screenName:i,viewName:n,bcPath:l}}function lo(e){return`/screen/${e.screenName}/view/${e.viewName}/${e.bcPath}`}function so(e){if(!e||!e.length)return null;const a={};return e.forEach((e=>{if("range"===e.type){const o=e.value;o[0]&&(a[`${e.fieldName}.greaterOrEqualThan`]=String(o[0])),o[1]&&(a[`${e.fieldName}.lessOrEqualThan`]=String(o[1]))}else{let o=String(e.value);Array.isArray(e.value)&&(o=`[${e.value.map((e=>`"${e}"`))}]`),a[`${e.fieldName}.${e.type}`]=o}})),a}function co(e){if(!e||!e.length)return null;const a={};return e.forEach(((e,o)=>{a[`_sort.${o}.${e.direction}`]=e.fieldName})),a}function po(e=""){const a=[],o=new URL(e,window.location.origin).searchParams;return o.forEach((e=>{const[t,r]=e.split(".");if(t&&r&&o.get(e)){let i=o.getAll(e);if("containsOneOf"===r||"equalsOneOf"===r){try{"string"==typeof i&&(i=JSON.parse(i))}catch(e){console.warn(e)}i=Array.isArray(i)?i:[]}a.push({fieldName:t,type:r,value:i})}})),a.length?a:null}function uo(e){if(!e||!e.length)return null;const a=[],o=new URL(e,window.location.origin).searchParams;return Object.entries(o).map((([e,a])=>{const[o,t]=e.split(".").slice(1);return{fieldName:a,order:Number.parseInt(o,10),direction:t}})).sort(((e,a)=>e.order-a.order)).forEach((e=>{a.push({fieldName:e.fieldName,direction:e.direction})})),a}function mo(e){switch(e){case va.dictionary:return"equalsOneOf";case va.checkbox:return"specified";case va.input:case va.text:return"contains";default:return"equals"}}function vo(e){const a=[];return null==e||e.forEach((e=>{ka(e)?e.actions.forEach((e=>{a.push(e)})):a.push(e)})),a}function fo(e,a,o){var t,r;if(a.operationType===e)return!0;const i=Ha(a.bcName,!0,o),n=vo(null==(r=null==(t=o.view.rowMeta[a.bcName])?void 0:t[i])?void 0:r.actions).find((e=>e.type===a.operationType));return"none"===e?Ia.every((e=>e!==a.operationType&&e!==(null==n?void 0:n.actionRole))):(null==n?void 0:n.actionRole)===e}function bo(e,a,o){const t={};return a.filter((e=>e.bcName)).forEach((a=>{const r=[];r.push(a.bcName);let i=o[a.bcName].parentName;for(;i;)r.push(i),i=o[i].parentName;r.filter((a=>o[a].parentName===e)).forEach((e=>{t[e]=[...t[e]||[],a.name]}))})),a.filter((e=>{var a;return null==(a=e.options)?void 0:a.hierarchy})).forEach((a=>{const[o,r]=function(e,a){var o,t;const r=null==(t=null==(o=null==a?void 0:a.options)?void 0:o.hierarchy)?void 0:t.map((e=>e.bcName));if(e!==a.bcName&&!(null==r?void 0:r.includes(e)))return[];const i=null==r?void 0:r.findIndex((a=>a===e));return[null==r?void 0:r[i+1],a.name]}(e,a);o&&(t[o]=[...t[o]||[],r])})),t}function ho(e,a,o,t){var r,i;const{bcName:n,isDefault:l,params:s}=e||{};if(!e||Array.isArray(e)||l)return!0;const c=a&&(null==o?void 0:o.find((e=>e.id===a)));if(!c)return!1;const d=null==(i=null==(r=null==t?void 0:t[n])?void 0:r[a])?void 0:i[null==s?void 0:s.fieldKey];return void 0!==d?d===(null==s?void 0:s.value):(null==c?void 0:c[null==s?void 0:s.fieldKey])===(null==s?void 0:s.value)}function yo(e){const a=e.map((e=>l({},e))),o={},t=[];return a.forEach((r=>{var i,n;if(!r.parentId||"0"===r.parentId)return;let l=o[r.parentId];if("number"!=typeof l&&(l=e.findIndex((e=>e.id===r.parentId)),o[r.parentId]=l),-1===l)return t.push(r.parentId),void console.warn(`Record with [id] = ${r.id} has [parentId] = ${r.parentId}, but no matching parent record exist. Check the service for this BC.`);r.parent=a[l],a[l].children?null==(n=null==(i=a[l])?void 0:i.children)||n.push(r):a[l].children=[r]})),t.length?a.filter((e=>!t.includes(e.parentId))):a}function go(e,a){e.forEach((e=>{a.push(e.id),e.children&&go(e.children,a)}))}function No(e,a){const o={};return e.forEach((e=>{var t;if(!a.includes(e.id))return;let r=e.parent;for(;r;)o[r.id]=!0,r=r.parent;o[e.id]=!0,null==(t=e.children)||t.forEach((e=>{o[e.id]=!0}))})),e.filter((e=>!0===o[e.id]))}function wo(e){const a=[];return e.filter((e=>1===e.level)).forEach((e=>{a.push(e.id),e.children&&go(e.children,a)})),a.map((a=>e.find((e=>e.id===a))))}function Co(e,a,o=1,t="child"){const r=a(e)&&e,i=e[t];if(!r&&!i)return null;if(r)return{node:r,depth:o};let n=i.filter((e=>!e[t])).find((e=>a(e)));if(n)return{node:n,depth:o+1};let l=o;return i.some((e=>{const o=Co(e,a,l+1,null!=t?t:"child");return n=null==o?void 0:o.node,l=null==o?void 0:o.depth,null==o?void 0:o.node})),n?{node:n,depth:l}:null}function Eo(e){Object.keys(e).forEach((a=>{void 0===e[a]&&delete e[a]}))}var Do={screenName:"",bo:{activeBcName:"",bc:{}},cachedBc:{},views:[],primaryView:"",filters:{},sorters:{}},Mo=[Ua.associate,Ua.fileUpload],Fo=e=>(new ra).addCase(N,((e,a)=>{var o,t,r,i,n;const s={},c={},d={};null==(o=a.payload.screen.meta)||o.bo.bc.forEach((e=>{s[e.name]=e;const a=uo(e.defaultSort),o=po(e.defaultFilter);a&&(c[e.name]=a),o&&(d[e.name]=o)})),e.screenName=a.payload.screen.name,e.primaryView=null!=(r=null==(t=a.payload.screen.meta)?void 0:t.primary)?r:e.primaryView,e.views=null!=(n=null==(i=a.payload.screen.meta)?void 0:i.views)?n:e.views,e.bo={activeBcName:null,bc:s},e.sorters=l(l({},e.sorters),c),e.filters=l(l({},e.filters),d)})).addCase(w,((e,a)=>{e.screenName=a.payload.screenName,e.views=[]})).addCase(D,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0})).addCase(x,((e,a)=>{var o;const t=e.bo.bc[a.payload.bcName];t.page=(null!=(o=t.page)?o:1)+1,t.loading=!0})).addCase(C,((e,a)=>{var o;const t={};Array.from(new Set(null==(o=a.payload.widgets)?void 0:o.map((e=>e.bcName)))).filter((a=>e.bo.bc[a])).forEach((a=>{t[a]=s(l({},e.bo.bc[a]),{page:1})})),e.bo.bc=l(l({},e.bo.bc),t)})).addCase(I,((e,a)=>{const o=e.bo.bc[a.payload.bcName];o.hasNext=a.payload.hasNext,o.loading=!1,e.cachedBc[a.payload.bcName]=a.payload.bcUrl})).addCase(k,((e,a)=>{const o=a.payload.bcName;Object.values(e.bo.bc).some((e=>e.name===o))&&(e.bo.bc[o].loading=!1,e.cachedBc[o]=a.payload.bcUrl)})).addCase(U,((e,a)=>{Mo.includes(a.payload.operationType)||(e.bo.bc[a.payload.bcName].loading=!0)})).addCase(P,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1,e.bo.bc[a.payload.bcName].cursor=a.payload.dataItem.id,e.cachedBc[a.payload.bcName]=a.payload.bcUrl})).addCase(G,((e,a)=>{const o={},t={};Object.entries(a.payload.cursorsMap).forEach((a=>{const[r,i]=a;o[r]=s(l({},e.bo.bc[r]),{cursor:i}),t[r]=i}));const r=Object.values(o).map((e=>`${e.url}/:id`));Object.values(e.bo.bc).forEach((a=>{r.some((e=>a.url.includes(e)))&&(o[a.name]=s(l({},e.bo.bc[a.name]),{cursor:null}),t[a.name]=null)})),Object.assign(e.bo.bc,o),Object.assign(e.cachedBc,t)})).addCase(J,((e,a)=>{var o;1===a.payload.depth?e.bo.bc[a.payload.bcName].cursor=a.payload.cursor:(e.bo.bc[a.payload.bcName].depthBc=null!=(o=e.bo.bc[a.payload.bcName].depthBc)?o:{},e.bo.bc[a.payload.bcName].depthBc[a.payload.depth].cursor=a.payload.cursor)})).addCase(ve,((e,a)=>{e.bo.bc[a.payload.bcName].cursor=a.payload.cursor})).addCase(ce,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0,e.cachedBc[a.payload.bcName]=null})).addCase(Te,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=t,i=e.filters[o]||[],n=i.find((e=>e.fieldName===t.fieldName&&e.type===t.type)),c=n?i.map((e=>e===n?s(l({},n),{value:r.value}):e)):[...i,r];e.bo.bc[o].page=1,e.filters[o]=c})).addCase(Ae,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=(e.filters[o]||[]).filter((e=>e.fieldName!==(null==t?void 0:t.fieldName)||e.type!==t.type)),i=s(l({},e.filters),{[o]:r});r.length||delete i[o],e.bo.bc[a.payload.bcName].page=1,e.filters=i})).addCase(Oe,((e,a)=>{delete e.filters[a.payload.bcName],e.bo.bc[a.payload.bcName].page=1})).addCase(Pe,((e,a)=>{e.sorters[a.payload.bcName]=Array.isArray(a.payload.sorter)?a.payload.sorter:[a.payload.sorter]})).addCase(Se,((e,a)=>{e.bo.bc[a.payload.bcName].page=a.payload.page,e.bo.bc[a.payload.bcName].loading=!0})).addCase(X,((e,a)=>{var o,t;const r=null!=(t=null==(o=e.bo.bc[a.payload.bcName])?void 0:o.page)?t:1;e.bo.bc[a.payload.bcName].page=a.payload.bcName===a.payload.calleeBCName?r:1,e.bo.bc[a.payload.bcName].loading=a.payload.bcName!==a.payload.calleeBCName})).addCase(B,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(S,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase($,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(ne,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(le,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})),Io={devPanelEnabled:!1,activeRole:null,roles:null,firstName:"",lastName:"",login:"",debugMode:!1,exportStateEnabled:!1,active:!1,logout:!1,loginSpin:!1,errorMsg:null,screens:[],pendingRequests:[],notifications:[],isMetaRefreshing:!1},ko=e=>(new ra).addCase(f,(e=>{e.loginSpin=!0,e.errorMsg=null})).addCase(b,((e,a)=>{(e=l(l({},e),a.payload)).loginSpin=!1,e.active=!0,e.logout=!1})).addCase(h,((e,a)=>{e.loginSpin=!1,e.errorMsg=a.payload.errorMsg})).addCase(y,(e=>{e.loginSpin=!1,e.active=!1,e.logout=!0})).addCase(Ye,((e,a)=>{e.debugMode=a.payload})).addCase(ea,((e,a)=>{var o;null==(o=e.pendingRequests)||o.push(a.payload.request)})).addCase(aa,((e,a)=>{var o;e.pendingRequests=null==(o=e.pendingRequests)?void 0:o.filter((e=>e.requestId!==a.payload.requestId))})).addCase(oa,((e,a)=>{e.notifications.push(a.payload)})).addCase(ta,((e,a)=>{const o=a.payload;e.notifications=e.notifications.filter((e=>!o.includes(e.key)))})).addCase(He,(e=>{e.isMetaRefreshing=!0})).addCase(ze,(e=>{e.isMetaRefreshing=!1})).addCase(Qe,(e=>{e.isMetaRefreshing=!1}));import{OperationTypeCrud as xo}from"@cxbox-ui/schema";var jo={id:void 0,name:null,url:null,widgets:[],columns:null,readOnly:!1,rowHeight:null,rowMeta:{},metaInProgress:{},popupData:{bcName:null},pendingDataChanges:{},infiniteWidgets:[],pendingValidationFailsFormat:"old",pendingValidationFails:{},handledForceActive:{},selectedCell:null,ignoreHistory:null,systemNotifications:[],error:null,modalInvoke:null},To=e=>(new ra).addCase(C,((e,a)=>{e.rowMeta=jo.rowMeta,Object.assign(e,a.payload)})).addCase(j,((e,a)=>{e.metaInProgress[a.payload.bcName]=!0})).addCase(x,((e,a)=>{const o=e.infiniteWidgets||[];void 0!==a.payload.widgetName&&o.push(a.payload.widgetName),e.infiniteWidgets=Array.from(new Set(o))})).addCase(U,((e,a)=>{a.payload.operationType===xo.create&&(e.metaInProgress[a.payload.bcName]=!0)})).addCase(T,((e,a)=>{var o;e.rowMeta[a.payload.bcName]=null!=(o=e.rowMeta[a.payload.bcName])?o:{},e.rowMeta[a.payload.bcName][a.payload.bcUrl]=a.payload.rowMeta,e.metaInProgress[a.payload.bcName]=!1})).addCase(P,((e,a)=>{e.selectedCell=jo.selectedCell})).addCase(Q,((e,a)=>{var o,t,r,i,n;const{bcName:s,bcUrl:c,currentRecordData:d,rowMeta:p,cursor:u}=a.payload,m={},v={},f={},b=[];p.fields.forEach((e=>{v[e.key]=e.currentValue,e.forceActive&&b.push(e.key)})),e.pendingDataChanges[s]=null!=(o=e.pendingDataChanges[s])?o:{};const h=l(l({},d),e.pendingDataChanges[s][u]);Object.keys(h).forEach((e=>{void 0!==v[e]&&h[e]!==v[e]&&(f[e]=v[e])}));const y=l(l({},e.pendingDataChanges[s][u]),f);b.forEach((e=>{void 0!==y[e]&&(m[e]=y[e])})),e.handledForceActive[s]=null!=(t=e.handledForceActive[s])?t:{},e.handledForceActive[s][u]=null!=(r=e.handledForceActive[s][u])?r:{},Object.assign(e.handledForceActive[s][u],m),e.pendingDataChanges[s]=null!=(i=e.pendingDataChanges[s])?i:{},e.pendingDataChanges[s][u]=y,e.rowMeta[s]=null!=(n=e.rowMeta[s])?n:{},e.rowMeta[s][c]=p})).addCase(H,((e,a)=>{var o,t,r;const i=a.payload.bcName,n=l(l({},(e.pendingDataChanges[a.payload.bcName]||{})[a.payload.cursor]||{}||{}),a.payload.dataItem),s=null==(o=e.rowMeta[i])?void 0:o[a.payload.bcUrl],c={},d="target"===e.pendingValidationFailsFormat;Object.keys(n).forEach((e=>{const a=null==s?void 0:s.fields.find((a=>a.required&&a.key===e)),o=null==n[e]||""===n[e]||Array.isArray(n[e])&&0===Object.keys(n[e]).length;a&&o&&(c[e]="This field is mandatory")})),e.pendingDataChanges[a.payload.bcName]=null!=(t=e.pendingDataChanges[a.payload.bcName])?t:{},e.pendingDataChanges[a.payload.bcName][a.payload.cursor]=n,d?(null==(r=e.pendingValidationFails)?void 0:r[i])[a.payload.cursor]=c:e.pendingValidationFails=c})).addCase(z,((e,a)=>{const o=l({},e.pendingDataChanges[a.payload.bcName]);a.payload.cursors.forEach(((e,t)=>{o[e]=a.payload.dataItems[t]})),e.pendingDataChanges[a.payload.bcName]=o})).addCase(Ce,((e,a)=>{const o=l({},e.pendingDataChanges);a.payload.bcNames.forEach((e=>{const a={};Object.keys(o[e]||{}).forEach((e=>{a[e]={id:e,_associate:!1}})),o[e]=a}));const t="target"===e.pendingValidationFailsFormat,r=e.pendingValidationFails?l({},e.pendingValidationFails):{};t&&a.payload.bcNames.forEach((e=>{r[e]={}})),e.pendingDataChanges=o,e.pendingValidationFails=t?r:jo.pendingValidationFails})).addCase(Ee,((e,a)=>{})).addCase(De,((e,a)=>{})).addCase(R,((e,a)=>{e.metaInProgress[a.payload.bcName]=!1})).addCase(A,((e,a)=>{e.metaInProgress[a.payload.bcName]=!1})).addCase(V,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase(le,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase($,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase(B,((e,a)=>{var o,t,r;const i=a.payload.bcName,n=a.payload.cursor,l="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[i]=null!=(o=e.pendingDataChanges[i])?o:{},e.pendingDataChanges[i][n]={},l?(null==(t=e.pendingValidationFails)?void 0:t[i])[n]={}:e.pendingValidationFails=jo.pendingValidationFails,e.handledForceActive[i]=null!=(r=e.handledForceActive[i])?r:{},e.handledForceActive[i][n]={}})).addCase(ne,((e,a)=>{var o,t,r;const{bcName:i,cursor:n}=a.payload,l="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[i]=null!=(o=e.pendingDataChanges[i])?o:{},e.pendingDataChanges[i][n]={},l?(null==(t=e.pendingValidationFails)?void 0:t[i])[n]={}:e.pendingValidationFails=jo.pendingValidationFails,e.handledForceActive[i]=null!=(r=e.handledForceActive[i])?r:{},e.handledForceActive[i][n]={}})).addCase(me,((e,a)=>{var o,t;const r=l({},e.pendingDataChanges);for(const o in e.pendingDataChanges)a.payload&&!a.payload.bcNames.includes(o)||(r[o]={});const i="target"===e.pendingValidationFailsFormat;let n=e.pendingValidationFails?l({},e.pendingValidationFails):{};i&&((null==(t=null==(o=a.payload)?void 0:o.bcNames)?void 0:t.length)>0?a.payload.bcNames.forEach((e=>{n[e]={}})):n=jo.pendingValidationFails),e.pendingDataChanges=r,e.pendingValidationFails=i?n:jo.pendingValidationFails})).addCase(Be,(e=>{e.pendingValidationFails=jo.pendingValidationFails})).addCase(X,((e,a)=>{const{bcName:o,calleeBCName:t,calleeWidgetName:r,associateFieldKey:i,assocValueKey:n,active:l,isFilter:s,type:c,widgetName:d}=a.payload;e.popupData={widgetName:d,type:c,bcName:o,calleeBCName:t,calleeWidgetName:r,associateFieldKey:i,assocValueKey:n,active:l,isFilter:s}})).addCase(Z,((e,a)=>{var o,t;const r=null==(t=null==(o=e.widgets)?void 0:o.find((e=>e.name===a.payload.widgetName)))?void 0:t.bcName;e.popupData={type:"file-upload",bcName:r,calleeBCName:r}})).addCase(ae,((e,a)=>{e.pickMap=a.payload.map})).addCase(oe,(e=>{e.pickMap=null})).addCase(ee,(e=>{e.popupData={},e.popupData.bcName=null})).addCase(Ie,((e,a)=>{e.selectedCell={widgetName:a.payload.widgetName,rowId:a.payload.rowId,fieldKey:a.payload.fieldKey}})).addCase(v,((e,a)=>{e.pendingDataChanges=jo.pendingDataChanges,e.selectedCell=jo.selectedCell})).addCase(xe,((e,a)=>{var o,t;e.systemNotifications=null!=(o=e.systemNotifications)?o:[],e.systemNotifications.push({type:a.payload.type,message:a.payload.message,id:null==(t=e.systemNotifications)?void 0:t.length})})).addCase(je,((e,a)=>{var o;e.systemNotifications=null!=(o=e.systemNotifications)?o:[],e.systemNotifications=e.systemNotifications.filter((e=>e.id!==a.payload.id))})).addCase(Ve,((e,a)=>{e.error=a.payload.error})).addCase(se,((e,a)=>{e.modalInvoke=a.payload})).addCase($e,((e,a)=>{e.modalInvoke=null})).addCase(Ue,(e=>{e.error=null})).addCase(_,(e=>{e.selectedCell=null})),Ao={};c(Ao,{apiErrorEpic:()=>Or,bcCancelCreateDataEpic:()=>ml,bcDeleteDataEpic:()=>Gn,bcFetchDataEpic:()=>$n,bcFetchRowMetaRequestEpic:()=>Tl,bcLoadMoreEpic:()=>yn,bcNewDataEpic:()=>tn,bcSaveDataEpic:()=>Mn,bcSelectDepthRecordEpic:()=>yl,bcSelectRecordEpic:()=>Xn,changeAssociationEpic:()=>tl,changeAssociationFullEpic:()=>Sl,changeAssociationSameBcEpic:()=>Hl,changeChildrenAssociationsEpic:()=>cs,changeChildrenAssociationsSameBcEpic:()=>ms,changeDescendantsAssociationsFullEpic:()=>ys,changeLocationEpic:()=>yr,changeScreen:()=>rr,changeViewEpic:()=>Jt,clearPendingDataChangesAfterCursorChangeEpic:()=>Pt,downloadFileByUrlEpic:()=>si,downloadFileEpic:()=>Ur,drillDownEpic:()=>$t,fileUploadConfirmEpic:()=>et,getRowMetaByForceActiveEpic:()=>Dt,handleRouterEpic:()=>er,httpError401Epic:()=>_r,httpError409Epic:()=>Lr,httpError418Epic:()=>zr,httpError500Epic:()=>Zr,httpErrorDefaultEpic:()=>ti,inlinePickListFetchDataEpic:()=>as,loginByAnotherRoleEpic:()=>_i,loginDoneEpic:()=>Kt,loginDoneSessionEpic:()=>Oi,processPostInvokeConfirmEpic:()=>gi,processPostInvokeEpic:()=>mi,refreshMetaAndReloadPageEpic:()=>Hi,refreshMetaEpic:()=>xi,removeMultivalueTagEpic:()=>El,saveAssociationsActiveEpic:()=>Ll,saveAssociationsPassiveEpic:()=>is,selectScreenFailEpic:()=>Dr,selectTableCellInitEpic:()=>it,selectViewEpic:()=>xn,selectViewFailEpic:()=>wr,sendOperationAssociateEpic:()=>ft,sendOperationEpic:()=>_o,showAllTableRecordsInitEpic:()=>xt,showAssocPopupEpic:()=>Go,showFileUploadPopupEpic:()=>pt,switchRoleEpic:()=>Ei,userDrillDownChangeCursorsEpic:()=>Ir,userDrillDownEpic:()=>ur});import{catchError as Oo,concat as Po,EMPTY as Ro,filter as So,mergeMap as Vo,of as Uo}from"rxjs";import{of as $o}from"rxjs";function Bo(e,a,o,t,r){const i=Object.values(Ta).includes(null==a?void 0:a.type),n=[];return a&&n.push(_({bcName:r,postInvoke:a,widgetName:e})),i&&n.push(K({bcName:r,operationType:t,widgetName:e,postInvokeConfirm:a})),o&&n.push(q({bcName:r,operationType:t,widgetName:e,preInvoke:o})),n.map((e=>$o(e)))}var _o=(e,a,{api:o})=>e.pipe(So(U.match),So((e=>fo("none",e.payload,a.value))),Vo((e=>{var t,r,i,n,c,d,p,u,m,f;const b=a.value,h=b.screen.screenName,{bcName:y,operationType:g,widgetName:N}=e.payload,w=(null==(t=e.payload.confirmOperation)?void 0:t.type)||e.payload.confirm,C=Ha(y,!0,b),E=b.screen.bo.bc[y],D=C&&(null==(r=b.view.rowMeta[y])?void 0:r[C]),M=null==D?void 0:D.fields,F=E.cursor,I=null==(i=b.data[y])?void 0:i.find((e=>e.id===E.cursor)),k=b.screen.filters[y],x=b.screen.sorters[y],j=l({},null==(n=b.view.pendingDataChanges[y])?void 0:n[E.cursor]);for(const e in j)M.find((a=>a.key===e&&a.disabled))&&delete j[e];const T=I&&s(l({},j),{vstamp:I.vstamp}),A=(null==(u=null==(p=null==(d=null==(c=b.view.widgets)?void 0:c.find((e=>e.name===N)))?void 0:d.options)?void 0:p.actionGroups)?void 0:u.defaultSave)===e.payload.operationType&&v.match(null==(f=null==(m=e.payload)?void 0:m.onSuccessAction)?void 0:f.type),O=l(l({_action:g},so(k)),co(x));w&&(O._confirm=w);const P={widgetName:e.payload.widgetName};return o.customAction(h,C,T,P,O).pipe(Vo((a=>{var o,t;const r=null==(o=a.postActions)?void 0:o[0],i=a.preInvoke;return A?(null==(t=null==e?void 0:e.payload)?void 0:t.onSuccessAction)?Po(Uo(me({bcNames:[y]})),Uo(e.payload.onSuccessAction)):Ro:Po(Uo(B({bcName:y,cursor:F})),Uo(ce({bcName:y})),...Bo(N,r,i,g,y))})),Oo((e=>{var a,o,t,r,i,n;console.error(e);let l=null,s=null;const c=null==(a=e.response)?void 0:a.data;return(null==(o=e.response)?void 0:o.data)===Object(null==(t=e.response)?void 0:t.data)&&(s=null==(r=null==c?void 0:c.error)?void 0:r.entity,l=null==(n=null==(i=null==c?void 0:c.error)?void 0:i.popup)?void 0:n[0]),Po(Uo($({bcName:y,bcUrl:C,viewError:l,entityError:s})),Ga(e,P))})))})));import{EMPTY as qo,filter as Ko,mergeMap as Lo,of as Wo}from"rxjs";import{WidgetTypes as Yo}from"@cxbox-ui/schema";var Go=(e,a)=>e.pipe(Ko(X.match),Ko((e=>!(!e.payload.calleeBCName||!e.payload.associateFieldKey))),Lo((e=>{var o,t,r,i;const{bcName:n,calleeBCName:l}=e.payload,s=a.value,c=s.view.widgets.find((e=>e.bcName===n&&e.type===Yo.AssocListPopup)),d=null==(o=s.screen.bo.bc[l])?void 0:o.cursor,p=null==(t=s.view.pendingDataChanges[l])?void 0:t[d],u=e.payload.associateFieldKey,m=null==p?void 0:p[u];if(!(c&&p&&m&&m)||c.options&&!c.options.hierarchyFull)return qo;const v={};m.forEach((e=>{v[e.id]={id:e.id,_associate:!0,_value:e.value}}));const f=null==(r=s.data[l])?void 0:r.find((e=>e.id===d)),b=null==(i=null==f?void 0:f[u])?void 0:i.map((e=>e.id)),h=m.map((e=>e.id));return b&&b.forEach((e=>{h.includes(e)||(v[e]={id:e,_associate:!1})})),Wo(z({bcName:n,cursors:Object.keys(v),dataItems:Object.values(v)}))})));import{catchError as Jo,concat as Ho,filter as zo,mergeMap as Qo,of as Xo}from"rxjs";import{OperationTypeCrud as Zo}from"@cxbox-ui/schema";var et=(e,a,{api:o})=>e.pipe(zo(Ke.match),Qo((e=>{var t,r;const i=a.value,n=null==(t=i.view.popupData)?void 0:t.bcName,l=Ha(n,!0,i),s=null==(r=i.view.widgets.find((e=>e.bcName===n)))?void 0:r.name;return o.customAction(i.screen.screenName,l,{bulkIds:e.payload.fileIds},null,{_action:"file-upload-save"}).pipe(Qo((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0],t=e.preInvoke;return Ho(Xo(B({bcName:n,cursor:null})),Xo(ce({bcName:n})),Xo(ee(null)),...Bo(s,o,t,Zo.save,n))})),Jo((e=>(console.error(e),Ga(e)))))})));import{concat as at,filter as ot,mergeMap as tt,of as rt}from"rxjs";var it=(e,a)=>e.pipe(ot(Fe.match),tt((e=>{var o;const t=[],r=a.value,{rowId:i,fieldKey:n}=e.payload,l=r.view.widgets.find((a=>a.name===e.payload.widgetName)),s=null==l?void 0:l.bcName,c=null==(o=r.screen.bo.bc[s])?void 0:o.cursor,d=r.view.selectedCell;return i!==c&&t.push(rt(ve({bcName:s,cursor:i}))),d&&n===d.fieldKey&&i===d.rowId&&(null==l?void 0:l.name)===d.widgetName||t.push(rt(Ie({widgetName:null==l?void 0:l.name,rowId:i,fieldKey:n}))),at(...t)})));import{concat as nt,filter as lt,mergeMap as st,of as ct}from"rxjs";import{OperationTypeCrud as dt}from"@cxbox-ui/schema";var pt=(e,a)=>e.pipe(lt(U.match),lt((e=>fo(dt.fileUpload,e.payload,a.value))),st((e=>nt(ct(G({cursorsMap:{[e.payload.bcName]:null}})),ct(Z({widgetName:e.payload.widgetName}))))));import{filter as ut,map as mt}from"rxjs";import{OperationTypeCrud as vt}from"@cxbox-ui/schema";var ft=(e,a)=>e.pipe(ut(U.match),ut((e=>fo(vt.associate,e.payload,a.value))),mt((e=>X({bcName:e.payload.bcKey?`${e.payload.bcKey}`:`${e.payload.bcName}Assoc`,calleeBCName:e.payload.bcName,active:!0,calleeWidgetName:e.payload.widgetName}))));import{EMPTY as bt,concat as ht,filter as yt,mergeMap as gt,of as Nt,catchError as wt}from"rxjs";import{WidgetTypes as Ct}from"@cxbox-ui/schema";import{nanoid as Et}from"@reduxjs/toolkit";var Dt=(e,a,{api:o})=>e.pipe(yt(H.match),gt((e=>{var t,r,i,n,c;const d=a.value,p=d.view.url,{bcName:u,cursor:m,disableRetry:v}=e.payload;if(d.view.widgets.some((e=>{var a,o;return e.bcName===u&&e.type===Ct.AssocListPopup&&((null==(a=e.options)?void 0:a.hierarchySameBc)||(null==(o=e.options)?void 0:o.hierarchyFull))})))return bt;const f=d.view.widgets.find((e=>{var a;return e.name===(null==(a=d.view.popupData)?void 0:a.widgetName)&&[Ct.PickListPopup,Ct.FlatTreePopup].includes(e.type)})),b=Ha(u,!0,d),h=null==(t=d.view.pendingDataChanges[u])?void 0:t[m],y=(null==(r=d.view.handledForceActive[u])?void 0:r[m])||{},g=null==(i=d.data[u])?void 0:i.find((e=>e.id===m)),N=null==(c=null==(n=d.view.rowMeta[u])?void 0:n[b])?void 0:c.fields;let w=null;const C=ht(Nt(ee(null)),Nt(oe(null)),Nt(Oe({bcName:u}))),E=null==N?void 0:N.filter((e=>e.forceActive&&void 0!==h[e.key])).some((e=>{const a=h[e.key]!==y[e.key];return a&&(w=e.key),a})),D=Et();return E&&!v?ht(Nt(ea({request:{requestId:D,type:"force-active"}})),o.getRmByForceActive(d.screen.screenName,b,s(l({},h),{vstamp:null==g?void 0:g.vstamp})).pipe(gt((e=>{const a=[Nt(aa({requestId:D}))];return d.view.url===p&&a.push(Nt(Q({rowMeta:e,currentRecordData:g,bcName:u,bcUrl:b,cursor:m}))),f&&a.push(C),ht(...a)})),wt((e=>{var a,o,t,r,i,n;console.error(e);let l=null,s=null;const c=null==(a=e.response)?void 0:a.data;return(null==(o=e.response)?void 0:o.data)===Object(null==(t=e.response)?void 0:t.data)&&(s=null==(r=null==c?void 0:c.error)?void 0:r.entity,l=null==(n=null==(i=null==c?void 0:c.error)?void 0:i.popup)?void 0:n[0]),ht(Nt(aa({requestId:D})),d.view.url===p?ht(Nt(H({bcName:u,bcUrl:Ha(u,!0,d),cursor:m,dataItem:{[w]:null==g?void 0:g[w]},disableRetry:!0})),Nt(V({bcName:u,bcUrl:b,viewError:l,entityError:s}))):bt,Ga(e))})))):f?C:bt})));import{concat as Mt,filter as Ft,mergeMap as It,of as kt}from"rxjs";var xt=(e,a)=>e.pipe(Ft(ke.match),It((e=>{const o=[],{bcName:t,cursor:r}=e.payload,i=a.value.router;o.push(kt(G({cursorsMap:{[t]:null}})));const n=i.bcPath.slice(0,i.bcPath.indexOf(`${t}/${r}`)),c=lo(s(l({},i),{bcPath:n}));return o.push(kt(ce({bcName:t}))),o.push(kt(v({location:no(new URL(c,window.location.origin))}))),Mt(...o)})));import{EMPTY as jt,filter as Tt,mergeMap as At,of as Ot}from"rxjs";var Pt=(e,a)=>e.pipe(Tt(G.match),At((e=>{const o=a.value,t=ro(o.router.bcPath)||{},r={};return Object.entries(t).forEach((e=>{const[a,t]=e,i=o.screen.bo.bc[a];i&&(null==i?void 0:i.cursor)===t||(r[a]=t)})),Object.keys(r).length?Ot(G({cursorsMap:r})):jt})));import{concat as Rt,EMPTY as St,filter as Vt,switchMap as Ut}from"rxjs";var $t=(e,a)=>e.pipe(Vt(Y.match),Ut((e=>{var o,t;const r=a.value,i=e.payload.url,n=[];switch(e.payload.drillDownType){case ua.external:window.location.href=i;break;case ua.externalNew:/^[a-z0-9]+:\/\//i.test(i)&&window.open(i);break;case ua.relative:window.location.href=`${window.location.origin}/${i}`;break;case ua.relativeNew:window.open(`${window.location.origin}/${i}`,"_blank");break;default:const[e]=i.split("?"),a=new URL(i,window.location.origin),c=a.searchParams.get("filters"),d=a.searchParams.get("sorters");let p={},u={};try{p=null!=(o=JSON.parse(c))?o:p}catch(e){c&&console.warn("Failed to parse filters on drilldown"),p={}}try{u=null!=(t=JSON.parse(d))?t:u}catch(e){d&&console.warn("Failed to parse sorters on drilldown"),u={}}const m={};Object.keys(r.screen.filters).forEach((e=>{(""===p[e]||p[e])&&(m[e]=!0,n.push(Oe({bcName:e})))}));const f=no(a),b=f.viewName;Object.entries(p).forEach((([e,a])=>{var o;const t=null==(o=po(a))?void 0:o.map((e=>s(l({},e),{viewName:b})));null==t||t.forEach((a=>{m[e]=!0,n.push(Te({bcName:e,filter:a}))}))})),Object.entries(u).forEach((([e,a])=>{const o=uo(a);n.push(Pe({bcName:e,sorter:o})),m[e]=!0})),function(e,a,o=[]){const t=[];if(!e&&!a)return null;if(!e)return Object.keys(a);if(!a)return Object.keys(e);const r=Object.keys(a);return r.forEach((r=>{e[r]===a[r]||o.includes(r)||t.push(r)})),Object.keys(e).forEach((e=>{r.includes(e)||t.push(e)})),t}(r.router,f,["params"]).length>0||Object.keys(m).forEach((e=>{n.push(ce({bcName:e}))})),n.push(v({location:no(new URL(to(e),window.location.origin))}))}return n.length?Rt(n):St})));import{filter as Bt,of as _t,switchMap as qt}from"rxjs";var Kt=(e,a)=>e.pipe(Bt(b.match),qt((e=>{const o=a.value;if("router"===o.router.type)return _t(Me(o.router));const t=o.router.screenName,r=o.session.screens.find((e=>t?e.name===t:e.defaultScreen))||o.session.screens[0];return _t(r?N({screen:r}):w({screenName:t}))})));import{EMPTY as Lt,filter as Wt,of as Yt,switchMap as Gt}from"rxjs";var Jt=(e,a)=>e.pipe(Wt(C.match),Gt((e=>{const o=a.value,t=ro(o.router.bcPath)||{},r={};return Object.entries(t).forEach((e=>{const[a,t]=e,i=o.screen.bo.bc[a];i&&i.cursor===t||(r[a]=t)})),Object.keys(r).length?Yt(G({cursorsMap:r})):Lt})));import{catchError as Ht,EMPTY as zt,filter as Qt,mergeMap as Xt,switchMap as Zt}from"rxjs";var er=(e,a,{api:o})=>e.pipe(Qt(Me.match),Zt((e=>o.routerRequest(e.payload.path,e.payload.params).pipe(Xt((()=>zt)),Ht((e=>(console.error(e),Ga(e))))))));import{filter as ar,of as or,switchMap as tr}from"rxjs";var rr=(e,a)=>e.pipe(ar(N.match),tr((e=>{const o=a.value,t=o.router.viewName,r=o.screen.views.find((e=>e.name===t)),i=!t&&o.screen.primaryView&&o.screen.views.find((e=>e.name===o.screen.primaryView)),n=r||i||o.screen.views[0];return or(n?C(n):E({viewName:t}))})));import{catchError as ir,concat as nr,EMPTY as lr,filter as sr,mergeMap as cr,of as dr,switchMap as pr}from"rxjs";var ur=(e,a,{api:o})=>e.pipe(sr(L.match),pr((e=>{const t=a.value,{bcName:r,fieldKey:i,cursor:n}=e.payload,l=Ha(r,!0,t);return o.fetchRowMeta(t.screen.screenName,l).pipe(cr((e=>{var a,o,s,c;const d=e.fields.find((e=>e.key===i)),p=t.router,u=null==(o=null==(a=t.view.widgets.find((e=>e.bcName===r)))?void 0:a.fields.find((e=>e.key===i)))?void 0:o.drillDownKey,m=null==(c=null==(s=t.data[r])?void 0:s.find((e=>e.id===n)))?void 0:c[u];return m||(null==d?void 0:d.drillDown)||(null==d?void 0:d.drillDown)!==p.path?nr((null==d?void 0:d.drillDownType)!==ua.inner?dr(T({bcName:r,rowMeta:e,bcUrl:l,cursor:n})):lr,dr(W({bcName:r,bcUrl:l,cursor:n})),dr(Y({url:m||d.drillDown,drillDownType:d.drillDownType,route:p}))):lr})),ir((e=>(console.error(e),Ga(e)))))})));import{concat as mr,EMPTY as vr,filter as fr,mergeMap as br,of as hr}from"rxjs";var yr=(e,a)=>e.pipe(fr(v.match),br((e=>{var o,t;const r=a.value;if(!r.session.active)return vr;if("router"===r.router.type)return hr(Me(r.router));const i=r.screen.screenName,n=(null==(o=r.session.screens.find((e=>e.defaultScreen)))?void 0:o.name)||(null==(t=r.session.screens[0])?void 0:t.name),l="default"===r.router.type?n:r.router.screenName;if(l!==i){const e=r.session.screens.find((e=>e.name===l));return hr(e?N({screen:e}):w({screenName:l}))}const s=r.view.name,c=r.router.viewName,d=ro(r.router.bcPath)||{},p={};Object.entries(d).forEach((e=>{const[a,o]=e,t=r.screen.bo.bc[a];t&&(null==t?void 0:t.cursor)===o||(p[a]=o)}));const u=Object.keys(p).length,m=c!==s,v=[];if(u&&v.push(hr(G({cursorsMap:p}))),m){const e=c?r.screen.views.find((e=>e.name===c)):r.screen.primaryView?r.screen.views.find((e=>e.name===r.screen.primaryView)):r.screen.views[0];v.push(hr(e?C(e):E({viewName:c})))}return u&&!m&&Object.entries(d).forEach((e=>{const[a,o]=e;r.data[a].find((e=>e.id===o))||v.push(hr(ce({bcName:a})))})),mr(...v)})));import{filter as gr,map as Nr}from"rxjs";var wr=(e,a)=>e.pipe(gr(E.match),Nr((e=>oa({type:"error",key:"selectViewFail",message:`View is missing or unavailable for your role', ${e.payload.viewName}`,duration:15}))));import{filter as Cr,map as Er}from"rxjs";var Dr=e=>e.pipe(Cr(w.match),Er((e=>oa({type:"error",key:"selectScreenFail",message:`Screen is missing or unavailable for your role', ${e.payload.screenName}}`,duration:15}))));import{filter as Mr,map as Fr}from"rxjs";var Ir=(e,a)=>e.pipe(Mr(L.match),Fr((e=>{var o;const t=a.value,r=t.view.widgets.find((a=>a.name===e.payload.widgetName));return(null==(o=t.screen.bo.bc[null==r?void 0:r.bcName])?void 0:o.cursor)!==e.payload.cursor?G({cursorsMap:{[e.payload.bcName]:e.payload.cursor}}):Je})));import kr from"axios";import{EMPTY as xr,filter as jr,mergeMap as Tr,of as Ar}from"rxjs";var Or=e=>e.pipe(jr(Le.match),Tr((e=>{const{error:a,callContext:o}=e.payload;return a.response?Ar(We({statusCode:a.response.status,error:a,callContext:o})):kr.isCancel(a)?xr:Ar(Ve({error:{type:2}}))})));import{EMPTY as Pr,filter as Rr,mergeMap as Sr,tap as Vr}from"rxjs";var Ur=(e,a,{api:o})=>e.pipe(Rr(_e.match),Vr((e=>{const{fileId:a}=e.payload,t=document.createElement("a");t.href=`${o.fileUploadEndpoint}?id=${encodeURIComponent(a)}`,t.style.display="none",document.body.appendChild(t),setTimeout((()=>{t.click(),document.body.removeChild(t)}),100)})),Sr((()=>Pr)));import{filter as $r,map as Br}from"rxjs";var _r=e=>e.pipe($r(We.match),$r((e=>401===e.payload.statusCode)),Br((e=>g(null))));import{filter as qr,map as Kr}from"rxjs";var Lr=(e,a)=>e.pipe(qr(We.match),qr((e=>409===e.payload.statusCode)),Kr((e=>{var a,o,t;const r=(null==(t=null==(o=(null==(a=e.payload.error.response)?void 0:a.data).error)?void 0:o.popup)?void 0:t[0])||"";return oa({key:"action_edit_error",message:r,type:"buttonWarningNotification",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"OK"}}})})));import{concat as Wr,EMPTY as Yr,filter as Gr,mergeMap as Jr,of as Hr}from"rxjs";var zr=(e,a)=>e.pipe(Gr(We.match),Gr((e=>418===e.payload.statusCode)),Jr((e=>{var o,t;const{error:r,callContext:i}=e.payload,n=[],l=null==(o=r.response)?void 0:o.data;if(!l.error.popup)return Yr;if(n.push(Hr(Ve({error:{type:0,message:l.error.popup[0]}}))),null==(t=l.error.postActions)?void 0:t[0]){const e=a.value.view.widgets.find((e=>e.name===i.widgetName));n.push(Hr(_({bcName:null==e?void 0:e.bcName,postInvoke:l.error.postActions[0],widgetName:null==e?void 0:e.name})))}return Wr(...n)})));import{filter as Qr,map as Xr}from"rxjs";var Zr=(e,a)=>e.pipe(Qr(We.match),Qr((e=>500===e.payload.statusCode)),Xr((e=>{var a;const o={type:1,details:(null==(a=e.payload.error.response)?void 0:a.statusText)||"",error:e.payload.error};return Ve({error:o})})));import{filter as ei,map as ai}from"rxjs";var oi=[401,409,418,500],ti=(e,a)=>e.pipe(ei(We.match),ei((e=>!oi.includes(e.payload.statusCode))),ai((e=>{var a,o;const t={type:0,code:null==(a=e.payload.error.response)?void 0:a.status,details:null==(o=e.payload.error.response)?void 0:o.data};return Ve({error:t})})));import{EMPTY as ri,filter as ii,mergeMap as ni,tap as li}from"rxjs";var si=(e,a)=>e.pipe(ii(qe.match),li((e=>{const{url:a}=e.payload,o=document.createElement("a");o.href=a,o.style.display="none",document.body.appendChild(o),setTimeout((()=>{o.click(),document.body.removeChild(o)}),100)})),ni((()=>ri)));import{EMPTY as ci,filter as di,mergeMap as pi,of as ui}from"rxjs";var mi=(e,a)=>e.pipe(di(_.match),pi((e=>{var o;const t=a.value;switch(e.payload.postInvoke.type){case"drillDown":return ui(Y(s(l({},e.payload.postInvoke),{route:t.router,widgetName:e.payload.widgetName})));case"postDelete":{const a=[G({cursorsMap:{[e.payload.bcName]:null}})];if(null==(o=t.router.bcPath)?void 0:o.includes(`${e.payload.bcName}/`)){const o=t.router.bcPath.split(e.payload.bcName)[0]||"";a.push(v({location:no(new URL(`/screen/${t.router.screenName}/view/${t.router.viewName}/${o}`,window.location.origin))}))}else a.push(D({bcName:e.payload.bcName,widgetName:e.payload.widgetName}));return ui(...a)}case"refreshBC":{const a=e.payload.postInvoke,o=a.bc,r=t.screen.bo.bc[a.bc],i=e.payload.widgetName||"",n=t.view.infiniteWidgets||[],l=t.view.widgets.some((e=>e.bcName===o&&n.includes(e.name)));return ui(l?M({bcName:r.name,widgetName:i,from:1,to:r.page}):D({bcName:r.name,widgetName:i}))}case"showMessage":{const a=e.payload.postInvoke;return ui(xe({type:a.messageType,message:a.messageText}))}case"downloadFile":return ui(_e({fileId:e.payload.postInvoke.fileId}));case"downloadFileByUrl":return ui(qe({url:e.payload.postInvoke.url}));default:return ci}})));import{EMPTY as vi,filter as fi,mergeMap as bi,of as hi}from"rxjs";import{isAnyOf as yi}from"@reduxjs/toolkit";var gi=(e,a)=>e.pipe(fi(yi(K,q)),bi((e=>{const{bcName:a,operationType:o,widgetName:t}=e.payload,r=K.match(e)?e.payload.postInvokeConfirm:e.payload.preInvoke;switch(r.type){case"confirm":case"info":case"error":case"confirmText":return hi(se({operation:{bcName:a,operationType:o,widgetName:t},confirmOperation:r}));default:return vi}})));import{concat as Ni,filter as wi,switchMap as Ci}from"rxjs";var Ei=(e,a)=>e.pipe(wi(Ze.match),Ci((e=>Ni([g(null),f({login:"",password:"",role:e.payload.role})]))));import{catchError as Di,concat as Mi,filter as Fi,mergeMap as Ii,switchMap as ki}from"rxjs";var xi=(e,a,{api:o})=>e.pipe(Fi(He.match),Ii((()=>{const e=a.value,{router:t}=e,{activeRole:r}=e.session;return o.refreshMeta().pipe(ki((()=>Mi([ze(),g(null),f({login:"",password:"",role:r}),v({location:t})]))),Di((e=>Mi([h(e),Qe(),Ya(e)]))))})));import{EMPTY as ji,filter as Ti,switchMap as Ai}from"rxjs";var Oi=(e,a)=>e.pipe(Ti(f.match),Ai((e=>ji)));import{catchError as Pi,concat as Ri,filter as Si,mergeMap as Vi,of as Ui,switchMap as $i}from"rxjs";var Bi={401:"Invalid credentials",403:"Access denied"},_i=(e,a,{api:o})=>e.pipe(Si(f.match),Si((e=>{var a;return!!(null==(a=e.payload)?void 0:a.role)})),$i((e=>{var t;const r=null!=(t=e.payload.role)?t:"",i=r&&r!==a.value.session.activeRole;return o.loginByRoleRequest(r).pipe(Vi((e=>{var a;const o=[];if(i){const t=e.screens.find((e=>e.defaultScreen))||e.screens[0],r=null!=(a=null==t?void 0:t.primary)?a:t.meta.views[0].name,i=null==t?void 0:t.meta.views.find((e=>r===e.name));i&&o.push(v({location:no(new URL(i.url,window.location.origin))}))}return Ri([...o,b({devPanelEnabled:e.devPanelEnabled,activeRole:e.activeRole,roles:e.roles,screens:e.screens,firstName:e.firstName,lastName:e.lastName,login:e.login})])})),Pi((e=>(console.error(e),Ri(Ui(h({errorMsg:e.response?Bi[e.response.status]||"Server application unavailable":"Empty server response"})),Ga(e))))))})));import{concat as qi,EMPTY as Ki,filter as Li,of as Wi,switchMap as Yi,take as Gi,tap as Ji}from"rxjs";var Hi=(e,a)=>e.pipe(Li(Xe.match),Yi((()=>qi(Wi(He()),e.pipe(Li(b.match),Gi(1),Ji((()=>location.reload())),Yi((()=>Ki)))))));import{catchError as zi,concat as Qi,EMPTY as Xi,filter as Zi,mergeMap as en,of as an}from"rxjs";import{OperationTypeCrud as on}from"@cxbox-ui/schema";var tn=(e,a,{api:o})=>e.pipe(Zi(U.match),Zi((e=>fo(on.create,e.payload,a.value))),en((e=>{var t;const r=a.value,i=e.payload.bcName,n=null!=(t=Ha(i,!1,r))?t:"",l={widgetName:e.payload.widgetName};return o.newBcData(r.screen.screenName,n,l,{_action:e.payload.operationType}).pipe(en((a=>{var o,t;const l=a.row,s={id:null,vstamp:-1};a.row.fields.forEach((e=>{s[e.key]=e.currentValue}));const c=null==(o=a.postActions)?void 0:o[0],d=s.id;return Qi(an(P({bcName:i,dataItem:s,bcUrl:n})),an(T({bcName:i,bcUrl:`${n}/${d}`,rowMeta:l,cursor:d})),an(H({bcName:i,bcUrl:null!=(t=Ha(i,!0,r))?t:"",cursor:d,dataItem:{id:d}})),c?an(_({bcName:i,postInvoke:c,cursor:d,widgetName:e.payload.widgetName})):Xi)})),zi((e=>(console.error(e),Qi(an(R({bcName:i})),Ga(e,l))))))})));import{catchError as rn,concat as nn,filter as ln,mergeMap as sn,of as cn,race as dn}from"rxjs";import{filter as pn,mergeMap as un,of as mn,take as vn}from"rxjs";import{isAnyOf as fn}from"@reduxjs/toolkit";var bn=[C,y];function hn(e,a,o,t,r=(e=>!0)){return e.pipe(pn(fn(...a)),pn(r),un((()=>(null==o||o(),mn(t)))),vn(1))}var yn=(e,a,{api:o})=>e.pipe(ln(x.match),sn((t=>{var r,i;const n=a.value,s=t.payload.bcName,c=n.screen.bo.bc[s],{cursor:d,page:p}=c,u=(null==(r=n.view.widgets.find((e=>e.bcName===s)))?void 0:r.limit)||c.limit,m=null==(i=n.router.bcPath)?void 0:i.includes(`${s}/${d}`),v=Ha(s,m,n),f=n.screen.sorters[s],b=l(l({_page:p,_limit:u},so(n.screen.filters[s]||[])),co(f)),h=o.createCanceler(),y=hn(e,bn,h.cancel,k({bcName:s,bcUrl:v})),g=o.fetchBcData(n.screen.screenName,v,b,h.cancelToken).pipe(sn((e=>{var a;const o=null==(a=n.data[s])?void 0:a.map((e=>e.id)),t=[...n.data[s],...e.data.filter((e=>!o.includes(e.id)))];return cn(I({bcName:s,data:t,bcUrl:v,hasNext:e.hasNext}))})),rn((e=>(console.error(e),nn(cn(k({bcName:s,bcUrl:v})),Ga(e))))));return dn(y,g)})));import{catchError as gn,concat as Nn,EMPTY as wn,filter as Cn,mergeMap as En,of as Dn}from"rxjs";var Mn=(e,a,{api:o})=>e.pipe(Cn(U.match),Cn((e=>fo(Fa.save,e.payload,a.value))),En((e=>{var t,r,i,n;const c=a.value,d=e.payload.bcName,p=null!=(t=Ha(d,!0,c))?t:"",u=e.payload.widgetName,m=c.screen.bo.bc[d].cursor,v=c.data[d].find((e=>e.id===m)),f=l({},null==(r=c.view.pendingDataChanges[d])?void 0:r[m]),b=p&&(null==(i=c.view.rowMeta[d])?void 0:i[p]),h=null==(n=c.view.widgets.find((e=>e.name===u)))?void 0:n.options;if(b){const e=b.fields;for(const a in f)e.find((e=>e.key===a&&e.disabled))&&delete f[a]}const y=Object.entries(bo(d,c.view.widgets,c.screen.bo.bc)).map((e=>{const[a,o]=e;return D({bcName:a,widgetName:o[0]})})),g={widgetName:e.payload.widgetName};return o.saveBcData(c.screen.screenName,p,s(l({},f),{vstamp:null==v?void 0:v.vstamp}),g).pipe(En((a=>{var o;const t=null==(o=a.postActions)?void 0:o[0],r=a.record;return Nn(Dn(ne({bcName:d,cursor:m,dataItem:r})),Dn(j({widgetName:u,bcName:d})),Dn(...y),t?Dn(_({bcName:d,widgetName:u,postInvoke:t,cursor:r.id})):wn,e.payload.onSuccessAction?Dn(e.payload.onSuccessAction):wn)})),gn((a=>{var o,t,r,i,n,l,s,c;console.error(a);let u=wn;e.payload.onSuccessAction&&!(null==h?void 0:h.disableNotification)&&(u=Dn(oa({key:"data_autosave_undo",type:"buttonWarningNotification",message:"There are pending changes. Please save them or cancel.",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"Cancel changes",actionsForClick:[me({bcNames:[d]})]}}})));let m=null,v=null;const f=null==(o=a.response)?void 0:o.data;return(null==(t=a.response)?void 0:t.data)===Object(null==(r=a.response)?void 0:r.data)&&(v=null!=(n=null==(i=null==f?void 0:f.error)?void 0:i.entity)?n:v,m=null!=(c=null==(s=null==(l=null==f?void 0:f.error)?void 0:l.popup)?void 0:s[0])?c:m),Nn(Dn(le({bcName:d,bcUrl:p,viewError:m,entityError:v})),u,Ga(a,g))})))})));import{EMPTY as Fn,filter as In,mergeMap as kn}from"rxjs";var xn=(e,a)=>e.pipe(In(C.match),kn((e=>{try{const e=a.value,o={};return e.view.widgets.filter((e=>!wa.includes(e.type))).forEach((a=>{if(a.bcName){let t=a.bcName,r=e.screen.bo.bc[a.bcName].parentName;for(;r;)t=r,r=e.screen.bo.bc[r].parentName;o[t]||(o[t]=a)}})),Object.entries(o).map((([e,a])=>D({widgetName:a.name,bcName:e})))}catch(e){return console.error(`selectView Epic:: ${e}`),Fn}})));import{catchError as jn,concat as Tn,EMPTY as An,filter as On,mergeMap as Pn,of as Rn,race as Sn}from"rxjs";import{WidgetTypes as Vn}from"@cxbox-ui/schema";import{isAnyOf as Un}from"@reduxjs/toolkit";var $n=(e,a,{api:o})=>e.pipe(On(Un(D,M,X,ce,Se)),Pn((t=>Sn(...(()=>{var r,i,n,s,c,d,p,u;const m=a.value,{widgetName:v=""}=t.payload,{widgets:f,infiniteWidgets:b}=m.view,h=null!=(r=null==f?void 0:f.find((e=>e.name===v)))?r:null==f?void 0:f.find((e=>e.bcName===t.payload.bcName));if(!h)return[An];const y=t.payload.bcName,g=m.screen.bo.bc[y],{cursor:N,page:w=1}=g,C=null!=(n=(null==(i=null==f?void 0:f.find((e=>e.bcName===y)))?void 0:i.limit)||g.limit)?n:5,E=m.screen.sorters[y];if(X.match(t)&&y===t.payload.calleeBCName)return[An];const F=null==f?void 0:f.find((e=>e.bcName===h.bcName&&e.type===Vn.AssocListPopup&&function(e){var a,o;return(null==(a=e.options)?void 0:a.hierarchy)||(null==(o=e.options)?void 0:o.hierarchyFull)}(e))),x=null==(s=m.view.widgets)?void 0:s.find((e=>{var a;return e.bcName===h.bcName&&e.type===Vn.AssocListPopup&&(null==(a=e.options)?void 0:a.hierarchyFull)})),T=null==(c=m.router.bcPath)?void 0:c.includes(`${y}/${N}`),A=Ha(y,T,m),O=l(l({_page:w,_limit:C},so(x?[]:m.screen.filters[y]||[])),co(E));ce.match(t)&&(v&&(null==b?void 0:b.includes(v))||(null==(p=null==(d=null==f?void 0:f.filter((e=>e.bcName===y)))?void 0:d.find((e=>null==b?void 0:b.includes(e.name))))?void 0:p.name))&&(O._page=1,O._limit=C*w),M.match(t)&&(O._page=t.payload.from||1,O._limit=(t.payload.to||w-O._page)*C),(D.match(t)&&t.payload.ignorePageLimit||(null==(u=null==F?void 0:F.options)?void 0:u.hierarchyFull))&&(O._limit=0);const P=o.createCanceler(),R=hn(e,bn,P.cancel,k({bcName:y,bcUrl:A})),S=hn(e,[ve],P.cancel,k({bcName:y,bcUrl:A}),(e=>g.parentName===e.payload.bcName)),V=o.fetchBcData(m.screen.screenName,A,O,P.cancelToken).pipe(Pn((e=>{var a,o;const r=((e,a,o)=>{var r;const{bcName:i}=t.payload,n=D.match(t)?t.payload.keepDelta:void 0,l=null==(r=e[0])?void 0:r.id;return Rn(G({cursorsMap:{[i]:e.some((e=>e.id===a))?a:l},keepDelta:o||n}))})(e.data,N,!!F),i=null==f?void 0:f.some((e=>{var a;return(null==(a=m.screen.bo.bc[e.bcName])?void 0:a.parentName)===y&&!wa.includes(e.type)})),n=a=>{var o,t,r,i,n,l,s,c,d;if((null==(o=a.showCondition)?void 0:o.bcName)===(null==(t=m.screen.bo.bc[a.bcName])?void 0:t.parentName)){let e=null==(i=m.screen.bo.bc[null==(r=a.showCondition)?void 0:r.bcName])?void 0:i.parentName,o=e===y;for(;!o&&e;)e=null==(n=m.screen.bo.bc[e])?void 0:n.parentName,o=e===y;if(o)return!0}const p=y===(null==(l=a.showCondition)?void 0:l.bcName)?e.data:m.data[null==(s=a.showCondition)?void 0:s.bcName];return ho(a.showCondition,null==(d=m.screen.bo.bc[null==(c=a.showCondition)?void 0:c.bcName])?void 0:d.cursor,p,m.view.pendingDataChanges)},l=(!n(h)||wa.includes(h.type))&&!i,s=(null==(a=m.view.popupData)?void 0:a.bcName)!==h.bcName;if(l&&s)return An;const c=(null==(o=e.data)?void 0:o.length)?((e,a,o,r)=>{const{bcName:i}=t.payload,{ignorePageLimit:n,keepDelta:l}=D.match(t)?t.payload:{ignorePageLimit:void 0,keepDelta:void 0};return Tn(...Object.entries(bo(i,e,a)).filter((([a,o])=>{const i=e.find((e=>o.includes(e.name)&&!wa.includes(e.type)&&r(e)));return!!X.match(t)||!!i})).map((([a,i])=>{const s=e.find((e=>i.includes(e.name)&&!wa.includes(e.type)&&r(e)));return Rn(D({bcName:a,widgetName:null==s?void 0:s.name,ignorePageLimit:n||X.match(t),keepDelta:o||l}))})))})(f,m.screen.bo.bc,!!F,n):An,d=Rn(j({widgetName:v,bcName:y}));return Tn(r,Rn(I({bcName:y,data:e.data,bcUrl:A,hasNext:e.hasNext})),d,c)})),jn((e=>(console.error(e),Tn(Rn(k({bcName:t.payload.bcName,bcUrl:A})),Ga(e))))));return[R,S,V]})()))));import{catchError as Bn,concat as _n,EMPTY as qn,filter as Kn,mergeMap as Ln,of as Wn}from"rxjs";import{OperationTypeCrud as Yn}from"@cxbox-ui/schema";var Gn=(e,a,{api:o})=>e.pipe(Kn(U.match),Kn((e=>fo(Yn.delete,e.payload,a.value))),Ln((e=>{const t=e.payload.widgetName,r=a.value,i=e.payload.bcName,n=r.screen.bo.bc[i].cursor,l=Ha(i,!0,r),s={widgetName:e.payload.widgetName},c="target"===r.view.pendingValidationFailsFormat;return o.deleteBcData(r.screen.screenName,l,s).pipe(Ln((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return _n(c?Wn(me({bcNames:[i]})):qn,Wn(D({bcName:i,widgetName:t})),o?Wn(_({bcName:i,postInvoke:o,cursor:n,widgetName:t})):qn)})),Bn((e=>(console.error(e),_n(Wn(S({bcName:i})),Ga(e,s))))))})));import{concat as Jn,filter as Hn,mergeMap as zn,of as Qn}from"rxjs";var Xn=(e,a)=>e.pipe(Hn(ve.match),zn((e=>{const{bcName:o,cursor:t}=e.payload,r=Object.entries(bo(o,a.value.view.widgets,a.value.screen.bo.bc)).map((a=>{const[o,t]=a;return D({bcName:o,widgetName:t[0],ignorePageLimit:e.payload.ignoreChildrenPageLimit,keepDelta:e.payload.keepDelta})}));return Jn(Qn(G({cursorsMap:{[o]:t},keepDelta:e.payload.keepDelta})),Qn(j({widgetName:"",bcName:o})),r)})));import{concat as Zn,filter as el,mergeMap as al,of as ol}from"rxjs";var tl=(e,a)=>e.pipe(el(be.match),al((e=>{var o,t,r,i,n;const c=a.value,d=e.payload.dataItem._associate,p=e.payload.bcName,u=[ol(H({bcName:p,bcUrl:Ha(p,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],m=c.view.widgets.find((a=>a.name===e.payload.widgetName)),v=e.payload.bcName===m.bcName,f={bcName:m.bcName,radio:null==(o=m.options)?void 0:o.hierarchyRadio,fields:m.fields},b=null==(t=m.options)?void 0:t.hierarchy,h=v?f:null==b?void 0:b.find((a=>a.bcName===e.payload.bcName)),y=null==(r=m.options)?void 0:r.hierarchyGroupSelection,g=null==(i=m.options)?void 0:i.hierarchyTraverse,N=null==b?void 0:b.slice(b.findIndex((a=>a.bcName===e.payload.bcName))+1).map((e=>e.bcName));y&&h.radio&&!d&&u.push(ol(Ce({bcNames:N})));const w=v?null:(null==b?void 0:b.find(((a,o)=>{var t;return(null==(t=b[o+1])?void 0:t.bcName)===e.payload.bcName})))||f,C=null==(n=c.data[null==w?void 0:w.bcName])?void 0:n.find((e=>e.id===c.screen.bo.bc[null==w?void 0:w.bcName].cursor));if(w&&g&&d&&(h.radio&&u.push(ol(Ce({bcNames:[w.bcName]}))),u.push(ol(be({bcName:w.bcName,widgetName:e.payload.widgetName,dataItem:s(l({},C),{_associate:!0,_value:null==C?void 0:C[w.assocValueKey||e.payload.assocValueKey]}),assocValueKey:e.payload.assocValueKey})))),w&&g&&!d){const a=c.data[e.payload.bcName],o=a.filter((a=>a.id!==e.payload.dataItem.id)).every((e=>!e._associate)),t=c.view.pendingDataChanges[e.payload.bcName],r=!t||!Object.values(t).find((o=>!0===o._associate&&o.id!==e.payload.dataItem.id&&a.find((e=>e.id===o.id))));o&&r&&u.push(ol(be({bcName:w.bcName,widgetName:e.payload.widgetName,dataItem:s(l({},C),{_associate:!1}),assocValueKey:e.payload.assocValueKey})))}return Zn(...u)})));import{catchError as rl,concat as il,EMPTY as nl,filter as ll,mergeMap as sl,of as cl}from"rxjs";import{OperationTypeCrud as dl}from"@cxbox-ui/schema";import{isAnyOf as pl}from"@reduxjs/toolkit";var ul=pl(U),ml=(e,a,{api:o})=>e.pipe(ll(ul),ll((e=>fo(dl.cancelCreate,e.payload,a.value))),sl((e=>{var t,r;const i=a.value,n=i.screen.screenName,c=e.payload.bcName,d=Ha(c,!0,i),p=i.screen.bo.bc[c],u=null==p?void 0:p.cursor,m={widgetName:e.payload.widgetName},v=null==(t=i.data[c])?void 0:t.find((e=>e.id===p.cursor)),f=null==(r=i.view.pendingDataChanges[c])?void 0:r[p.cursor],b=v&&s(l({},f),{vstamp:v.vstamp}),h={[e.payload.bcName]:null};return o.customAction(n,d,b,m,{_action:e.payload.operationType}).pipe(sl((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return il(cl(B({bcName:c,cursor:u})),cl(G({cursorsMap:h})),o?cl(_({bcName:c,postInvoke:o,cursor:u,widgetName:m.widgetName})):nl)})),rl((e=>(console.error(e),il(cl(S({bcName:c})),Ga(e,m))))))})));import{concat as vl,filter as fl,mergeMap as bl,of as hl}from"rxjs";var yl=e=>e.pipe(fl(fe.match),bl((e=>{const{bcName:a,cursor:o,depth:t}=e.payload;return vl(hl(J({bcName:a,depth:t,cursor:o})),hl(D({bcName:a,depth:t+1,widgetName:"",ignorePageLimit:!0})))})));import{concat as gl,filter as Nl,mergeMap as wl,of as Cl}from"rxjs";var El=(e,a)=>e.pipe(Nl(ie.match),wl((e=>{var o,t,r,i,n,c,d,p,u,m;const v=a.value,{bcName:f,cursor:b,popupBcName:h,associateFieldKey:y}=e.payload,g=v.view.widgets.find((e=>e.bcName===h&&wa.includes(e.type)));let N=((null==v?void 0:v.data[h])||[]).map((e=>{var a;const o=null==(a=v.view.pendingDataChanges[h])?void 0:a[e.id];return l(l({},e),o)}));const w=N.find((a=>a.id===e.payload.removedItem.id)),C=e.payload.dataItem.map((e=>e.id));let E=[];if(null==(o=null==g?void 0:g.options)?void 0:o.hierarchyGroupDeselection){(null==(t=null==g?void 0:g.options)?void 0:t.hierarchyTraverse)&&(N=yo(N));const a=N.filter((e=>e.parentId===(null==w?void 0:w.id)));E=[null==w?void 0:w.id,...a.filter((e=>C.includes(e.id))).map((e=>e.id))],(null==(r=null==g?void 0:g.options)?void 0:r.hierarchyTraverse)&&(go(a,E),E=N.filter((e=>E.includes(e.id)&&C.includes(e.id))).map((e=>e.id)));const o=N.find((e=>e.id===(null==w?void 0:w.parentId))),n=N.filter((e=>e.parentId===(null==o?void 0:o.id))),c=n.every((e=>E.includes(e.id)||!C.includes(e.id)));if(o&&c)if(null==(i=null==g?void 0:g.options)?void 0:i.hierarchyTraverse){const a=[];if(go(n,a),a.every((e=>E.includes(e)||!C.includes(e))))return gl(Cl(ie(s(l({},e.payload),{removedItem:{id:o.id,value:null}}))))}else E.push(o.id)}if(null==(n=null==g?void 0:g.options)?void 0:n.hierarchyFull)return Cl(H({bcName:f,bcUrl:Ha(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem.filter((e=>!E.includes(e.id)))}}));if(null==(c=null==g?void 0:g.options)?void 0:c.hierarchy){const a=null!=(m=null==(u=null==(p=null==(d=null==g?void 0:g.options)?void 0:d.hierarchy)?void 0:p.find((a=>{var o;return null==(o=v.view.pendingDataChanges[a.bcName])?void 0:o[e.payload.removedItem.id]})))?void 0:u.bcName)?m:f;return gl(Cl(H({bcName:a,bcUrl:Ha(a,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),Cl(H({bcName:f,bcUrl:Ha(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))}return gl(Cl(H({bcName:h,bcUrl:Ha(h,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),Cl(H({bcName:f,bcUrl:Ha(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))})));import{catchError as Dl,concat as Ml,filter as Fl,map as Il,mergeMap as kl,of as xl,race as jl}from"rxjs";var Tl=(e,a,{api:o})=>e.pipe(Fl(j.match),kl((t=>{var r,i;const n=a.value,l=n.screen.screenName,s=t.payload.bcName,c=null!=(r=n.screen.bo.bc[s].cursor)?r:"",d=null!=(i=Ha(s,!0,n))?i:"",p=o.createCanceler(),u=hn(e,bn,p.cancel,A({bcName:s})),m=hn(e,[ve],p.cancel,A({bcName:s}),(e=>n.screen.bo.bc[s].parentName===e.payload.bcName)),v=o.fetchRowMeta(l,d,void 0,p.cancelToken).pipe(Il((e=>T({bcName:s,rowMeta:e,bcUrl:d,cursor:c}))),Dl((e=>(console.error(e),Ml(xl(A({bcName:s})),Ga(e))))));return jl(u,m,v)})));import{concat as Al,filter as Ol,mergeMap as Pl,of as Rl}from"rxjs";var Sl=(e,a)=>e.pipe(Ol(ye.match),Pl((e=>{var o,t,r,i,n;const c=a.value,d=[],p=e.payload.assocValueKey||(null==(o=c.view.popupData)?void 0:o.assocValueKey),u=e.payload.bcName,m=c.data[u],v=e.payload.dataItem._associate,f=e.payload.depth||1,b=f-1,h=f>1&&m.find((a=>a.id===e.payload.dataItem.parentId)),y=c.view.widgets.find((a=>a.name===e.payload.widgetName)),g=null==(t=y.options)?void 0:t.hierarchyTraverse,N=null==(r=y.options)?void 0:r.hierarchyRadio,w=null==(i=y.options)?void 0:i.hierarchyGroupDeselection,C=m.filter((e=>e.level===f&&(1===e.level||e.parentId===(null==h?void 0:h.id))));if(N&&w&&1===f)if(v){const a=c.view.pendingDataChanges[u],o=m.find((o=>{if(1===o.level&&o.id!==e.payload.dataItem.id){const e=null==a?void 0:a[o.id];if((null==e?void 0:e._associate)||!e&&o._associate)return!0}return!1}));o&&d.push(Rl(ye({bcName:u,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},o),{_associate:!1}),assocValueKey:p})))}else d.push(Rl(we({bcName:u,parentId:e.payload.dataItem.id,depth:f+1,assocValueKey:p,selected:!1})));if(d.push(Rl(H({bcName:e.payload.bcName,bcUrl:Ha(e.payload.bcName,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))),b&&g&&v&&d.push(Rl(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:s(l({},h),{_associate:!0,_value:null==h?void 0:h[p]}),assocValueKey:p}))),b&&g&&!v){const a=c.view.pendingDataChanges[u],o=!a||!Object.values(a).find((a=>!0===a._associate&&a.id!==e.payload.dataItem.id&&C.find((e=>e.id===a.id)))),t=a&&(null==(n=Object.values(a))?void 0:n.filter((e=>!1===e._associate)).map((e=>e.id)));C.filter((a=>a.id!==e.payload.dataItem.id&&!(null==t?void 0:t.includes(a.id)))).every((e=>!e._associate))&&o&&d.push(Rl(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:s(l({},h),{_associate:!1}),assocValueKey:p})))}return Al(...d)})));import{catchError as Vl,concat as Ul,EMPTY as $l,filter as Bl,mergeMap as _l,of as ql,switchMap as Kl}from"rxjs";var Ll=(e,a,{api:o})=>e.pipe(Bl(te.match),Bl((e=>{var o;return null==(o=a.value.view.popupData)?void 0:o.active})),Kl((e=>{var t,r;const i=a.value,n=null==(t=i.view.popupData)?void 0:t.calleeBCName,l=null==(r=i.view.popupData)?void 0:r.calleeWidgetName,s=e.payload.bcNames,c=Ha(n,!0,i),d=s.length?{_bcName:s[s.length-1]}:{};return o.associate(i.screen.screenName,c,Object.values(i.view.pendingDataChanges[s[0]]||{}).filter((e=>e._associate)),d).pipe(_l((e=>{const a=e.postActions[0],o=i.view.widgets.find((e=>e.bcName===n));return Ul(a?ql(_({bcName:n,postInvoke:a,widgetName:null==o?void 0:o.name})):$l,ql(me({bcNames:s})),ql(ce({bcName:n,widgetName:l})))})),Vl((e=>(console.error(e),$l))))})));import{concat as Wl,filter as Yl,mergeMap as Gl,of as Jl}from"rxjs";var Hl=(e,a)=>e.pipe(Yl(he.match),Gl((e=>{var o,t,r,i,n,c;const d=a.value,p=e.payload.bcName,u=[Jl(H({bcName:p,bcUrl:Ha(p,!0,d),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],m=e.payload.dataItem._associate,v=e.payload.depth||1,f=v-1,b=null==(o=d.view.widgets.find((a=>a.name===e.payload.widgetName)).options)?void 0:o.hierarchyTraverse,h=v>1?null==(t=d.depthData[v])?void 0:t[p]:d.data[p],y=f?f>1?null==(i=null==(r=d.screen.bo.bc[p].depthBc)?void 0:r[f])?void 0:i.cursor:d.screen.bo.bc[p].cursor:null,g=y?f>1?null==(c=null==(n=d.depthData[f])?void 0:n[p])?void 0:c.find((e=>e.id===y)):d.data[p].find((e=>e.id===y)):null;return f&&b&&m&&u.push(Jl(he({bcName:p,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},g),{_associate:!0,_value:null==g?void 0:g[e.payload.assocValueKey]}),assocValueKey:e.payload.assocValueKey}))),f&&b&&!m&&h.filter((a=>a.id!==e.payload.dataItem.id)).every((e=>!e._associate))&&u.push(Jl(he({bcName:p,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},g),{_associate:!1}),assocValueKey:e.payload.assocValueKey}))),Wl(...u)})));import{catchError as zl,filter as Ql,mergeMap as Xl,of as Zl,race as es}from"rxjs";var as=(e,a,{api:o})=>e.pipe(Ql(F.match),Xl((t=>{const{bcName:r,searchSpec:i,searchString:n}=t.payload,l=Ha(r,!1,a.value),s=o.createCanceler(),c=hn(e,bn,s.cancel,k({bcName:r,bcUrl:l})),d=o.fetchBcData(a.value.screen.screenName,l,{[i+".contains"]:n},s.cancelToken).pipe(Xl((e=>Zl(I({bcName:r,data:e.data,bcUrl:l})))),zl((e=>(console.error(e),Zl(k({bcName:t.payload.bcName,bcUrl:l}))))));return es(c,d)})));import{filter as os,of as ts,switchMap as rs}from"rxjs";var is=(e,a)=>e.pipe(os(te.match),os((()=>{var e;return!(null==(e=a.value.view.popupData)?void 0:e.active)})),rs((e=>{var o,t;const r=a.value,{calleeBCName:i=e.payload.calleeBcName,associateFieldKey:n=e.payload.associateFieldKey}=null!=(o=r.view.popupData)?o:{},l=r.screen.bo.bc[i].cursor,s=null!=(t=r.data[i].find((e=>e.id===l))[n])?t:[],c=[];e.payload.bcNames.forEach((e=>{Object.entries(r.view.pendingDataChanges[e]||{}).forEach((([e,a])=>{c.push(a)}))}));const d=c.filter((e=>!s.find((a=>a.id===e.id))&&e._associate)).map((e=>({id:e.id,options:{},value:e._value}))),p=s.filter((e=>{const a=c.find((a=>a.id===e.id));return!a||!1!==(null==a?void 0:a._associate)})).concat(...d);return ts(H({bcName:i,bcUrl:Ha(i,!0,r),cursor:l,dataItem:{[n]:p}}))})));import{filter as ns,mergeMap as ls,of as ss}from"rxjs";var cs=(e,a,{})=>e.pipe(ns(ge.match),ls((e=>{const o=a.value.data[e.payload.bcName];return ss(z({bcName:e.payload.bcName,cursors:o.map((e=>e.id)),dataItems:o.map((a=>s(l({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))})));import{filter as ds,mergeMap as ps,of as us}from"rxjs";var ms=(e,a)=>e.pipe(ds(Ne.match),ps((e=>{var o;const t=(null==(o=a.value.depthData[e.payload.depth])?void 0:o[e.payload.bcName])||[];return us(z({bcName:e.payload.bcName,cursors:t.map((e=>e.id)),dataItems:t.map((a=>s(l({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))})));import{concat as vs,filter as fs,mergeMap as bs,of as hs}from"rxjs";var ys=(e,a)=>e.pipe(fs(we.match),bs((e=>{const o=e.payload.depth,t=a.value.data[e.payload.bcName],r=(t||[]).filter((a=>a.level===o&&a.parentId===e.payload.parentId)),i=[hs(z({bcName:e.payload.bcName,cursors:r.map((e=>e.id)),dataItems:r.map((a=>s(l({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))];return r.forEach((a=>{t.find((e=>e.parentId===a.id))&&i.push(hs(we(s(l({},e.payload),{parentId:a.id,depth:o+1}))))})),vs(...i)})));import gs from"axios";import{from as Ns,map as ws,takeWhile as Cs}from"rxjs";function Es(e){var a;if(null==(a=e.data)?void 0:a.redirectUrl){let a=e.data.redirectUrl;return a.startsWith("/")||a.match("^http(.?)://")||(a=`${window.location.pathname}#/${a}`),a.startsWith("/")&&!a.startsWith("//")&&(a=`${window.location.origin}${a}`),window.location.replace(a),!1}return!0}var Ds=class{constructor(e){d(this,"instance",gs.create({responseType:"json",headers:{Pragma:"no-cache","Cache-Control":"no-cache, no-store, must-revalidate"}})),this.instance=e}get(e,a,o){return Ns(this.instance.get(e,a)).pipe(Cs(Es),ws((e=>e.data)))}put(e,a,o){return Ns(this.instance.put(e,a)).pipe(Cs(Es),ws((e=>e.data)))}post(e,a,o,t){return Ns(this.instance.post(e,a)).pipe(Cs(Es),ws((e=>e.data)))}delete(e,a,o,t){return Ns(this.instance.delete(e,a)).pipe(Cs(Es),ws((e=>e.data)))}};import Ms from"axios";import{EMPTY as Fs,expand as Is,map as ks,reduce as xs}from"rxjs";var js=class{constructor(e){d(this,"api$"),this.api$=new Ds(e)}routerRequest(e,a){return this.api$.get(qa(e,a))}fetchBcData(e,a,o={},t){const r=0===o._limit,i=_a(io`data/${e}/`+a,s(l({},o),{_page:r?void 0:"_page"in o?o._page:1,_limit:r?void 0:"_limit"in o?o._limit:30}));return this.api$.get(i,{cancelToken:t})}fetchBcDataAll(e,a,o={}){let t=1;return this.fetchBcData(e,a,s(l({},o),{_page:t})).pipe(Is((r=>r.hasNext?this.fetchBcData(e,a,s(l({},o),{_page:++t})):Fs)),xs(((e,a)=>[...e,...a.data]),[]))}fetchRowMeta(e,a,o,t){const r=_a(io`row-meta/${e}/`+a,o);return this.api$.get(r,{cancelToken:t}).pipe(ks((e=>{var a;return null==(a=e.data)?void 0:a.row})))}newBcData(e,a,o,t){const r=_a(io`row-meta-new/${e}/`+a,t);return this.api$.get(r,void 0,o).pipe(ks((e=>e.data)))}saveBcData(e,a,o,t,r){const i=_a(io`data/${e}/`+a,r);return this.api$.put(i,{data:o},t).pipe(ks((e=>e.data)))}deleteBcData(e,a="",o,t){const r=_a(io`data/${e}/`+a,t);return this.api$.delete(r,o).pipe(ks((e=>e.data)))}customAction(e,a,o,t,r){const i=_a(io`custom-action/${e}/`+a,r);return this.api$.post(i,{data:o||{}},void 0,t).pipe(ks((e=>e.data)))}associate(e,a,o,t){const r=Array.isArray(o)?o.map((e=>({id:e.id,vstamp:e.vstamp,associated:e._associate}))):o,i=_a(io`associate/${e}/`+a,t);return this.api$.post(i,r).pipe(ks((e=>e.data)))}getRmByForceActive(e,a,o,t){const r=_a(io`row-meta/${e}/`+(null!=a?a:""),t);return this.api$.post(r,{data:o}).pipe(ks((e=>e.data.row)))}get fileUploadEndpoint(){const e=this.api$.instance;return e.defaults.baseURL?e.defaults.baseURL.endsWith("/")?`${e.defaults.baseURL}file`:`${e.defaults.baseURL}/file`:"/file"}refreshMeta(){return this.api$.get(io`bc-registry/refresh-meta`)}loginByRoleRequest(e){return this.api$.get(io`login?role=${e}`)}createCanceler(){let e;const a=new Ms.CancelToken((a=>{e=a}));return{cancel:e,cancelToken:a}}};function Ts(e,a,o){var t;const r=null==(t=e.view.pendingDataChanges[a])?void 0:t[o];return r&&!Object.keys(r).includes("_associate")&&Object.values(r).length>0}var As={autosave:({getState:e,dispatch:a})=>o=>t=>{var r,i,n,l,s,c,d;const p=e(),u=U.match(t),m=u&&Ia.includes(t.payload.operationType),f=Fe.match(t),b=!(u&&t.payload.operationType===Fa.save),h=u&&t.payload.bcName,y=Object.keys(p.view.pendingDataChanges).filter((e=>e!==h)).filter((e=>function(e,a){var o,t;return Object.keys(null!=(t=null==(o=e.view.pendingDataChanges)?void 0:o[a])?t:{}).some((o=>Ts(e,a,o)))}(p,e))).length>0,g=m&&y,N=p.view.selectedCell,w=N&&f&&(N.widgetName!==t.payload.widgetName||N.rowId!==t.payload.rowId),C=null==(r=p.view.widgets)?void 0:r.find((e=>{var a,o;return null==(o=null==(a=null==e?void 0:e.options)?void 0:a.actionGroups)?void 0:o.defaultSave})),E=null==(n=null==(i=p.screen.bo.bc)?void 0:i[null==C?void 0:C.bcName])?void 0:n.cursor,D=null==(c=null==(s=null==(l=p.view)?void 0:l.pendingDataChanges)?void 0:s[null==C?void 0:C.bcName])?void 0:c[E];return C&&v.match(t)&&Object.keys(D||{}).length>0?o(U({bcName:C.bcName,operationType:(null==(d=C.options)?void 0:d.actionGroups).defaultSave,widgetName:C.name,onSuccessAction:t})):b&&(g||w)?function(e,a,o){var t,r,i;const n=a.getState(),l=a.dispatch,s=Object.keys(n.view.pendingDataChanges),c=(null==(t=e.payload)?void 0:t.bcName)&&Ts(n,e.payload.bcName,null==(r=n.screen.bo.bc[e.payload.bcName])?void 0:r.cursor)?s.findIndex((a=>{var o;return a===(null==(o=e.payload)?void 0:o.bcName)})):s.findIndex((e=>{var a;return Ts(n,e,null==(a=n.screen.bo.bc[e])?void 0:a.cursor)})),d=s[c];if(c>-1&&s.splice(c,1),d){s.forEach((e=>{var a,o;const t=null==(a=n.view.widgets)?void 0:a.find((a=>a.bcName===e)),r=null==(o=n.screen.bo.bc[e])?void 0:o.cursor;Ts(n,e,r)&&l(U({bcName:e,operationType:Fa.save,widgetName:null==t?void 0:t.name}))}));const a=null==(i=n.view.widgets)?void 0:i.find((e=>e.bcName===d));return o(U({bcName:d,operationType:Fa.save,widgetName:null==a?void 0:a.name,onSuccessAction:e}))}return o(e)}(t,{getState:e,dispatch:a},o):o(t)},requiredFields:({getState:e,dispatch:a})=>o=>t=>{var r,i,n,l;const s=e();if(U.match(t)){const{bcName:e,operationType:c,widgetName:d}=t.payload,p=null==(r=s.screen.bo.bc[e])?void 0:r.cursor;if(p){const r=Ha(e,!0,s),u=null==(i=s.data[e])?void 0:i.find((e=>e.id===p)),m=r&&(null==(n=s.view.rowMeta[e])?void 0:n[r]),v=null==(l=s.view.pendingDataChanges[e])?void 0:l[p],f=s.view.widgets.find((e=>e.name===d));if(function(e,a){let o=!1;return a?(o=vo(a).some((a=>a.type===e&&a.autoSaveBefore)),o):(console.error('rowMeta is missing in the middle of "sendOperation" action'),o)}(c,null==m?void 0:m.actions)){const r={};s.view.widgets.filter((e=>e.bcName===(null==f?void 0:f.bcName))).forEach((e=>{const a=e.fields;e.fields&&e.fields.forEach((e=>{Da(e)&&e.fields.forEach((e=>a.push(e)))})),a.forEach((e=>{var a;const o=null==(a=null==m?void 0:m.fields)?void 0:a.find((a=>a.key===e.key));r[e.key]||!o||o.hidden||(r[e.key]=o)}))}));const i=function(e,a,o){const t={};return o.forEach((o=>{const r=null==a?void 0:a[o.key],i=void 0!==r?r:null==e?void 0:e[o.key];let n=!1;(null==i||""===i||Array.isArray(i)&&!i.length||i&&"object"==typeof i&&!Object.keys(i).length)&&(n=!0),o.required&&n&&(t[o.key]=Array.isArray(i)?[]:null)})),Object.keys(t).length>0?t:null}(u,v,Object.values(r));return i&&Na.includes(null==f?void 0:f.type)&&a(Fe({widgetName:d,rowId:p,fieldKey:Object.keys(i)[0]})),o(i?H({bcName:e,bcUrl:Ha(e,!0,s),cursor:p,dataItem:i}):t)}if(function(e,a){var o;if("target"!==e.view.pendingValidationFailsFormat&&e.view.pendingValidationFails&&Object.keys(e.view.pendingValidationFails).length)return!0;let t=!1;const r=null==(o=e.view.pendingValidationFails)?void 0:o[a],i=r&&Object.keys(r);if(!i)return!1;let n=0;for(;n<i.length;n++)if(Object.keys(r[i[n]]).length){t=!0;break}return t}(s,e))return oa({key:"requiredFieldsMissing",type:"buttonWarningNotification",message:"Required fields are missing",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"Cancel changes",actionsForClick:[me(null),Be(null)]}}})}}return o(t)},preInvoke:({getState:e})=>a=>o=>{var t,r,i;if(U.match(o)){const n=e(),{operationType:l,widgetName:s,confirm:c}=o.payload,d=null==(t=n.view.widgets.find((e=>e.name===s)))?void 0:t.bcName,p=Ha(d,!0,n),u=p&&(null==(r=n.view.rowMeta[d])?void 0:r[p]),m=u&&vo(u.actions),v=null==(i=null==m?void 0:m.find((e=>e.type===l)))?void 0:i.preInvoke;return a(v&&!c?q({bcName:d,operationType:l,widgetName:s,preInvoke:v}):o)}return a(o)},popup:({getState:e})=>a=>o=>{var t,r,i;if(X.match(o)){const n=e(),c=o.payload.bcName,d=null==(r=null==(t=n.view.widgets.find((e=>e.bcName===c)))?void 0:t.options)?void 0:r.displayedValueKey,p=null!=(i=o.payload.assocValueKey)?i:d;return a(d?X(s(l({},o.payload),{assocValueKey:p})):o)}return a(o)}};export{js as Api,u as actions,Ao as epics,da as interfaces,As as middlewares,p as reducers,$a as utils};
2
2
  //# sourceMappingURL=cxbox-ui-core.modern.production.min.js.map
@@ -54,6 +54,7 @@ export interface Session {
54
54
  errorMsg?: string;
55
55
  pendingRequests?: PendingRequest[];
56
56
  notifications: Notification[];
57
+ isMetaRefreshing: boolean;
57
58
  }
58
59
  export interface LoginResponse extends CxboxResponse {
59
60
  devPanelEnabled?: boolean;
@@ -0,0 +1,19 @@
1
+ import { AxiosError } from 'axios';
2
+ interface ApiCallContext {
3
+ widgetName: string;
4
+ }
5
+ export declare function createApiError(error: AxiosError, context?: ApiCallContext): {
6
+ payload: {
7
+ error: AxiosError<unknown, any>;
8
+ callContext: import("./api").ApiCallContext;
9
+ };
10
+ type: string;
11
+ };
12
+ export declare function createApiErrorObservable(error: AxiosError, context?: ApiCallContext): import("rxjs").Observable<{
13
+ payload: {
14
+ error: AxiosError<unknown, any>;
15
+ callContext: import("./api").ApiCallContext;
16
+ };
17
+ type: string;
18
+ }>;
19
+ export {};
@@ -1,4 +1,5 @@
1
1
  export * from './api';
2
+ export * from './apiError';
2
3
  export * from './strings';
3
4
  export * from './history';
4
5
  export * from './filters';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cxbox-ui/core",
3
- "version": "1.37.2-alpha.9",
3
+ "version": "1.37.3-alpha.0",
4
4
  "description": "CXBox RTK business logic",
5
5
  "author": "cxbox",
6
6
  "license": "Apache-2.0",