@cxbox-ui/core 1.37.2-alpha.1 → 1.37.2-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/actions/index.d.ts +12 -17
- package/dist/api/ObservableApi.d.ts +10 -2
- package/dist/api/ObservableApiWrapper.d.ts +1 -1
- package/dist/cxbox-ui-core.cjs.development.js +649 -221
- package/dist/cxbox-ui-core.cjs.production.min.js +1 -1
- package/dist/cxbox-ui-core.esm.js +722 -286
- package/dist/cxbox-ui-core.modern.development.js +715 -285
- package/dist/cxbox-ui-core.modern.js +715 -285
- package/dist/cxbox-ui-core.modern.production.min.js +1 -1
- package/dist/epics/screen/apiErrorEpic.d.ts +0 -1
- package/dist/index.d.ts +1 -0
- package/dist/interfaces/bc.d.ts +5 -4
- package/dist/interfaces/widget.d.ts +2 -1
- package/dist/middlewares/autosaveMiddleware.d.ts +2 -17
- package/dist/middlewares/index.d.ts +2 -12
- package/dist/middlewares/popupMiddleware.d.ts +2 -0
- package/dist/middlewares/preInvokeMiddleware.d.ts +2 -5
- package/dist/middlewares/requiredFieldsMiddleware.d.ts +3 -6
- package/dist/utils/api.d.ts +1 -10
- package/dist/utils/bc.d.ts +1 -1
- package/dist/utils/cancelRequestEpic.d.ts +1 -1
- package/dist/utils/combineMiddlewares.d.ts +1 -12
- package/dist/utils/filters.d.ts +2 -2
- package/dist/utils/strings.d.ts +2 -2
- package/package.json +2 -2
|
@@ -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,s=(a,o,t)=>o in a?e(a,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):a[o]=t,n=(e,a)=>{for(var o in a||(a={}))r.call(a,o)&&s(e,o,a[o]);if(t)for(var o of t(a))i.call(a,o)&&s(e,o,a[o]);return e},c=(e,t)=>a(e,o(t)),l=(a,o)=>{for(var t in o)e(a,t,{get:o[t],enumerable:!0})},d=(e,a,o)=>(s(e,"symbol"!=typeof a?a+"":a,o),o),p={};l(p,{createDataReducerBuilderManager:()=>ia,createDepthDataReducerBuilderManager:()=>na,createRouterReducerBuilderManager:()=>fo,createScreenReducerBuilderManager:()=>yo,createSessionReducerBuilderManager:()=>No,createViewReducerBuilderManager:()=>Eo,dataInitialState:()=>ra,initialDepthDataState:()=>sa,initialRouterState:()=>mo,initialScreenState:()=>vo,initialSessionState:()=>go,initialViewState:()=>Co});var u={};l(u,{addNotification:()=>ea,addPendingRequest:()=>Xe,apiError:()=>Le,bcAddFilter:()=>ke,bcAddSorter:()=>Oe,bcCancelPendingChanges:()=>me,bcChangeCursors:()=>G,bcChangeDepthCursor:()=>H,bcChangePage:()=>Se,bcDeleteDataFail:()=>S,bcFetchDataFail:()=>x,bcFetchDataPages:()=>M,bcFetchDataRequest:()=>D,bcFetchDataSuccess:()=>I,bcFetchRowMeta:()=>T,bcFetchRowMetaFail:()=>A,bcFetchRowMetaSuccess:()=>k,bcForceUpdate:()=>le,bcLoadMore:()=>P,bcNewData:()=>j,bcNewDataFail:()=>R,bcNewDataSuccess:()=>O,bcRemoveAllFilters:()=>je,bcRemoveFilter:()=>Ae,bcRemoveSorter:()=>Re,bcSaveDataFail:()=>ne,bcSaveDataSuccess:()=>se,bcSelectDepthRecord:()=>be,bcSelectRecord:()=>fe,bulkUploadFiles:()=>Ke,changeAssociation:()=>ve,changeAssociationFull:()=>ye,changeAssociationSameBc:()=>he,changeAssociations:()=>re,changeChildrenAssociations:()=>ge,changeChildrenAssociationsSameBc:()=>Ne,changeDataItem:()=>J,changeDataItems:()=>z,changeDescendantsAssociationsFull:()=>we,changeLocation:()=>f,clearValidationFails:()=>_e,closeConfirmModal:()=>$e,closeNotification:()=>Te,closeViewError:()=>Be,closeViewPopup:()=>ee,downloadFile:()=>Ue,downloadFileByUrl:()=>qe,drillDown:()=>Y,dropAllAssociations:()=>Ce,dropAllAssociationsFull:()=>De,dropAllAssociationsSameBc:()=>Ee,emptyAction:()=>He,exportState:()=>Ge,forceActiveChangeFail:()=>V,forceActiveRmUpdate:()=>Q,handleRouter:()=>Me,httpError:()=>We,inlinePickListFetchDataRequest:()=>F,login:()=>b,loginDone:()=>v,loginFail:()=>h,logout:()=>y,logoutDone:()=>g,operationConfirmation:()=>ce,processPostInvoke:()=>U,processPostInvokeConfirm:()=>K,processPreInvoke:()=>q,refreshMeta:()=>Je,refreshMetaAndReloadPage:()=>ze,removeMultivalueTag:()=>ie,removeNotifications:()=>aa,removePendingRequest:()=>Ze,saveAssociations:()=>te,selectScreen:()=>N,selectScreenFail:()=>w,selectTableCell:()=>Ie,selectTableCellInit:()=>Fe,selectView:()=>C,selectViewFail:()=>E,sendOperation:()=>B,sendOperationFail:()=>$,sendOperationSuccess:()=>_,showAllTableRecordsInit:()=>xe,showFileUploadPopup:()=>Z,showNotification:()=>Pe,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 f=m("changeLocation"),b=m("login"),v=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"),x=m("bcFetchDataFail"),P=m("bcLoadMore"),T=m("bcFetchRowMeta"),k=m("bcFetchRowMetaSuccess"),A=m("bcFetchRowMetaFail"),j=m("bcNewData"),O=m("bcNewDataSuccess"),R=m("bcNewDataSuccess"),S=m("bcDeleteDataFail"),V=m("forceActiveChangeFail"),B=m("sendOperation"),$=m("sendOperationFail"),_=m("sendOperationSuccess"),U=m("processPostInvoke"),q=m("processPreInvoke"),K=m("processPostInvokeConfirm"),L=m("userDrillDown"),W=m("userDrillDownSuccess"),Y=m("drillDown"),G=m("bcChangeCursors"),H=m("bcChangeDepthCursor"),J=m("changeDataItem"),z=m("changeDataItem"),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"),se=m("bcSaveDataSuccess"),ne=m("bcSaveDataFail"),ce=m("operationConfirmation"),le=m("bcForceUpdate"),de=m("uploadFile"),pe=m("uploadFileDone"),ue=m("uploadFileFailed"),me=m("bcCancelPendingChanges"),fe=m("bcSelectRecord"),be=m("bcSelectDepthRecord"),ve=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"),xe=m("showAllTableRecordsInit"),Pe=m("showNotification"),Te=m("closeNotification"),ke=m("bcAddFilter"),Ae=m("bcRemoveFilter"),je=m("bcRemoveAllFilters"),Oe=m("bcAddSorter"),Re=m("bcRemoveSorter"),Se=m("bcChangePage"),Ve=m("showViewError"),Be=m("closeViewError"),$e=m("closeConfirmModal"),_e=m("clearValidationFails"),Ue=m("downloadFile"),qe=m("downloadFileByUrl"),Ke=m("bulkUploadFiles"),Le=m("apiError"),We=m("httpError"),Ye=m("switchDebugMode"),Ge=m("exportState"),He=m("emptyAction"),Je=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(O,((e,a)=>{e[a.payload.bcName]=[...e[a.payload.bcName]||ta,a.payload.dataItem]})).addCase(se,((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(k,((e,a)=>{const o=a.payload.cursor;if(!o)return;const t=(e[a.payload.bcName]||ta).find((e=>e.id===o)),r=c(n({},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=>{})),sa={},na=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=>{})),ca={};l(ca,{AppNotificationType:()=>la,ApplicationErrorType:()=>fa,DrillDownType:()=>da,FieldType:()=>ua,FilterType:()=>xa,OperationPostInvokeConfirmType:()=>Ia,OperationPostInvokeType:()=>Fa,OperationPreInvokeType:()=>Ma,OperationTypeCrud:()=>Ca,PaginationMode:()=>wa,PendingValidationFailsFormat:()=>ma,PopupWidgetTypes:()=>ha,RouteType:()=>pa,TableLikeWidgetTypes:()=>va,coreOperations:()=>Ea,isCustomWidget:()=>ya,isCustomWidgetConfiguration:()=>ga,isOperationGroup:()=>Da,isViewNavigationCategory:()=>Ta,isViewNavigationGroup:()=>ka,isViewNavigationItem:()=>Pa,isWidgetFieldBlock:()=>Na});var la=(e=>(e.success="success",e.info="info",e.warning="warning",e.error="error",e))(la||{});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||{}),fa=(e=>(e[e.BusinessError=0]="BusinessError",e[e.SystemError=1]="SystemError",e[e.NetworkError=2]="NetworkError",e))(fa||{});import{WidgetTypes as ba}from"@cxbox-ui/schema";var va=[ba.List,ba.DataGrid,ba.AssocListPopup,ba.PickListPopup,ba.FlatTree,ba.FlatTreePopup],ha=[ba.PickListPopup,ba.AssocListPopup,ba.FlatTreePopup];function ya(e){return!!e&&!("component"in e)}function ga(e){return e&&"component"in e}function Na(e){return!!e&&"blockId"in e}var wa=(e=>(e.page="page",e.loadMore="loadMore",e))(wa||{});import{OperationTypeCrud as Ca}from"@cxbox-ui/schema";var Ea=[Ca.create,Ca.save,Ca.delete,Ca.associate,Ca.cancelCreate,Ca.fileUpload];function Da(e){return Array.isArray(e.actions)}var Ma=(e=>(e.confirm="confirm",e.info="info",e.error="error",e))(Ma||{}),Fa=(e=>(e.refreshBC="refreshBC",e.downloadFile="downloadFile",e.downloadFileByUrl="downloadFileByUrl",e.drillDown="drillDown",e.openPickList="openPickList",e.showMessage="showMessage",e.postDelete="postDelete",e))(Fa||{}),Ia=(e=>(e.confirm="confirm",e.confirmText="confirmText",e))(Ia||{}),xa=(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))(xa||{});function Pa(e){return!!e&&"viewName"in e}function Ta(e){return!!e&&"categoryName"in e}function ka(e){return!!e&&"child"in e&&!("categoryName"in e)}var Aa={};function ja(e){return e.includes("?")?e+"&":e+"?"}function Oa(e,a){return a?Ra(e,function(e){const a=n({},e);return Object.keys(a).reduce(((e,a)=>(e[a]||"number"==typeof e[a]||delete e[a],e)),a)}(a)):e}function Ra(e,a){if(!a)return e;const o=new URLSearchParams(a).toString();return`${ja(e)}${o&&`${o}`}`}function Sa(e){return e.defaults.baseURL?e.defaults.baseURL.endsWith("/")?`${e.defaults.baseURL}file`:`${e.defaults.baseURL}/file`:"/file"}function Va(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 Ba(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 s=r;for(;s.parentName;)s=t[s.parentName],i.push(`${s.name}/${s.cursor}`);return i.reverse().join("/")}function $a(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}l(Aa,{addTailControlSequences:()=>ja,applyParams:()=>Oa,applyRawParams:()=>Ra,assignTreeLinks:()=>so,breadthFirstSearch:()=>po,buildBcUrl:()=>Ba,buildSearchResultTree:()=>co,buildUrl:()=>Ha,checkShowCondition:()=>io,defaultBuildURL:()=>za,defaultParseURL:()=>Ja,deleteUndefinedFromObject:()=>uo,escapedSrc:()=>Wa,flattenOperations:()=>oo,getBcChildren:()=>ro,getDescendants:()=>no,getFieldTitle:()=>Ka,getFileUploadEndpoint:()=>Sa,getFilterType:()=>ao,getFilters:()=>Qa,getSorters:()=>Xa,getTemplate:()=>Va,makeRelativeUrl:()=>Ya,matchOperationRole:()=>to,parseBcCursors:()=>Ga,parseFilters:()=>Za,parseSorters:()=>eo,presort:()=>lo,splitBcUrl:()=>$a,splitIntoTokens:()=>La});var _a=/\${([^{}]+)}/g,Ua=(e,a)=>e?e.replace(_a,((e,o)=>{const[t,r]=o.split(":");return String((null==a?void 0:a[t])||r||"")})):"",qa=e=>!!e&&null!==e.match(_a);function Ka(e,a){return qa(e)?Ua(e,a):e}function La(e,a){const o=a instanceof RegExp?a:Wa(a);return e.split(o)}function Wa(e){return new RegExp(`(${null==e?void 0:e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")})`,"gi")}function Ya(e){return e.startsWith("/")?e:`/${e}`}function Ga(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 Ha(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=Va(e,a);throw new Error(`Неверный тип подстановочного знака в ${o}, index: ${t}, value: ${JSON.stringify(r)}`)}o+=encodeURIComponent(r)}}return o+=e[e.length-1],o}function Ja(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,s=null,n=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,s=t[3]),n=t.slice(e).map(encodeURIComponent).join("/")}return{type:r,path:a,params:o,screenName:i,viewName:s,bcPath:n}}function za(e){return`/screen/${e.screenName}/view/${e.viewName}/${e.bcPath}`}function Qa(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 Xa(e){if(!e||!e.length)return null;const a={};return e.forEach(((e,o)=>{a[`_sort.${o}.${e.direction}`]=e.fieldName})),a}function Za(e){const a=[],o=new URL(e).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 eo(e){if(!e||!e.length)return null;const a=[],o=new URL(e).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 ao(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 oo(e){const a=[];return null==e||e.forEach((e=>{Da(e)?e.actions.forEach((e=>{a.push(e)})):a.push(e)})),a}function to(e,a,o){var t,r;if(a.operationType===e)return!0;const i=Ba(a.bcName,!0,o),s=oo(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?Ea.every((e=>e!==a.operationType&&e!==(null==s?void 0:s.actionRole))):(null==s?void 0:s.actionRole)===e}function ro(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){const o=a.options.hierarchy.map((e=>e.bcName));if(e!==a.bcName&&!o.includes(e))return[];const t=o.findIndex((a=>a===e));return[o[t+1],a.name]}(e,a);o&&(t[o]=[...t[o]||[],r])})),t}function io(e,a,o,t){var r,i;const{bcName:s,isDefault:n,params:c}=e||{};if(!e||Array.isArray(e)||n)return!0;const l=a&&(null==o?void 0:o.find((e=>e.id===a)));if(!l)return!1;const d=null==(i=null==(r=null==t?void 0:t[s])?void 0:r[a])?void 0:i[c.fieldKey];return void 0!==d?d===c.value:(null==l?void 0:l[c.fieldKey])===c.value}function so(e){const a=e.map((e=>n({},e))),o={},t=[];return a.forEach((r=>{if(!r.parentId||"0"===r.parentId)return;let i=o[r.parentId];if("number"!=typeof i&&(i=e.findIndex((e=>e.id===r.parentId)),o[r.parentId]=i),-1===i)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[i],a[i].children?a[i].children.push(r):a[i].children=[r]})),t.length?a.filter((e=>!t.includes(e.parentId))):a}function no(e,a){e.forEach((e=>{a.push(e.id),e.children&&no(e.children,a)}))}function co(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 lo(e){const a=[];return e.filter((e=>1===e.level)).forEach((e=>{a.push(e.id),e.children&&no(e.children,a)})),a.map((a=>e.find((e=>e.id===a))))}function po(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 s=i.filter((e=>!e[t])).find((e=>a(e)));if(s)return{node:s,depth:o+1};let n=o;return i.some((e=>{const o=po(e,a,n+1,null!=t?t:"child");return s=null==o?void 0:o.node,n=null==o?void 0:o.depth,null==o?void 0:o.node})),s?{node:s,depth:n}:null}function uo(e){Object.keys(e).forEach((a=>{void 0===e[a]&&delete e[a]}))}var mo={type:"default",path:"/",params:null,screenName:null},fo=e=>(new oa).addCase(v,((e,a)=>{e=n(n({},e),a.payload)})).addCase(f,((e,a)=>{const{url:o,route:t}=a.payload;if(o){const a=new URL(o);e=n(n({},e),Ja(a))}null!==t&&(e=n(n({},e),t))}));import{OperationTypeCrud as bo}from"@cxbox-ui/schema";var vo={screenName:"",bo:{activeBcName:"",bc:{}},cachedBc:{},views:[],primaryView:"",filters:{},sorters:{}},ho=[bo.associate,bo.fileUpload],yo=e=>(new oa).addCase(N,((e,a)=>{const o={},t={},r={};a.payload.screen.meta.bo.bc.forEach((e=>{o[e.name]=e;const a=eo(e.defaultSort),i=Za(e.defaultFilter);a&&(t[e.name]=a),i&&(r[e.name]=i)})),e.screenName=a.payload.screen.name,e.primaryView=a.payload.screen.meta.primary,e.views=a.payload.screen.meta.views,e.bo={activeBcName:null,bc:o},e.sorters=n(n({},e.sorters),t),e.filters=n(n({},e.filters),r)})).addCase(w,((e,a)=>{e.screenName=a.payload.screenName,e.views=[]})).addCase(D,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0})).addCase(P,((e,a)=>{const o=e.bo.bc[a.payload.bcName];o.page+=1,o.loading=!0})).addCase(C,((e,a)=>{const o={};Array.from(new Set(a.payload.widgets.map((e=>e.bcName)))).filter((a=>e.bo.bc[a])).forEach((a=>{o[a]=c(n({},e.bo.bc[a]),{page:1})})),e.bo.bc=n(n({},e.bo.bc),o)})).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(x,((e,a)=>{Object.values(e.bo.bc).some((e=>e.name===a.payload.bcName))&&(e.bo.bc[a.payload.bcName].loading=!1,e.cachedBc[a.payload.bcName]=a.payload.bcUrl)})).addCase(B,((e,a)=>{ho.includes(a.payload.operationType)||(e.bo.bc[a.payload.bcName].loading=!0)})).addCase(O,((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]=c(n({},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]=c(n({},e.bo.bc[a.name]),{cursor:null}),t[a.name]=null)})),Object.assign(e.bo.bc,o),Object.assign(e.cachedBc,t)})).addCase(H,((e,a)=>{1===a.payload.depth?e.bo.bc[a.payload.bcName].cursor=a.payload.cursor:e.bo.bc[a.payload.bcName].depthBc[a.payload.depth].cursor=a.payload.cursor})).addCase(fe,((e,a)=>{e.bo.bc[a.payload.bcName].cursor=a.payload.cursor})).addCase(le,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0,e.cachedBc[a.payload.bcName]=null})).addCase(ke,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=t,i=e.filters[o]||[],s=i.find((e=>e.fieldName===t.fieldName&&e.type===t.type)),l=s?i.map((e=>e===s?c(n({},s),{value:r.value}):e)):[...i,r];e.bo.bc[o].page=1,e.filters[o]=l})).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=c(n({},e.filters),{[o]:r});r.length||delete i[o],e.bo.bc[a.payload.bcName].page=1,e.filters=i})).addCase(je,((e,a)=>{delete e.filters[a.payload.bcName],e.bo.bc[a.payload.bcName].page=1})).addCase(Oe,((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)=>{e.bo.bc[a.payload.bcName].page=1,e.bo.bc[a.payload.bcName].loading=a.payload.bcName!==a.payload.calleeBCName})).addCase(_,((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(se,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(ne,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})),go={devPanelEnabled:!1,activeRole:null,roles:null,firstName:"",lastName:"",login:"",debugMode:!1,exportStateEnabled:!1,active:!1,logout:!1,loginSpin:!1,errorMsg:null,screens:[],pendingRequests:[],notifications:[]},No=e=>(new oa).addCase(b,(e=>{e.loginSpin=!0,e.errorMsg=null})).addCase(v,((e,a)=>{(e=n(n({},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)=>{e.pendingRequests.push(a.payload.request)})).addCase(Ze,((e,a)=>{e.pendingRequests=e.pendingRequests.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 wo}from"@cxbox-ui/schema";var Co={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},Eo=e=>(new oa).addCase(C,((e,a)=>{e.rowMeta=Co.rowMeta,Object.assign(e,a.payload)})).addCase(T,((e,a)=>{e.metaInProgress[a.payload.bcName]=!0})).addCase(P,((e,a)=>{const o=e.infiniteWidgets||[];void 0!==a.payload.widgetName&&o.push(a.payload.widgetName),e.infiniteWidgets=Array.from(new Set(o))})).addCase(B,((e,a)=>{a.payload.operationType===wo.create&&(e.metaInProgress[a.payload.bcName]=!0)})).addCase(k,((e,a)=>{e.rowMeta[a.payload.bcName][a.payload.bcUrl]=a.payload.rowMeta,e.metaInProgress[a.payload.bcName]=!1})).addCase(O,((e,a)=>{e.selectedCell=Co.selectedCell})).addCase(Q,((e,a)=>{const{bcName:o,bcUrl:t,currentRecordData:r,rowMeta:i,cursor:s}=a.payload,c={},l={},d={},p=[];i.fields.forEach((e=>{l[e.key]=e.currentValue,e.forceActive&&p.push(e.key)}));const u=n(n({},r),e.pendingDataChanges[o][s]);Object.keys(u).forEach((e=>{void 0!==l[e]&&u[e]!==l[e]&&(d[e]=l[e])}));const m=n(n({},e.pendingDataChanges[o][s]),d);p.forEach((e=>{void 0!==m[e]&&(c[e]=m[e])})),Object.assign(e.handledForceActive[o][s],c),e.pendingDataChanges[o][s]=m,e.rowMeta[o][t]=i})).addCase(J,((e,a)=>{var o;const t=a.payload.bcName,r=n(n({},(e.pendingDataChanges[a.payload.bcName]||{})[a.payload.cursor]||{}||{}),a.payload.dataItem),i=Ba(t,!0),s=null==(o=e.rowMeta[t])?void 0:o[i],c={},l="target"===e.pendingValidationFailsFormat;Object.keys(r).forEach((e=>{const a=null==s?void 0:s.fields.find((a=>a.required&&a.key===e)),o=null==r[e]||""===r[e]||Array.isArray(r[e])&&0===Object.keys(r[e]).length;a&&o&&(c[e]="This field is mandatory")})),e.pendingDataChanges[a.payload.bcName][a.payload.cursor]=r,l?e.pendingValidationFails[t][a.payload.cursor]=c:e.pendingValidationFails=c})).addCase(z,((e,a)=>{const o=n({},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=n({},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=n({},e.pendingValidationFails);t&&a.payload.bcNames.forEach((e=>{r[e]={}})),e.pendingDataChanges=o,e.pendingValidationFails=t?r:Co.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)=>{const{bcName:o,bcUrl:t,entityError:r}=a.payload,i={};r&&Object.entries(r.fields).forEach((([e,a])=>{i[e]=a})),e.rowMeta[o][t].errors=i})).addCase(ne,((e,a)=>{const{bcName:o,bcUrl:t,entityError:r}=a.payload,i={};r&&Object.entries(r.fields).forEach((([e,a])=>{i[e]=a})),e.rowMeta[o][t].errors=i})).addCase($,((e,a)=>{const{bcName:o,bcUrl:t,entityError:r}=a.payload,i={};r&&Object.entries(r.fields).forEach((([e,a])=>{i[e]=a})),e.rowMeta[o][t].errors=i})).addCase(_,((e,a)=>{const{bcName:o,cursor:t}=a.payload,r="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[o][t]={},r?e.pendingValidationFails[o][t]={}:e.pendingValidationFails=Co.pendingValidationFails,e.handledForceActive[o][t]={}})).addCase(se,((e,a)=>{const{bcName:o,cursor:t}=a.payload,r="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[o][t]={},r?e.pendingValidationFails[o][t]={}:e.pendingValidationFails=Co.pendingValidationFails,e.handledForceActive[o][t]={}})).addCase(me,((e,a)=>{var o,t;const r=n({},e.pendingDataChanges);for(const o in e.pendingDataChanges)a.payload&&!a.payload.bcNames.includes(o)||(r[o]={});const i="target"===e.pendingValidationFailsFormat;let s=n({},e.pendingValidationFails);i&&((null==(t=null==(o=a.payload)?void 0:o.bcNames)?void 0:t.length)>0?a.payload.bcNames.forEach((e=>{s[e]={}})):s=Co.pendingValidationFails),e.pendingDataChanges=r,e.pendingValidationFails=i?s:Co.pendingValidationFails})).addCase(_e,(e=>{e.pendingValidationFails=Co.pendingValidationFails})).addCase(X,((e,a)=>{const{bcName:o,calleeBCName:t,calleeWidgetName:r,associateFieldKey:i,assocValueKey:s,active:n,isFilter:c,type:l,widgetName:d}=a.payload;e.popupData={widgetName:d,type:l,bcName:o,calleeBCName:t,calleeWidgetName:r,associateFieldKey:i,assocValueKey:s,active:n,isFilter:c}})).addCase(Z,((e,a)=>{var o;const t=null==(o=e.widgets.find((e=>e.name===a.payload.widgetName)))?void 0:o.bcName;e.popupData={type:"file-upload",bcName:t,calleeBCName:t}})).addCase(ae,((e,a)=>{e.pickMap=a.payload.map})).addCase(oe,(e=>{e.pickMap=null})).addCase(ee,(e=>{e.popupData.bcName=null})).addCase(Ie,((e,a)=>{e.selectedCell={widgetName:a.payload.widgetName,rowId:a.payload.rowId,fieldKey:a.payload.fieldKey}})).addCase(f,((e,a)=>{e.pendingDataChanges=Co.pendingDataChanges,e.selectedCell=Co.selectedCell})).addCase(Pe,((e,a)=>{e.systemNotifications.push({type:a.payload.type,message:a.payload.message,id:e.systemNotifications.length})})).addCase(Te,((e,a)=>{e.systemNotifications=e.systemNotifications.filter((e=>e.id!==a.payload.id))})).addCase(Ve,((e,a)=>{e.error=a.payload.error})).addCase(ce,((e,a)=>{e.modalInvoke=a.payload})).addCase($e,((e,a)=>{e.modalInvoke=null})).addCase(Be,(e=>{e.error=null})).addCase(U,(e=>{e.selectedCell=null})),Do={};l(Do,{apiErrorEpic:()=>Dr,bcCancelCreateDataEpic:()=>on,bcDeleteDataEpic:()=>Ss,bcFetchDataEpic:()=>xs,bcFetchRowMetaRequestEpic:()=>Nn,bcLoadMoreEpic:()=>ns,bcNewDataEpic:()=>Hi,bcSaveDataEpic:()=>fs,bcSelectDepthRecordEpic:()=>cn,bcSelectRecordEpic:()=>Us,changeAssociationEpic:()=>Ys,changeAssociationFullEpic:()=>Mn,changeAssociationSameBcEpic:()=>Bn,changeChildrenAssociationsEpic:()=>Xn,changeChildrenAssociationsSameBcEpic:()=>oc,changeDescendantsAssociationsFullEpic:()=>nc,changeLocationEpic:()=>cr,changeScreen:()=>Ht,changeViewEpic:()=>Bt,clearPendingDataChangesAfterCursorChangeEpic:()=>Mt,downloadFileByUrlEpic:()=>Xr,downloadFileEpic:()=>Pr,drillDownEpic:()=>Pt,fileUploadConfirmEpic:()=>Wo,getRowMetaByForceActiveEpic:()=>bt,handleRouterEpic:()=>Lt,httpError401Epic:()=>Ar,httpError409Epic:()=>Rr,httpError418Epic:()=>Ur,httpError500Epic:()=>Lr,httpErrorDefaultEpic:()=>Gr,inlinePickListFetchDataEpic:()=>Ln,knownHttpErrors:()=>Er,loginByAnotherRoleEpic:()=>Ai,loginDoneEpic:()=>jt,loginDoneSessionEpic:()=>Di,processPostInvokeConfirmEpic:()=>li,processPostInvokeEpic:()=>ti,refreshMetaAndReloadPageEpic:()=>_i,refreshMetaEpic:()=>Ni,removeMultivalueTagEpic:()=>mn,saveAssociationsActiveEpic:()=>jn,saveAssociationsPassiveEpic:()=>Hn,selectScreenFailEpic:()=>fr,selectTableCellInitEpic:()=>zo,selectViewEpic:()=>ys,selectViewFailEpic:()=>pr,sendOperationAssociateEpic:()=>st,sendOperationEpic:()=>jo,showAllTableRecordsInitEpic:()=>Nt,showAssocPopupEpic:()=>$o,showFileUploadPopupEpic:()=>ot,switchRoleEpic:()=>mi,userDrillDownChangeCursorsEpic:()=>hr,userDrillDownEpic:()=>or});import{catchError as Mo,concat as Fo,EMPTY as Io,filter as xo,mergeMap as Po,of as To}from"rxjs";import{of as ko}from"rxjs";function Ao(e,a,o,t,r){const i=Object.values(Ia).includes(null==a?void 0:a.type),s=[];return a&&s.push(U({bcName:r,postInvoke:a,widgetName:e})),i&&s.push(K({bcName:r,operationType:t,widgetName:e,postInvokeConfirm:a})),o&&s.push(q({bcName:r,operationType:t,widgetName:e,preInvoke:o})),s.map((e=>ko(e)))}var jo=(e,a,{api:o})=>e.pipe(xo(B.match),xo((e=>to("none",e.payload,a.value))),Po((e=>{var t,r,i,s,l,d,p,u,m,b;const v=a.value,h=v.screen.screenName,{bcName:y,operationType:g,widgetName:N}=e.payload,w=(null==(t=e.payload.confirmOperation)?void 0:t.type)||e.payload.confirm,C=Ba(y,!0),E=v.screen.bo.bc[y],D=C&&(null==(r=v.view.rowMeta[y])?void 0:r[C]),M=null==D?void 0:D.fields,F=E.cursor,I=null==(i=v.data[y])?void 0:i.find((e=>e.id===E.cursor)),x=v.screen.filters[y],P=v.screen.sorters[y],T=null==(s=v.view.pendingDataChanges[y])?void 0:s[E.cursor];for(const e in T)M.find((a=>a.key===e&&a.disabled))&&delete T[e];const k=I&&c(n({},T),{vstamp:I.vstamp}),A=(null==(u=null==(p=null==(d=null==(l=v.view.widgets)?void 0:l.find((e=>e.name===N)))?void 0:d.options)?void 0:p.actionGroups)?void 0:u.defaultSave)===e.payload.operationType&&f.match(null==(b=null==(m=e.payload)?void 0:m.onSuccessAction)?void 0:b.type),j=n(n({_action:g},Qa(x)),Xa(P));return w&&(j._confirm=w),o.customAction(h,C,k,{widgetName:e.payload.widgetName},j).pipe(Po((a=>{var o;const t=a.postActions[0],r=a.preInvoke;return A?(null==(o=null==e?void 0:e.payload)?void 0:o.onSuccessAction)?Fo(To(me({bcNames:[y]})),To(e.payload.onSuccessAction)):Io:Fo(To(_({bcName:y,cursor:F})),To(le({bcName:y})),...Ao(N,t,r,g,y))})),Mo((e=>{var a,o,t,r,i,s;console.error(e);let n=null,c=null;const l=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)&&(c=null==(r=null==l?void 0:l.error)?void 0:r.entity,n=null==(s=null==(i=null==l?void 0:l.error)?void 0:i.popup)?void 0:s[0]),To($({bcName:y,bcUrl:C,viewError:n,entityError:c}))})))})));import{EMPTY as Oo,filter as Ro,mergeMap as So,of as Vo}from"rxjs";import{WidgetTypes as Bo}from"@cxbox-ui/schema";var $o=(e,a)=>e.pipe(Ro(X.match),Ro((e=>!(!e.payload.calleeBCName||!e.payload.associateFieldKey))),So((e=>{var o,t,r,i;const{bcName:s,calleeBCName:n}=e.payload,c=a.value,l=c.view.widgets.find((e=>e.bcName===s&&e.type===Bo.AssocListPopup)),d=null==(o=c.screen.bo.bc[n])?void 0:o.cursor,p=null==(t=c.view.pendingDataChanges[n])?void 0:t[d],u=e.payload.associateFieldKey,m=null==p?void 0:p[u];if(!(l&&p&&m&&m)||l.options&&!l.options.hierarchyFull)return Oo;const f={};m.forEach((e=>{f[e.id]={id:e.id,_associate:!0,_value:e.value}}));const b=null==(r=c.data[n])?void 0:r.find((e=>e.id===d)),v=null==(i=null==b?void 0:b[u])?void 0:i.map((e=>e.id)),h=m.map((e=>e.id));return v&&v.forEach((e=>{h.includes(e)||(f[e]={id:e,_associate:!1})})),Vo(z({bcName:s,cursors:Object.keys(f),dataItems:Object.values(f)}))})));import{concat as _o,filter as Uo,mergeMap as qo,of as Ko}from"rxjs";import{OperationTypeCrud as Lo}from"@cxbox-ui/schema";var Wo=(e,a,{api:o})=>e.pipe(Uo(Ke.match),qo((e=>{var t;const r=a.value,i=r.view.popupData.bcName,s=Ba(i,!0),n=null==(t=r.view.widgets.find((e=>e.bcName===i)))?void 0:t.name;return o.customAction(r.screen.screenName,s,{bulkIds:e.payload.fileIds},null,{_action:"file-upload-save"}).pipe(qo((e=>{const a=e.postActions[0],o=e.preInvoke;return _o(Ko(_({bcName:i,cursor:null})),Ko(le({bcName:i})),Ko(ee(null)),...Ao(n,a,o,Lo.save,i))})))})));import{concat as Yo,filter as Go,mergeMap as Ho,of as Jo}from"rxjs";var zo=(e,a)=>e.pipe(Go(Fe.match),Ho((e=>{var o;const t=[],r=a.value,{rowId:i,fieldKey:s}=e.payload,n=r.view.widgets.find((a=>a.name===e.payload.widgetName)),c=n.bcName,l=null==(o=r.screen.bo.bc[c])?void 0:o.cursor,d=r.view.selectedCell;return i!==l&&t.push(Jo(fe({bcName:c,cursor:i}))),d&&s===d.fieldKey&&i===d.rowId&&n.name===d.widgetName||t.push(Jo(Ie({widgetName:n.name,rowId:i,fieldKey:s}))),Yo(...t)})));import{concat as Qo,filter as Xo,mergeMap as Zo,of as et}from"rxjs";import{OperationTypeCrud as at}from"@cxbox-ui/schema";var ot=(e,a)=>e.pipe(Xo(B.match),Xo((e=>to(at.fileUpload,e.payload,a.value))),Zo((e=>Qo(et(G({cursorsMap:{[e.payload.bcName]:null}})),et(Z({widgetName:e.payload.widgetName}))))));import{filter as tt,map as rt}from"rxjs";import{OperationTypeCrud as it}from"@cxbox-ui/schema";var st=(e,a)=>e.pipe(tt(B.match),tt((e=>to(it.associate,e.payload,a.value))),rt((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 nt,concat as ct,filter as lt,mergeMap as dt,of as pt,catchError as ut}from"rxjs";import{WidgetTypes as mt}from"@cxbox-ui/schema";import{nanoid as ft}from"@reduxjs/toolkit";var bt=(e,a,{api:o})=>e.pipe(lt(J.match),dt((e=>{var t,r,i,s;const l=a.value,d=l.view.url,{bcName:p,cursor:u,disableRetry:m}=e.payload;if(l.view.widgets.some((e=>{var a,o;return e.bcName===p&&e.type===mt.AssocListPopup&&((null==(a=e.options)?void 0:a.hierarchySameBc)||(null==(o=e.options)?void 0:o.hierarchyFull))})))return nt;const f=l.view.widgets.find((e=>{var a;return e.name===(null==(a=l.view.popupData)?void 0:a.widgetName)&&[mt.PickListPopup,mt.FlatTreePopup].includes(e.type)})),b=Ba(p,!0),v=l.view.pendingDataChanges[p][u],h=(null==(t=l.view.handledForceActive[p])?void 0:t[u])||{},y=null==(r=l.data[p])?void 0:r.find((e=>e.id===u)),g=null==(s=null==(i=l.view.rowMeta[p])?void 0:i[b])?void 0:s.fields;let N=null;const w=ct(pt(oe(null)),pt(ee(null)),pt(je({bcName:p}))),C=null==g?void 0:g.filter((e=>e.forceActive&&void 0!==v[e.key])).some((e=>{const a=v[e.key]!==h[e.key];return a&&(N=e.key),a})),E=ft();return C&&!m?ct(pt(Xe({request:{requestId:E,type:"force-active"}})),o.getRmByForceActive(l.screen.screenName,b,c(n({},v),{vstamp:y.vstamp})).pipe(dt((e=>{const a=[pt(Ze({requestId:E}))];return l.view.url===d&&a.push(pt(Q({rowMeta:e,currentRecordData:y,bcName:p,bcUrl:b,cursor:u}))),f&&a.push(w),ct(...a)})),ut((e=>{var a,o,t,r,i,s;console.error(e);let n=null,c=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)&&(c=null==(r=null==m?void 0:m.error)?void 0:r.entity,n=null==(s=null==(i=null==m?void 0:m.error)?void 0:i.popup)?void 0:s[0]),ct(pt(Ze({requestId:E})),l.view.url===d?ct(pt(J({bcName:p,cursor:u,dataItem:{[N]:y[N]},disableRetry:!0})),pt(V({bcName:p,bcUrl:b,viewError:n,entityError:c}))):nt)})))):f?w:nt})));import{concat as vt,filter as ht,mergeMap as yt,of as gt}from"rxjs";var Nt=(e,a)=>e.pipe(ht(xe.match),yt((e=>{const a=[],{bcName:o}=e.payload;return a.push(gt(G({cursorsMap:{[o]:null}}))),a.push(gt(le({bcName:o}))),vt(...a)})));import{EMPTY as wt,filter as Ct,mergeMap as Et,of as Dt}from"rxjs";var Mt=(e,a)=>e.pipe(Ct(G.match),Et((e=>{const o=a.value,t=Ga(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?Dt(G({cursorsMap:r})):wt})));import{EMPTY as Ft,filter as It,switchMap as xt}from"rxjs";var Pt=(e,a)=>e.pipe(It(Y.match),xt((e=>Ft)));import{filter as Tt,of as kt,switchMap as At}from"rxjs";var jt=(e,a)=>e.pipe(Tt(v.match),At((e=>{const o=a.value;if("router"===o.router.type)return kt(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 kt(r?N({screen:r}):w({screenName:t}))})));import{EMPTY as Ot,filter as Rt,of as St,switchMap as Vt}from"rxjs";var Bt=(e,a)=>e.pipe(Rt(C.match),Vt((e=>{const o=a.value,t=Ga(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?St(G({cursorsMap:r})):Ot})));import{catchError as $t,EMPTY as _t,filter as Ut,mergeMap as qt,switchMap as Kt}from"rxjs";var Lt=(e,a,{api:o})=>e.pipe(Ut(Me.match),Kt((e=>o.routerRequest(e.payload.path,e.payload.params).pipe(qt((()=>_t)),$t((e=>(console.error(e),_t)))))));import{filter as Wt,of as Yt,switchMap as Gt}from"rxjs";var Ht=(e,a)=>e.pipe(Wt(N.match),Gt((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)),s=r||i||o.screen.views[0];return Yt(s?C(s):E({viewName:t}))})));import{catchError as Jt,concat as zt,EMPTY as Qt,filter as Xt,mergeMap as Zt,of as er,switchMap as ar}from"rxjs";var or=(e,a,{api:o})=>e.pipe(Xt(L.match),ar((e=>{const t=a.value,{bcName:r,fieldKey:i,cursor:s}=e.payload,n=Ba(r,!0);return o.fetchRowMeta(t.screen.screenName,n).pipe(Zt((e=>{var a,o,c,l;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==(l=null==(c=t.data[r])?void 0:c.find((e=>e.id===s)))?void 0:l[u];return m||(null==d?void 0:d.drillDown)||(null==d?void 0:d.drillDown)!==p.path?zt(d.drillDownType!==da.inner?er(k({bcName:r,rowMeta:e,bcUrl:n,cursor:s})):Qt,er(W({bcName:r,bcUrl:n,cursor:s})),er(Y({url:m||d.drillDown,drillDownType:d.drillDownType,route:p}))):Qt})),Jt((e=>(console.error(e),Qt))))})));import{concat as tr,EMPTY as rr,filter as ir,mergeMap as sr,of as nr}from"rxjs";var cr=(e,a)=>e.pipe(ir(f.match),sr((e=>{var o,t;const r=a.value;if(!r.session.active)return rr;if("router"===r.router.type)return nr(Me(r.router));const i=r.screen.screenName,s=(null==(o=r.session.screens.find((e=>e.defaultScreen)))?void 0:o.name)||(null==(t=r.session.screens[0])?void 0:t.name),n="default"===r.router.type?s:r.router.screenName;if(n!==i){const e=r.session.screens.find((e=>e.name===n));return nr(e?N({screen:e}):w({screenName:n}))}const c=r.view.name,l=r.router.viewName,d=Ga(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=l!==c,f=[];if(u&&f.push(nr(G({cursorsMap:p}))),m){const e=l?r.screen.views.find((e=>e.name===l)):r.screen.primaryView?r.screen.views.find((e=>e.name===r.screen.primaryView)):r.screen.views[0];f.push(nr(e?C(e):E({viewName:l})))}return u&&!m&&Object.entries(d).forEach((e=>{const[a,o]=e;r.data[a].find((e=>e.id===o))||f.push(nr(le({bcName:a})))})),tr(...f)})));import{filter as lr,map as dr}from"rxjs";var pr=(e,a)=>e.pipe(lr(E.match),dr((e=>ea({type:"error",key:"selectViewFail",message:`View is missing or unavailable for your role', ${e.payload.viewName}`,duration:15}))));import{filter as ur,map as mr}from"rxjs";var fr=e=>e.pipe(ur(w.match),mr((e=>ea({type:"error",key:"selectScreenFail",message:`Screen is missing or unavailable for your role', ${e.payload.screenName}}`,duration:15}))));import{filter as br,map as vr}from"rxjs";var hr=(e,a)=>e.pipe(br(L.match),vr((e=>{var o;const t=a.value,r=t.view.widgets.find((a=>a.name===e.payload.widgetName));if((null==(o=t.screen.bo.bc[null==r?void 0:r.bcName])?void 0:o.cursor)!==e.payload.cursor)return G({cursorsMap:{[e.payload.bcName]:e.payload.cursor}})})));import yr from"axios";import{EMPTY as gr,filter as Nr,mergeMap as wr,of as Cr}from"rxjs";var Er=[401,409,418,500],Dr=e=>e.pipe(Nr(Le.match),wr((e=>{const{error:a,callContext:o}=e.payload;return a.response?Cr(We({statusCode:a.response.status,error:a,callContext:o})):yr.isCancel(a)?gr:Cr(Ve({error:{type:2}}))})));import{EMPTY as Mr,filter as Fr,mergeMap as Ir,tap as xr}from"rxjs";var Pr=(e,a,{})=>e.pipe(Fr(Ue.match),xr((e=>{const a=document.createElement("a");a.style.display="none",document.body.appendChild(a),setTimeout((()=>{a.click(),document.body.removeChild(a)}),100)})),Ir((()=>Mr)));import{filter as Tr,map as kr}from"rxjs";var Ar=e=>e.pipe(Tr(We.match),Tr((e=>401===e.payload.statusCode)),kr((e=>g(null))));import{filter as jr,map as Or}from"rxjs";var Rr=(e,a)=>e.pipe(jr(We.match),jr((e=>409===e.payload.statusCode)),Or((e=>{var a,o;const t=(null==(o=null==(a=e.payload.error.response.data.error)?void 0:a.popup)?void 0:o[0])||"";return ea({key:"action_edit_error",message:t,type:"buttonWarningNotification",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"OK"}}})})));import{concat as Sr,EMPTY as Vr,filter as Br,mergeMap as $r,of as _r}from"rxjs";var Ur=(e,a)=>e.pipe(Br(We.match),Br((e=>418===e.payload.statusCode)),$r((e=>{var o;const{error:t,callContext:r}=e.payload,i=[],s=t.response.data;if(!s.error.popup)return Vr;if(i.push(_r(Ve({error:{type:0,message:s.error.popup[0]}}))),null==(o=s.error.postActions)?void 0:o[0]){const e=a.value.view.widgets.find((e=>e.name===r.widgetName));i.push(_r(U({bcName:e.bcName,postInvoke:s.error.postActions[0],widgetName:e.name})))}return Sr(...i)})));import{filter as qr,map as Kr}from"rxjs";var Lr=(e,a)=>e.pipe(qr(We.match),qr((e=>500===e.payload.statusCode)),Kr((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 Wr,map as Yr}from"rxjs";var Gr=(e,a)=>e.pipe(Wr(We.match),Wr((e=>!Er.includes(e.payload.statusCode))),Yr((e=>Ve({error:{type:0,code:e.payload.error.response.status,details:e.payload.error.response.data}}))));import{EMPTY as Hr,filter as Jr,mergeMap as zr,tap as Qr}from"rxjs";var Xr=(e,a)=>e.pipe(Jr(qe.match),Qr((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)})),zr((()=>Hr)));import{EMPTY as Zr,filter as ei,mergeMap as ai,of as oi}from"rxjs";var ti=(e,a)=>e.pipe(ei(U.match),ai((e=>{const o=a.value;switch(e.payload.postInvoke.type){case"drillDown":return oi(Y(c(n({},e.payload.postInvoke),{route:o.router,widgetName:e.payload.widgetName})));case"postDelete":{const a=[G({cursorsMap:{[e.payload.bcName]:null}})];return o.router.bcPath.includes(`${e.payload.bcName}/`)||a.push(D({bcName:e.payload.bcName,widgetName:e.payload.widgetName})),oi(...a)}case"refreshBC":{const a=e.payload.postInvoke,t=a.bc,r=o.screen.bo.bc[a.bc],i=e.payload.widgetName||"",s=o.view.infiniteWidgets||[],n=o.view.widgets.some((e=>e.bcName===t&&s.includes(e.name)));return oi(n?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 oi(Pe({type:a.messageType,message:a.messageText}))}case"downloadFile":return oi(Ue({fileId:e.payload.postInvoke.fileId}));case"downloadFileByUrl":return oi(qe({url:e.payload.postInvoke.url}));default:return Zr}})));import{EMPTY as ri,filter as ii,mergeMap as si,of as ni}from"rxjs";import{isAnyOf as ci}from"@reduxjs/toolkit";var li=(e,a)=>e.pipe(ii(ci(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 ni(ce({operation:{bcName:a,operationType:o,widgetName:t},confirmOperation:r}));default:return ri}})));import{concat as di,filter as pi,switchMap as ui}from"rxjs";var mi=(e,a)=>e.pipe(pi(Qe.match),ui((e=>di([g(null),b({login:"",password:"",role:e.payload.role})]))));import{catchError as fi,concat as bi,filter as vi,mergeMap as hi,of as yi,switchMap as gi}from"rxjs";var Ni=(e,a,{api:o})=>e.pipe(vi(Je.match),hi((()=>{const e=a.value,{router:t}=e,{activeRole:r}=e.session;return o.refreshMeta().pipe(gi((()=>bi([g(null),b({login:"",password:"",role:r}),f({route:t,action:"PUSH"})]))),fi((e=>yi(h(e)))))})));import{EMPTY as wi,filter as Ci,switchMap as Ei}from"rxjs";var Di=(e,a)=>e.pipe(Ci(b.match),Ei((e=>wi)));import{catchError as Mi,EMPTY as Fi,filter as Ii,mergeMap as xi,of as Pi,switchMap as Ti}from"rxjs";var ki={401:"Invalid credentials",403:"Access denied"},Ai=(e,a,{api:o})=>e.pipe(Ii(b.match),Ii((e=>{var a;return!!(null==(a=e.payload)?void 0:a.role)})),Ti((e=>{var a;const t=null!=(a=e.payload.role)?a:"";return o.loginByRoleRequest(t).pipe(xi((e=>Fi)),Mi((e=>(console.error(e),Pi(h({errorMsg:e.response?ki[e.response.status]||"Server application unavailable":"Empty server response"}))))))})));import{concat as ji,EMPTY as Oi,filter as Ri,of as Si,switchMap as Vi,take as Bi,tap as $i}from"rxjs";var _i=(e,a)=>e.pipe(Ri(ze.match),Vi((()=>ji(Si(Je(null)),e.pipe(Ri(v.match),Bi(1),$i((()=>location.reload())),Vi((()=>Oi)))))));import{catchError as Ui,concat as qi,EMPTY as Ki,filter as Li,mergeMap as Wi,of as Yi}from"rxjs";import{OperationTypeCrud as Gi}from"@cxbox-ui/schema";var Hi=(e,a,{api:o})=>e.pipe(Li(B.match),Li((e=>to(Gi.create,e.payload,a.value))),Wi((e=>{const t=a.value,r=e.payload.bcName,i=Ba(r);return o.newBcData(t.screen.screenName,i,{widgetName:e.payload.widgetName},{_action:e.payload.operationType}).pipe(Wi((a=>{const o=a.row,t={id:null,vstamp:-1};a.row.fields.forEach((e=>{t[e.key]=e.currentValue}));const s=a.postActions[0],n=t.id;return qi(Yi(O({bcName:r,dataItem:t,bcUrl:i})),Yi(k({bcName:r,bcUrl:`${i}/${n}`,rowMeta:o,cursor:n})),Yi(J({bcName:e.payload.bcName,cursor:n,dataItem:{id:n}})),s?Yi(U({bcName:r,postInvoke:s,cursor:n,widgetName:e.payload.widgetName})):Ki)})),Ui((e=>(console.error(e),Yi(R({bcName:r}))))))})));import{catchError as Ji,filter as zi,mergeMap as Qi,of as Xi,race as Zi}from"rxjs";import{filter as es,mergeMap as as,of as os,take as ts}from"rxjs";import{isAnyOf as rs}from"@reduxjs/toolkit";var is=[C,y];function ss(e,a,o,t,r=(e=>!0)){return e.pipe(es(rs(...a)),es(r),as((()=>(o(),os(t)))),ts(1))}var ns=(e,a,{api:o})=>e.pipe(zi(P.match),Qi((t=>{var r,i;const s=a.value,c=t.payload.bcName,l=s.screen.bo.bc[c],{cursor:d,page:p}=l,u=(null==(r=s.view.widgets.find((e=>e.bcName===c)))?void 0:r.limit)||l.limit,m=null==(i=s.router.bcPath)?void 0:i.includes(`${c}/${d}`),f=Ba(c,m),b=s.screen.sorters[c],v=n(n({_page:p,_limit:u},Qa(s.screen.filters[c]||[])),Xa(b)),h=o.createCanceler(),y=ss(e,is,h.cancel,x({bcName:c,bcUrl:f})),g=o.fetchBcData(s.screen.screenName,f,v,h.cancelToken).pipe(Qi((e=>{var a;const o=null==(a=s.data[c])?void 0:a.map((e=>e.id)),t=[...s.data[c],...e.data.filter((e=>!o.includes(e.id)))];return Xi(I({bcName:c,data:t,bcUrl:f,hasNext:e.hasNext}))})),Ji((e=>(console.error(e),Xi(x({bcName:c,bcUrl:f}))))));return Zi(y,g)})));import{catchError as cs,concat as ls,EMPTY as ds,filter as ps,mergeMap as us,of as ms}from"rxjs";var fs=(e,a,{api:o})=>e.pipe(ps(B.match),ps((e=>to(Ca.save,e.payload,a.value))),us((e=>{var t,r,i;const s=a.value,l=e.payload.bcName,d=Ba(l,!0),p=e.payload.widgetName,u=s.screen.bo.bc[l].cursor,m=s.data[l].find((e=>e.id===u)),f=null==(t=s.view.pendingDataChanges[l])?void 0:t[u],b=d&&(null==(r=s.view.rowMeta[l])?void 0:r[d]),v=null==(i=s.view.widgets.find((e=>e.name===p)))?void 0:i.options;if(b){const e=b.fields;for(const a in f)e.find((e=>e.key===a&&e.disabled))&&delete f[a]}const h=Object.entries(ro(l,s.view.widgets,s.screen.bo.bc)).map((e=>{const[a,o]=e;return D({bcName:a,widgetName:o[0]})})),y={widgetName:e.payload.widgetName};return o.saveBcData(s.screen.screenName,d,c(n({},f),{vstamp:m.vstamp}),y).pipe(us((a=>{const o=a.postActions[0],t=a.record;return ls(ms(se({bcName:l,cursor:u,dataItem:t})),ms(T({widgetName:p,bcName:l})),ms(...h),o?ms(U({bcName:l,widgetName:p,postInvoke:o,cursor:t.id})):ds,e.payload.onSuccessAction?ms(e.payload.onSuccessAction):ds)})),cs((a=>{var o,t,r,i,s,n;console.error(a);let c=ds;e.payload.onSuccessAction&&!(null==v?void 0:v.disableNotification)&&(c=ms(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:[l]})]}}})));let p=null,u=null;const m=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)&&(u=null==(i=null==m?void 0:m.error)?void 0:i.entity,p=null==(n=null==(s=null==m?void 0:m.error)?void 0:s.popup)?void 0:n[0]),ls(ms(ne({bcName:l,bcUrl:d,viewError:p,entityError:u})),c)})))})));import{EMPTY as bs,filter as vs,mergeMap as hs}from"rxjs";var ys=(e,a)=>e.pipe(vs(C.match),hs((e=>{try{const e=a.value,o={};return e.view.widgets.filter((e=>!ha.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}`),bs}})));import{catchError as gs,concat as Ns,EMPTY as ws,filter as Cs,mergeMap as Es,of as Ds,race as Ms}from"rxjs";import{WidgetTypes as Fs}from"@cxbox-ui/schema";import{isAnyOf as Is}from"@reduxjs/toolkit";var xs=(e,a,{api:o})=>e.pipe(Cs(Is(D,M,X,le,Se)),Es((t=>Ms(...(()=>{var r,i,s,c,l,d;const p=a.value,{widgetName:u}=t.payload,{widgets:m,infiniteWidgets:f}=p.view,b=null!=(r=m.find((e=>e.name===u)))?r:m.find((e=>e.bcName===t.payload.bcName));if(!b)return[ws];const v=t.payload.bcName,h=p.screen.bo.bc[v],{cursor:y,page:g}=h,N=(null==(i=m.find((e=>e.bcName===v)))?void 0:i.limit)||h.limit,w=p.screen.sorters[v];if(X.match(t)&&v===t.payload.calleeBCName)return[ws];const C=m.find((e=>e.bcName===b.bcName&&e.type===Fs.AssocListPopup&&function(e){var a,o;return(null==(a=e.options)?void 0:a.hierarchy)||(null==(o=e.options)?void 0:o.hierarchyFull)}(e))),E=p.view.widgets.find((e=>{var a;return e.bcName===b.bcName&&e.type===Fs.AssocListPopup&&(null==(a=e.options)?void 0:a.hierarchyFull)})),F=null==(s=p.router.bcPath)?void 0:s.includes(`${v}/${y}`),P=Ba(v,F),k=n(n({_page:g,_limit:N},Qa(E?[]:p.screen.filters[v]||[])),Xa(w));le.match(t)&&(u&&f.includes(u)||(null==(l=null==(c=null==m?void 0:m.filter((e=>e.bcName===v)))?void 0:c.find((e=>f.includes(e.name))))?void 0:l.name))&&(k._page=1,k._limit=N*g),M.match(t)&&(k._page=t.payload.from||1,k._limit=(t.payload.to||g-k._page)*N),(D.match(t)&&t.payload.ignorePageLimit||(null==(d=null==C?void 0:C.options)?void 0:d.hierarchyFull))&&(k._limit=0);const A=o.createCanceler(),j=ss(e,is,A.cancel,x({bcName:v,bcUrl:P})),O=ss(e,[fe],A.cancel,x({bcName:v,bcUrl:P}),(e=>h.parentName===e.payload.bcName)),R=o.fetchBcData(p.screen.screenName,P,k,A.cancelToken).pipe(Es((e=>{var a,o;const r=((e,a,o)=>{var r;const{bcName:i}=t.payload,s=D.match(t)?t.payload.keepDelta:void 0,n=null==(r=e[0])?void 0:r.id;return Ds(G({cursorsMap:{[i]:e.some((e=>e.id===a))?a:n},keepDelta:o||s}))})(e.data,y,!!C),i=m.some((e=>{var a;return(null==(a=p.screen.bo.bc[e.bcName])?void 0:a.parentName)===v&&!ha.includes(e.type)})),s=a=>{var o,t,r,i,s,n,c,l,d;if((null==(o=a.showCondition)?void 0:o.bcName)===(null==(t=p.screen.bo.bc[a.bcName])?void 0:t.parentName)){let e=null==(i=p.screen.bo.bc[null==(r=a.showCondition)?void 0:r.bcName])?void 0:i.parentName,o=e===v;for(;!o&&e;)e=null==(s=p.screen.bo.bc[e])?void 0:s.parentName,o=e===v;if(o)return!0}const u=v===(null==(n=a.showCondition)?void 0:n.bcName)?e.data:p.data[null==(c=a.showCondition)?void 0:c.bcName];return io(a.showCondition,null==(d=p.screen.bo.bc[null==(l=a.showCondition)?void 0:l.bcName])?void 0:d.cursor,u,p.view.pendingDataChanges)},n=(!s(b)||ha.includes(b.type))&&!i,c=(null==(a=p.view.popupData)?void 0:a.bcName)!==b.bcName;if(n&&c)return ws;const l=(null==(o=e.data)?void 0:o.length)?((e,a,o,r)=>{const{bcName:i}=t.payload,{ignorePageLimit:s,keepDelta:n}=D.match(t)?t.payload:{ignorePageLimit:void 0,keepDelta:void 0};return Ns(...Object.entries(ro(i,e,a)).filter((([a,o])=>{const i=e.find((e=>o.includes(e.name)&&!ha.includes(e.type)&&r(e)));return!!X.match(t)||!!i})).map((([a,i])=>{const c=e.find((e=>i.includes(e.name)&&!ha.includes(e.type)&&r(e)));return Ds(D({bcName:a,widgetName:c.name,ignorePageLimit:s||X.match(t),keepDelta:o||n}))})))})(m,p.screen.bo.bc,!!C,s):ws,d=Ds(T({widgetName:u,bcName:v}));return Ns(r,Ds(I({bcName:v,data:e.data,bcUrl:P,hasNext:e.hasNext})),d,l)})),gs((e=>(console.error(e),Ds(x({bcName:t.payload.bcName,bcUrl:P}))))));return[j,O,R]})()))));import{catchError as Ps,concat as Ts,EMPTY as ks,filter as As,mergeMap as js,of as Os}from"rxjs";import{OperationTypeCrud as Rs}from"@cxbox-ui/schema";var Ss=(e,a,{api:o})=>e.pipe(As(B.match),As((e=>to(Rs.delete,e.payload,a.value))),js((e=>{const t=e.payload.widgetName,r=a.value,i=e.payload.bcName,s=r.screen.bo.bc[i].cursor,n=Ba(i,!0),c="target"===r.view.pendingValidationFailsFormat;return o.deleteBcData(r.screen.screenName,n,{widgetName:e.payload.widgetName}).pipe(js((e=>{const a=e.postActions[0];return Ts(c?Os(me({bcNames:[i]})):ks,Os(D({bcName:i,widgetName:t})),a?Os(U({bcName:i,postInvoke:a,cursor:s,widgetName:t})):ks)})),Ps((e=>(console.error(e),Os(S({bcName:i}))))))})));import{concat as Vs,filter as Bs,mergeMap as $s,of as _s}from"rxjs";var Us=(e,a)=>e.pipe(Bs(fe.match),$s((e=>{const{bcName:o,cursor:t}=e.payload,r=Object.entries(ro(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 Vs(_s(G({cursorsMap:{[o]:t},keepDelta:e.payload.keepDelta})),_s(T({widgetName:"",bcName:o})),r)})));import{concat as qs,filter as Ks,mergeMap as Ls,of as Ws}from"rxjs";var Ys=(e,a)=>e.pipe(Ks(ve.match),Ls((e=>{var o,t,r,i,s;const l=a.value,d=e.payload.dataItem._associate,p=[Ws(J({bcName:e.payload.bcName,cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],u=l.view.widgets.find((a=>a.name===e.payload.widgetName)),m=e.payload.bcName===u.bcName,f={bcName:u.bcName,radio:null==(o=u.options)?void 0:o.hierarchyRadio,fields:u.fields},b=null==(t=u.options)?void 0:t.hierarchy,v=m?f:b.find((a=>a.bcName===e.payload.bcName)),h=null==(r=u.options)?void 0:r.hierarchyGroupSelection,y=null==(i=u.options)?void 0:i.hierarchyTraverse,g=b.slice(b.findIndex((a=>a.bcName===e.payload.bcName))+1).map((e=>e.bcName));h&&v.radio&&!d&&p.push(Ws(Ce({bcNames:g})));const N=m?null:b.find(((a,o)=>{var t;return(null==(t=b[o+1])?void 0:t.bcName)===e.payload.bcName}))||f,w=null==(s=l.data[null==N?void 0:N.bcName])?void 0:s.find((e=>e.id===l.screen.bo.bc[null==N?void 0:N.bcName].cursor));if(N&&y&&d&&(v.radio&&p.push(Ws(Ce({bcNames:[N.bcName]}))),p.push(Ws(ve({bcName:N.bcName,widgetName:e.payload.widgetName,dataItem:c(n({},w),{_associate:!0,_value:w[N.assocValueKey||e.payload.assocValueKey]}),assocValueKey:e.payload.assocValueKey})))),N&&y&&!d){const a=l.data[e.payload.bcName],o=a.filter((a=>a.id!==e.payload.dataItem.id)).every((e=>!e._associate)),t=l.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&&p.push(Ws(ve({bcName:N.bcName,widgetName:e.payload.widgetName,dataItem:c(n({},w),{_associate:!1}),assocValueKey:e.payload.assocValueKey})))}return qs(...p)})));import{catchError as Gs,concat as Hs,EMPTY as Js,filter as zs,mergeMap as Qs,of as Xs}from"rxjs";import{OperationTypeCrud as Zs}from"@cxbox-ui/schema";import{isAnyOf as en}from"@reduxjs/toolkit";var an=en(B),on=(e,a,{api:o})=>e.pipe(zs(an),zs((e=>to(Zs.cancelCreate,e.payload,a.value))),Qs((e=>{var t,r;const i=a.value,s=i.screen.screenName,l=e.payload.bcName,d=Ba(l,!0),p=i.screen.bo.bc[l],u=null==p?void 0:p.cursor,m={widgetName:e.payload.widgetName},f=null==(t=i.data[l])?void 0:t.find((e=>e.id===p.cursor)),b=null==(r=i.view.pendingDataChanges[l])?void 0:r[p.cursor],v=f&&c(n({},b),{vstamp:f.vstamp}),h={[e.payload.bcName]:null};return o.customAction(s,d,v,m,{_action:e.payload.operationType}).pipe(Qs((e=>{const a=e.postActions[0];return Hs(Xs(_({bcName:l,cursor:u})),Xs(G({cursorsMap:h})),a?Xs(U({bcName:l,postInvoke:a,cursor:u,widgetName:m.widgetName})):Js)})),Gs((e=>(console.error(e),Xs(S({bcName:l}))))))})));import{concat as tn,filter as rn,mergeMap as sn,of as nn}from"rxjs";var cn=e=>e.pipe(rn(be.match),sn((e=>{const{bcName:a,cursor:o,depth:t}=e.payload;return tn(nn(H({bcName:a,depth:t,cursor:o})),nn(D({bcName:a,depth:t+1,widgetName:"",ignorePageLimit:!0})))})));import{concat as ln,filter as dn,mergeMap as pn,of as un}from"rxjs";var mn=(e,a)=>e.pipe(dn(ie.match),pn((e=>{var o,t,r,i,s,l,d,p,u,m;const f=a.value,{bcName:b,cursor:v,popupBcName:h,associateFieldKey:y}=e.payload,g=f.view.widgets.find((e=>e.bcName===h&&ha.includes(e.type)));let N=((null==f?void 0:f.data[h])||[]).map((e=>{var a;const o=null==(a=f.view.pendingDataChanges[h])?void 0:a[e.id];return n(n({},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=g.options)?void 0:o.hierarchyGroupDeselection){(null==(t=g.options)?void 0:t.hierarchyTraverse)&&(N=so(N));const a=N.filter((e=>e.parentId===w.id));E=[w.id,...a.filter((e=>C.includes(e.id))).map((e=>e.id))],(null==(r=g.options)?void 0:r.hierarchyTraverse)&&(no(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===w.parentId)),s=N.filter((e=>e.parentId===(null==o?void 0:o.id))),l=s.every((e=>E.includes(e.id)||!C.includes(e.id)));if(o&&l)if(null==(i=g.options)?void 0:i.hierarchyTraverse){const a=[];if(no(s,a),a.every((e=>E.includes(e)||!C.includes(e))))return ln(un(ie(c(n({},e.payload),{removedItem:{id:o.id,value:null}}))))}else E.push(o.id)}return(null==(s=g.options)?void 0:s.hierarchyFull)?un(J({bcName:b,cursor:v,dataItem:{[y]:e.payload.dataItem.filter((e=>!E.includes(e.id)))}})):(null==(l=g.options)?void 0:l.hierarchy)?ln(un(J({bcName:null!=(m=null==(u=null==(p=null==(d=g.options)?void 0:d.hierarchy)?void 0:p.find((a=>{var o;return null==(o=f.view.pendingDataChanges[a.bcName])?void 0:o[e.payload.removedItem.id]})))?void 0:u.bcName)?m:b,cursor:e.payload.removedItem.id,dataItem:c(n({},e.payload.removedItem),{_associate:!1})})),un(J({bcName:b,cursor:v,dataItem:{[y]:e.payload.dataItem}}))):ln(un(J({bcName:h,cursor:e.payload.removedItem.id,dataItem:c(n({},e.payload.removedItem),{_associate:!1})})),un(J({bcName:b,cursor:v,dataItem:{[y]:e.payload.dataItem}})))})));import{catchError as fn,filter as bn,map as vn,mergeMap as hn,of as yn,race as gn}from"rxjs";var Nn=(e,a,{api:o})=>e.pipe(bn(T.match),hn((t=>{const r=a.value,i=r.screen.screenName,s=t.payload.bcName,n=r.screen.bo.bc[s].cursor,c=Ba(s,!0),l=o.createCanceler(),d=ss(e,is,l.cancel,A({bcName:s})),p=ss(e,[fe],l.cancel,A({bcName:s}),(e=>r.screen.bo.bc[s].parentName===e.payload.bcName)),u=o.fetchRowMeta(i,c,void 0,l.cancelToken).pipe(vn((e=>k({bcName:s,rowMeta:e,bcUrl:c,cursor:n}))),fn((e=>(console.error(e),yn(A({bcName:s}))))));return gn(d,p,u)})));import{concat as wn,filter as Cn,mergeMap as En,of as Dn}from"rxjs";var Mn=(e,a)=>e.pipe(Cn(ye.match),En((e=>{var o,t,r,i,s;const l=a.value,d=[],p=e.payload.assocValueKey||(null==(o=l.view.popupData)?void 0:o.assocValueKey),u=e.payload.bcName,m=l.data[u],f=e.payload.dataItem._associate,b=e.payload.depth||1,v=b-1,h=b>1&&m.find((a=>a.id===e.payload.dataItem.parentId)),y=l.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===b&&(1===e.level||e.parentId===(null==h?void 0:h.id))));if(N&&w&&1===b)if(f){const a=l.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(Dn(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:c(n({},o),{_associate:!1}),assocValueKey:p})))}else d.push(Dn(we({bcName:u,parentId:e.payload.dataItem.id,depth:b+1,assocValueKey:p,selected:!1})));if(d.push(Dn(J({bcName:e.payload.bcName,cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))),v&&g&&f&&d.push(Dn(ye({bcName:u,depth:v,widgetName:e.payload.widgetName,dataItem:c(n({},h),{_associate:!0,_value:h[p]}),assocValueKey:p}))),v&&g&&!f){const a=l.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==(s=Object.values(a))?void 0:s.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(Dn(ye({bcName:u,depth:v,widgetName:e.payload.widgetName,dataItem:c(n({},h),{_associate:!1}),assocValueKey:p})))}return wn(...d)})));import{catchError as Fn,concat as In,EMPTY as xn,filter as Pn,mergeMap as Tn,of as kn,switchMap as An}from"rxjs";var jn=(e,a,{api:o})=>e.pipe(Pn(te.match),Pn((e=>a.value.view.popupData.active)),An((e=>{const t=a.value,r=t.view.popupData.calleeBCName,i=t.view.popupData.calleeWidgetName,s=e.payload.bcNames,n=Ba(r,!0),c=s.length?{_bcName:s[s.length-1]}:{};return o.associate(t.screen.screenName,n,Object.values(t.view.pendingDataChanges[s[0]]||{}).filter((e=>e._associate)),c).pipe(Tn((e=>{const a=e.postActions[0],o=t.view.widgets.find((e=>e.bcName===r));return In(a?kn(U({bcName:r,postInvoke:a,widgetName:o.name})):xn,kn(me({bcNames:s})),kn(le({bcName:r,widgetName:i})))})),Fn((e=>(console.error(e),xn))))})));import{concat as On,filter as Rn,mergeMap as Sn,of as Vn}from"rxjs";var Bn=(e,a)=>e.pipe(Rn(he.match),Sn((e=>{var o,t,r,i,s;const l=e.payload.bcName,d=[Vn(J({bcName:l,cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],p=a.value,u=e.payload.dataItem._associate,m=e.payload.depth||1,f=m-1,b=null==(o=p.view.widgets.find((a=>a.name===e.payload.widgetName)).options)?void 0:o.hierarchyTraverse,v=m>1?null==(t=p.depthData[m])?void 0:t[l]:p.data[l],h=f?f>1?null==(r=p.screen.bo.bc[l].depthBc[f])?void 0:r.cursor:p.screen.bo.bc[l].cursor:null,y=h?f>1?null==(s=null==(i=p.depthData[f])?void 0:i[l])?void 0:s.find((e=>e.id===h)):p.data[l].find((e=>e.id===h)):null;return f&&b&&u&&d.push(Vn(he({bcName:l,depth:f,widgetName:e.payload.widgetName,dataItem:c(n({},y),{_associate:!0,_value:y[e.payload.assocValueKey]}),assocValueKey:e.payload.assocValueKey}))),f&&b&&!u&&v.filter((a=>a.id!==e.payload.dataItem.id)).every((e=>!e._associate))&&d.push(Vn(he({bcName:l,depth:f,widgetName:e.payload.widgetName,dataItem:c(n({},y),{_associate:!1}),assocValueKey:e.payload.assocValueKey}))),On(...d)})));import{catchError as $n,filter as _n,mergeMap as Un,of as qn,race as Kn}from"rxjs";var Ln=(e,a,{api:o})=>e.pipe(_n(F.match),Un((t=>{const{bcName:r,searchSpec:i,searchString:s}=t.payload,n=Ba(r,!1),c=o.createCanceler(),l=ss(e,is,c.cancel,x({bcName:r,bcUrl:n})),d=o.fetchBcData(a.value.screen.screenName,n,{[i+".contains"]:s},c.cancelToken).pipe(Un((e=>qn(I({bcName:r,data:e.data,bcUrl:n})))),$n((e=>(console.error(e),qn(x({bcName:t.payload.bcName,bcUrl:n}))))));return Kn(l,d)})));import{filter as Wn,of as Yn,switchMap as Gn}from"rxjs";var Hn=(e,a)=>e.pipe(Wn(te.match),Wn((()=>!a.value.view.popupData.active)),Gn((e=>{var o;const t=a.value,{calleeBCName:r=e.payload.calleeBcName,associateFieldKey:i=e.payload.associateFieldKey}=t.view.popupData,s=t.screen.bo.bc[r].cursor,n=null!=(o=t.data[r].find((e=>e.id===s))[i])?o:[],c=[];e.payload.bcNames.forEach((e=>{Object.entries(t.view.pendingDataChanges[e]||{}).forEach((([e,a])=>{c.push(a)}))}));const l=c.filter((e=>!n.find((a=>a.id===e.id))&&e._associate)).map((e=>({id:e.id,options:{},value:e._value}))),d=n.filter((e=>{const a=c.find((a=>a.id===e.id));return!a||!1!==(null==a?void 0:a._associate)})).concat(...l);return Yn(J({bcName:r,cursor:s,dataItem:{[i]:d}}))})));import{filter as Jn,mergeMap as zn,of as Qn}from"rxjs";var Xn=(e,a,{})=>e.pipe(Jn(ge.match),zn((e=>{const o=a.value.data[e.payload.bcName];return Qn(z({bcName:e.payload.bcName,cursors:o.map((e=>e.id)),dataItems:o.map((a=>c(n({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))})));import{filter as Zn,mergeMap as ec,of as ac}from"rxjs";var oc=(e,a)=>e.pipe(Zn(Ne.match),ec((e=>{var o;const t=(null==(o=a.value.depthData[e.payload.depth])?void 0:o[e.payload.bcName])||[];return ac(z({bcName:e.payload.bcName,cursors:t.map((e=>e.id)),dataItems:t.map((a=>c(n({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))})));import{concat as tc,filter as rc,mergeMap as ic,of as sc}from"rxjs";var nc=(e,a)=>e.pipe(rc(we.match),ic((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=[sc(z({bcName:e.payload.bcName,cursors:r.map((e=>e.id)),dataItems:r.map((a=>c(n({},a),{_value:a[e.payload.assocValueKey],_associate:e.payload.selected})))}))];return r.forEach((a=>{t.find((e=>e.parentId===a.id))&&i.push(sc(we(c(n({},e.payload),{parentId:a.id,depth:o+1}))))})),tc(...i)})));import cc from"axios";import{from as lc,map as dc,takeWhile as pc}from"rxjs";function uc(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 mc=class{constructor(e){d(this,"instance",cc.create({responseType:"json",headers:{Pragma:"no-cache","Cache-Control":"no-cache, no-store, must-revalidate"}})),this.instance=e}get(e,a={},o){return lc(this.instance.get(e,a)).pipe(pc(uc),dc((e=>e.data)))}put(e,a,o){return lc(this.instance.put(e,a)).pipe(pc(uc),dc((e=>e.data)))}post(e,a,o,t){return lc(this.instance.post(e,a)).pipe(pc(uc),dc((e=>e.data)))}delete(e,a,o,t){return lc(this.instance.delete(e,a)).pipe(pc(uc),dc((e=>e.data)))}};import fc from"axios";import{EMPTY as bc,expand as vc,map as hc,reduce as yc}from"rxjs";var gc=class{constructor(e){d(this,"api$",new mc),this.api$=new mc(e)}routerRequest(e,a){return this.api$.get(Ra(e,a))}fetchBcData(e,a,o={},t){const r=0===o._limit,i=Oa(Ha`data/${e}/`+a,c(n({},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,c(n({},o),{_page:t})).pipe(vc((r=>r.hasNext?this.fetchBcData(e,a,c(n({},o),{_page:++t})):bc)),yc(((e,a)=>[...e,...a.data]),[]))}fetchRowMeta(e,a,o,t){const r=Oa(Ha`row-meta/${e}/`+a,o);return this.api$.get(r,{cancelToken:t}).pipe(hc((e=>e.data.row)))}newBcData(e,a,o,t){const r=Oa(Ha`row-meta-new/${e}/`+a,t);return this.api$.get(r,null,o).pipe(hc((e=>e.data)))}saveBcData(e,a,o,t,r){const i=Oa(Ha`data/${e}/`+a,r);return this.api$.put(i,{data:o},t).pipe(hc((e=>e.data)))}deleteBcData(e,a,o,t){const r=Oa(Ha`data/${e}/`+a,t);return this.api$.delete(r,o).pipe(hc((e=>e.data)))}customAction(e,a,o,t,r){const i=Oa(Ha`custom-action/${e}/`+a,r);return this.api$.post(i,{data:o||{}},null,t).pipe(hc((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=Oa(Ha`associate/${e}/`+a,t);return this.api$.post(i,r).pipe(hc((e=>e.data)))}getRmByForceActive(e,a,o,t){const r=Oa(Ha`row-meta/${e}/`+a,t);return this.api$.post(r,{data:o}).pipe(hc((e=>e.data.row)))}refreshMeta(){return this.api$.get(Ha`bc-registry/refresh-meta`)}loginByRoleRequest(e){return this.api$.get(Ha`login?role=${e}`)}createCanceler(){let e;const a=new fc.CancelToken((a=>{e=a}));return{cancel:e,cancelToken:a}}};export{gc as Api,u as actions,Do as epics,ca as interfaces,p as reducers,Aa 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:()=>wo,createSessionReducerBuilderManager:()=>Eo,createViewReducerBuilderManager:()=>Mo,dataInitialState:()=>na,initialDepthDataState:()=>sa,initialRouterState:()=>Ra,initialScreenState:()=>go,initialSessionState:()=>Co,initialViewState:()=>Fo});var u={};c(u,{addNotification:()=>oa,addPendingRequest:()=>ea,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:()=>Xe,refreshMetaDone:()=>ze,refreshMetaFail:()=>Qe,removeMultivalueTag:()=>ie,removeNotifications:()=>ta,removePendingRequest:()=>aa,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:()=>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"),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("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:()=>Ma,PaginationMode:()=>Fa,PendingValidationFailsFormat:()=>fa,PopupWidgetTypes:()=>wa,PositionTypes:()=>ga,RouteType:()=>ma,TableLikeWidgetTypes:()=>Na,WidgetTypes:()=>ya,coreOperations:()=>Ia,isCustomWidget:()=>Ca,isCustomWidgetConfiguration:()=>Ea,isOperationGroup:()=>ka,isViewNavigationCategory:()=>Pa,isViewNavigationGroup:()=>Sa,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 Fa=(e=>(e.page="page",e.loadMore="loadMore",e))(Fa||{});import{OperationTypeCrud as Ma}from"@cxbox-ui/schema";var Ia=[Ma.create,Ma.save,Ma.delete,Ma.associate,Ma.cancelCreate,Ma.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 Sa(e){return!!e&&"child"in e&&!("categoryName"in e)}var Ra={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}`}`}function Ka(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 La(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 Wa(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($a,{addTailControlSequences:()=>Ba,applyParams:()=>_a,applyRawParams:()=>qa,assignTreeLinks:()=>mo,breadthFirstSearch:()=>ho,buildBcUrl:()=>La,buildSearchResultTree:()=>fo,buildUrl:()=>eo,checkShowCondition:()=>uo,defaultBuildURL:()=>oo,defaultParseURL:()=>ao,deleteUndefinedFromObject:()=>yo,escapedSrc:()=>Qa,flattenOperations:()=>so,getBcChildren:()=>po,getDescendants:()=>vo,getFieldTitle:()=>Ha,getFilterType:()=>lo,getFilters:()=>to,getSorters:()=>ro,getTemplate:()=>Ka,makeRelativeUrl:()=>Xa,matchOperationRole:()=>co,parseBcCursors:()=>Za,parseFilters:()=>io,parseSorters:()=>no,presort:()=>bo,splitBcUrl:()=>Wa,splitIntoTokens:()=>za});var Ya=/\${([^{}]+)}/g,Ga=(e,a)=>e?e.replace(Ya,((e,o)=>{const[t,r]=o.split(":");return String((null==a?void 0:a[t])||r||"")})):"",Ja=e=>!!e&&null!==e.match(Ya);function Ha(e,a){return Ja(e)?Ga(e,a):e}function za(e,a){const o=a instanceof RegExp?a:Qa(a);return e.split(o)}function Qa(e){return new RegExp(`(${null==e?void 0:e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")})`,"gi")}function Xa(e){return e.startsWith("/")?e:`/${e}`}function Za(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 eo(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=Ka(e,a);throw new Error(`Неверный тип подстановочного знака в ${o}, index: ${t}, value: ${JSON.stringify(r)}`)}o+=encodeURIComponent(r)}}return o+=e[e.length-1],o}function ao(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 oo(e){return`/screen/${e.screenName}/view/${e.viewName}/${e.bcPath}`}function to(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 ro(e){if(!e||!e.length)return null;const a={};return e.forEach(((e,o)=>{a[`_sort.${o}.${e.direction}`]=e.fieldName})),a}function io(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 no(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 lo(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 so(e){const a=[];return null==e||e.forEach((e=>{ka(e)?e.actions.forEach((e=>{a.push(e)})):a.push(e)})),a}function co(e,a,o){var t,r;if(a.operationType===e)return!0;const i=La(a.bcName,!0,o),n=so(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 po(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 uo(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 mo(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 vo(e,a){e.forEach((e=>{a.push(e.id),e.children&&vo(e.children,a)}))}function fo(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 bo(e){const a=[];return e.filter((e=>1===e.level)).forEach((e=>{a.push(e.id),e.children&&vo(e.children,a)})),a.map((a=>e.find((e=>e.id===a))))}function ho(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=ho(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 yo(e){Object.keys(e).forEach((a=>{void 0===e[a]&&delete e[a]}))}var go={screenName:"",bo:{activeBcName:"",bc:{}},cachedBc:{},views:[],primaryView:"",filters:{},sorters:{}},No=[Ua.associate,Ua.fileUpload],wo=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=no(e.defaultSort),o=io(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)=>{No.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})),Co={devPanelEnabled:!1,activeRole:null,roles:null,firstName:"",lastName:"",login:"",debugMode:!1,exportStateEnabled:!1,active:!1,logout:!1,loginSpin:!1,errorMsg:null,screens:[],pendingRequests:[],notifications:[]},Eo=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)))}));import{OperationTypeCrud as Do}from"@cxbox-ui/schema";var Fo={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},Mo=e=>(new ra).addCase(C,((e,a)=>{e.rowMeta=Fo.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===Do.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=Fo.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:Fo.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=Fo.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=Fo.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=Fo.pendingValidationFails),e.pendingDataChanges=r,e.pendingValidationFails=i?n:Fo.pendingValidationFails})).addCase(Be,(e=>{e.pendingValidationFails=Fo.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=Fo.pendingDataChanges,e.selectedCell=Fo.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})),Io={};c(Io,{apiErrorEpic:()=>Ir,bcCancelCreateDataEpic:()=>nl,bcDeleteDataEpic:()=>Bn,bcFetchDataEpic:()=>An,bcFetchRowMetaRequestEpic:()=>El,bcLoadMoreEpic:()=>pn,bcNewDataEpic:()=>Qi,bcSaveDataEpic:()=>yn,bcSelectDepthRecordEpic:()=>pl,bcSelectRecordEpic:()=>Wn,changeAssociationEpic:()=>zn,changeAssociationFullEpic:()=>kl,changeAssociationSameBcEpic:()=>_l,changeChildrenAssociationsEpic:()=>as,changeChildrenAssociationsSameBcEpic:()=>is,changeDescendantsAssociationsFullEpic:()=>ds,changeLocationEpic:()=>ur,changeScreen:()=>Xt,changeViewEpic:()=>qt,clearPendingDataChangesAfterCursorChangeEpic:()=>kt,downloadFileByUrlEpic:()=>oi,downloadFileEpic:()=>Ar,drillDownEpic:()=>Ot,fileUploadConfirmEpic:()=>Jo,getRowMetaByForceActiveEpic:()=>yt,handleRouterEpic:()=>Jt,httpError401Epic:()=>Sr,httpError409Epic:()=>Ur,httpError418Epic:()=>Lr,httpError500Epic:()=>Gr,httpErrorDefaultEpic:()=>Qr,inlinePickListFetchDataEpic:()=>Gl,loginByAnotherRoleEpic:()=>Si,loginDoneEpic:()=>Vt,loginDoneSessionEpic:()=>Ii,processPostInvokeConfirmEpic:()=>mi,processPostInvokeEpic:()=>li,refreshMetaAndReloadPageEpic:()=>Ki,refreshMetaEpic:()=>Ei,removeMultivalueTagEpic:()=>bl,saveAssociationsActiveEpic:()=>Rl,saveAssociationsPassiveEpic:()=>Ql,selectScreenFailEpic:()=>yr,selectTableCellInitEpic:()=>Zo,selectViewEpic:()=>Cn,selectViewFailEpic:()=>fr,sendOperationAssociateEpic:()=>ct,sendOperationEpic:()=>Ro,showAllTableRecordsInitEpic:()=>Et,showAssocPopupEpic:()=>qo,showFileUploadPopupEpic:()=>it,switchRoleEpic:()=>hi,userDrillDownChangeCursorsEpic:()=>wr,userDrillDownEpic:()=>nr});import{catchError as ko,concat as xo,EMPTY as jo,filter as To,mergeMap as Ao,of as Oo}from"rxjs";import{of as Po}from"rxjs";function So(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=>Po(e)))}var Ro=(e,a,{api:o})=>e.pipe(To(U.match),To((e=>co("none",e.payload,a.value))),Ao((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=La(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},to(k)),ro(x));return w&&(O._confirm=w),o.customAction(h,C,T,{widgetName:e.payload.widgetName},O).pipe(Ao((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)?xo(Oo(me({bcNames:[y]})),Oo(e.payload.onSuccessAction)):jo:xo(Oo(B({bcName:y,cursor:M})),Oo(ce({bcName:y})),...So(N,r,i,g,y))})),ko((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]),Oo($({bcName:y,bcUrl:C,viewError:l,entityError:s}))})))})));import{EMPTY as Vo,filter as Uo,mergeMap as $o,of as Bo}from"rxjs";import{WidgetTypes as _o}from"@cxbox-ui/schema";var qo=(e,a)=>e.pipe(Uo(X.match),Uo((e=>!(!e.payload.calleeBCName||!e.payload.associateFieldKey))),$o((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 Vo;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})})),Bo(z({bcName:n,cursors:Object.keys(v),dataItems:Object.values(v)}))})));import{concat as Ko,filter as Lo,mergeMap as Wo,of as Yo}from"rxjs";import{OperationTypeCrud as Go}from"@cxbox-ui/schema";var Jo=(e,a,{api:o})=>e.pipe(Lo(Ke.match),Wo((e=>{var t,r;const i=a.value,n=null==(t=i.view.popupData)?void 0:t.bcName,l=La(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(Wo((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0],t=e.preInvoke;return Ko(Yo(B({bcName:n,cursor:null})),Yo(ce({bcName:n})),Yo(ee(null)),...So(s,o,t,Go.save,n))})))})));import{concat as Ho,filter as zo,mergeMap as Qo,of as Xo}from"rxjs";var Zo=(e,a)=>e.pipe(zo(Me.match),Qo((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(Xo(ve({bcName:s,cursor:i}))),d&&n===d.fieldKey&&i===d.rowId&&(null==l?void 0:l.name)===d.widgetName||t.push(Xo(Ie({widgetName:null==l?void 0:l.name,rowId:i,fieldKey:n}))),Ho(...t)})));import{concat as et,filter as at,mergeMap as ot,of as tt}from"rxjs";import{OperationTypeCrud as rt}from"@cxbox-ui/schema";var it=(e,a)=>e.pipe(at(U.match),at((e=>co(rt.fileUpload,e.payload,a.value))),ot((e=>et(tt(G({cursorsMap:{[e.payload.bcName]:null}})),tt(Z({widgetName:e.payload.widgetName}))))));import{filter as nt,map as lt}from"rxjs";import{OperationTypeCrud as st}from"@cxbox-ui/schema";var ct=(e,a)=>e.pipe(nt(U.match),nt((e=>co(st.associate,e.payload,a.value))),lt((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 dt,concat as pt,filter as ut,mergeMap as mt,of as vt,catchError as ft}from"rxjs";import{WidgetTypes as bt}from"@cxbox-ui/schema";import{nanoid as ht}from"@reduxjs/toolkit";var yt=(e,a,{api:o})=>e.pipe(ut(H.match),mt((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===bt.AssocListPopup&&((null==(a=e.options)?void 0:a.hierarchySameBc)||(null==(o=e.options)?void 0:o.hierarchyFull))})))return dt;const v=c.view.widgets.find((e=>{var a;return e.name===(null==(a=c.view.popupData)?void 0:a.widgetName)&&[bt.PickListPopup,bt.FlatTreePopup].includes(e.type)})),f=La(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=pt(vt(ee(null)),vt(oe(null)),vt(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=ht();return C&&!m?pt(vt(ea({request:{requestId:E,type:"force-active"}})),o.getRmByForceActive(c.screen.screenName,f,s(l({},b),{vstamp:null==y?void 0:y.vstamp})).pipe(mt((e=>{const a=[vt(aa({requestId:E}))];return c.view.url===d&&a.push(vt(Q({rowMeta:e,currentRecordData:y,bcName:p,bcUrl:f,cursor:u}))),v&&a.push(w),pt(...a)})),ft((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]),pt(vt(aa({requestId:E})),c.view.url===d?pt(vt(H({bcName:p,bcUrl:La(p,!0,c),cursor:u,dataItem:{[N]:null==y?void 0:y[N]},disableRetry:!0})),vt(V({bcName:p,bcUrl:f,viewError:l,entityError:s}))):dt)})))):v?w:dt})));import{concat as gt,filter as Nt,mergeMap as wt,of as Ct}from"rxjs";var Et=(e,a)=>e.pipe(Nt(ke.match),wt((e=>{const o=[],{bcName:t,cursor:r}=e.payload,i=a.value.router;o.push(Ct(G({cursorsMap:{[t]:null}})));const n=i.bcPath.slice(0,i.bcPath.indexOf(`${t}/${r}`)),c=oo(s(l({},i),{bcPath:n}));return o.push(Ct(ce({bcName:t}))),o.push(Ct(v({location:ao(new URL(c,window.location.origin))}))),gt(...o)})));import{EMPTY as Dt,filter as Ft,mergeMap as Mt,of as It}from"rxjs";var kt=(e,a)=>e.pipe(Ft(G.match),Mt((e=>{const o=a.value,t=Za(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?It(G({cursorsMap:r})):Dt})));import{concat as xt,EMPTY as jt,filter as Tt,switchMap as At}from"rxjs";var Ot=(e,a)=>e.pipe(Tt(Y.match),At((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=ao(a),b=f.viewName;Object.entries(p).forEach((([e,a])=>{var o;const t=null==(o=io(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=no(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:ao(new URL(Xa(e),window.location.origin))}))}return n.length?xt(n):jt})));import{filter as Pt,of as St,switchMap as Rt}from"rxjs";var Vt=(e,a)=>e.pipe(Pt(b.match),Rt((e=>{const o=a.value;if("router"===o.router.type)return St(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 St(r?N({screen:r}):w({screenName:t}))})));import{EMPTY as Ut,filter as $t,of as Bt,switchMap as _t}from"rxjs";var qt=(e,a)=>e.pipe($t(C.match),_t((e=>{const o=a.value,t=Za(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?Bt(G({cursorsMap:r})):Ut})));import{catchError as Kt,EMPTY as Lt,filter as Wt,mergeMap as Yt,switchMap as Gt}from"rxjs";var Jt=(e,a,{api:o})=>e.pipe(Wt(Fe.match),Gt((e=>o.routerRequest(e.payload.path,e.payload.params).pipe(Yt((()=>Lt)),Kt((e=>(console.error(e),Lt)))))));import{filter as Ht,of as zt,switchMap as Qt}from"rxjs";var Xt=(e,a)=>e.pipe(Ht(N.match),Qt((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 zt(n?C(n):E({viewName:t}))})));import{catchError as Zt,concat as er,EMPTY as ar,filter as or,mergeMap as tr,of as rr,switchMap as ir}from"rxjs";var nr=(e,a,{api:o})=>e.pipe(or(L.match),ir((e=>{const t=a.value,{bcName:r,fieldKey:i,cursor:n}=e.payload,l=La(r,!0,t);return o.fetchRowMeta(t.screen.screenName,l).pipe(tr((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?er((null==d?void 0:d.drillDownType)!==ua.inner?rr(T({bcName:r,rowMeta:e,bcUrl:l,cursor:n})):ar,rr(W({bcName:r,bcUrl:l,cursor:n})),rr(Y({url:m||d.drillDown,drillDownType:d.drillDownType,route:p}))):ar})),Zt((e=>(console.error(e),ar))))})));import{concat as lr,EMPTY as sr,filter as cr,mergeMap as dr,of as pr}from"rxjs";var ur=(e,a)=>e.pipe(cr(v.match),dr((e=>{var o,t;const r=a.value;if(!r.session.active)return sr;if("router"===r.router.type)return pr(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 pr(e?N({screen:e}):w({screenName:l}))}const s=r.view.name,c=r.router.viewName,d=Za(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(pr(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(pr(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(pr(ce({bcName:a})))})),lr(...v)})));import{filter as mr,map as vr}from"rxjs";var fr=(e,a)=>e.pipe(mr(E.match),vr((e=>oa({type:"error",key:"selectViewFail",message:`View is missing or unavailable for your role', ${e.payload.viewName}`,duration:15}))));import{filter as br,map as hr}from"rxjs";var yr=e=>e.pipe(br(w.match),hr((e=>oa({type:"error",key:"selectScreenFail",message:`Screen is missing or unavailable for your role', ${e.payload.screenName}}`,duration:15}))));import{filter as gr,map as Nr}from"rxjs";var wr=(e,a)=>e.pipe(gr(L.match),Nr((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 Cr from"axios";import{EMPTY as Er,filter as Dr,mergeMap as Fr,of as Mr}from"rxjs";var Ir=e=>e.pipe(Dr(Le.match),Fr((e=>{const{error:a,callContext:o}=e.payload;return a.response?Mr(We({statusCode:a.response.status,error:a,callContext:o})):Cr.isCancel(a)?Er:Mr(Ve({error:{type:2}}))})));import{EMPTY as kr,filter as xr,mergeMap as jr,tap as Tr}from"rxjs";var Ar=(e,a,{api:o})=>e.pipe(xr(_e.match),Tr((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)})),jr((()=>kr)));import{filter as Or,map as Pr}from"rxjs";var Sr=e=>e.pipe(Or(We.match),Or((e=>401===e.payload.statusCode)),Pr((e=>g(null))));import{filter as Rr,map as Vr}from"rxjs";var Ur=(e,a)=>e.pipe(Rr(We.match),Rr((e=>409===e.payload.statusCode)),Vr((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 $r,EMPTY as Br,filter as _r,mergeMap as qr,of as Kr}from"rxjs";var Lr=(e,a)=>e.pipe(_r(We.match),_r((e=>418===e.payload.statusCode)),qr((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 Br;if(n.push(Kr(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(Kr(_({bcName:null==e?void 0:e.bcName,postInvoke:l.error.postActions[0],widgetName:null==e?void 0:e.name})))}return $r(...n)})));import{filter as Wr,map as Yr}from"rxjs";var Gr=(e,a)=>e.pipe(Wr(We.match),Wr((e=>500===e.payload.statusCode)),Yr((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 Jr,map as Hr}from"rxjs";var zr=[401,409,418,500],Qr=(e,a)=>e.pipe(Jr(We.match),Jr((e=>!zr.includes(e.payload.statusCode))),Hr((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 Xr,filter as Zr,mergeMap as ei,tap as ai}from"rxjs";var oi=(e,a)=>e.pipe(Zr(qe.match),ai((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)})),ei((()=>Xr)));import{EMPTY as ti,filter as ri,mergeMap as ii,of as ni}from"rxjs";var li=(e,a)=>e.pipe(ri(_.match),ii((e=>{var o;const t=a.value;switch(e.payload.postInvoke.type){case"drillDown":return ni(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:ao(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 ni(...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 ni(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 ni(xe({type:a.messageType,message:a.messageText}))}case"downloadFile":return ni(_e({fileId:e.payload.postInvoke.fileId}));case"downloadFileByUrl":return ni(qe({url:e.payload.postInvoke.url}));default:return ti}})));import{EMPTY as si,filter as ci,mergeMap as di,of as pi}from"rxjs";import{isAnyOf as ui}from"@reduxjs/toolkit";var mi=(e,a)=>e.pipe(ci(ui(K,q)),di((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 pi(se({operation:{bcName:a,operationType:o,widgetName:t},confirmOperation:r}));default:return si}})));import{concat as vi,filter as fi,switchMap as bi}from"rxjs";var hi=(e,a)=>e.pipe(fi(Ze.match),bi((e=>vi([g(null),f({login:"",password:"",role:e.payload.role})]))));import{catchError as yi,concat as gi,filter as Ni,mergeMap as wi,switchMap as Ci}from"rxjs";var Ei=(e,a,{api:o})=>e.pipe(Ni(He.match),wi((()=>{const e=a.value,{router:t}=e,{activeRole:r}=e.session;return o.refreshMeta().pipe(Ci((()=>gi([ze(),g(null),f({login:"",password:"",role:r}),v({location:t})]))),yi((e=>gi([h(e),Qe()]))))})));import{EMPTY as Di,filter as Fi,switchMap as Mi}from"rxjs";var Ii=(e,a)=>e.pipe(Fi(f.match),Mi((e=>Di)));import{catchError as ki,concat as xi,filter as ji,mergeMap as Ti,of as Ai,switchMap as Oi}from"rxjs";var Pi={401:"Invalid credentials",403:"Access denied"},Si=(e,a,{api:o})=>e.pipe(ji(f.match),ji((e=>{var a;return!!(null==(a=e.payload)?void 0:a.role)})),Oi((e=>{var t;const r=null!=(t=e.payload.role)?t:"",i=r&&r!==a.value.session.activeRole;return o.loginByRoleRequest(r).pipe(Ti((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:ao(new URL(i.url,window.location.origin))}))}return xi([...o,b({devPanelEnabled:e.devPanelEnabled,activeRole:e.activeRole,roles:e.roles,screens:e.screens,firstName:e.firstName,lastName:e.lastName,login:e.login})])})),ki((e=>(console.error(e),Ai(h({errorMsg:e.response?Pi[e.response.status]||"Server application unavailable":"Empty server response"}))))))})));import{concat as Ri,EMPTY as Vi,filter as Ui,of as $i,switchMap as Bi,take as _i,tap as qi}from"rxjs";var Ki=(e,a)=>e.pipe(Ui(Xe.match),Bi((()=>Ri($i(He(null)),e.pipe(Ui(b.match),_i(1),qi((()=>location.reload())),Bi((()=>Vi)))))));import{catchError as Li,concat as Wi,EMPTY as Yi,filter as Gi,mergeMap as Ji,of as Hi}from"rxjs";import{OperationTypeCrud as zi}from"@cxbox-ui/schema";var Qi=(e,a,{api:o})=>e.pipe(Gi(U.match),Gi((e=>co(zi.create,e.payload,a.value))),Ji((e=>{var t;const r=a.value,i=e.payload.bcName,n=null!=(t=La(i,!1,r))?t:"";return o.newBcData(r.screen.screenName,n,{widgetName:e.payload.widgetName},{_action:e.payload.operationType}).pipe(Ji((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 Wi(Hi(P({bcName:i,dataItem:s,bcUrl:n})),Hi(T({bcName:i,bcUrl:`${n}/${d}`,rowMeta:l,cursor:d})),Hi(H({bcName:i,bcUrl:null!=(t=La(i,!0,r))?t:"",cursor:d,dataItem:{id:d}})),c?Hi(_({bcName:i,postInvoke:c,cursor:d,widgetName:e.payload.widgetName})):Yi)})),Li((e=>(console.error(e),Hi(S({bcName:i}))))))})));import{catchError as Xi,filter as Zi,mergeMap as en,of as an,race as on}from"rxjs";import{filter as tn,mergeMap as rn,of as nn,take as ln}from"rxjs";import{isAnyOf as sn}from"@reduxjs/toolkit";var cn=[C,y];function dn(e,a,o,t,r=(e=>!0)){return e.pipe(tn(sn(...a)),tn(r),rn((()=>(null==o||o(),nn(t)))),ln(1))}var pn=(e,a,{api:o})=>e.pipe(Zi(x.match),en((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=La(s,m,n),f=n.screen.sorters[s],b=l(l({_page:p,_limit:u},to(n.screen.filters[s]||[])),ro(f)),h=o.createCanceler(),y=dn(e,cn,h.cancel,k({bcName:s,bcUrl:v})),g=o.fetchBcData(n.screen.screenName,v,b,h.cancelToken).pipe(en((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 an(I({bcName:s,data:t,bcUrl:v,hasNext:e.hasNext}))})),Xi((e=>(console.error(e),an(k({bcName:s,bcUrl:v}))))));return on(y,g)})));import{catchError as un,concat as mn,EMPTY as vn,filter as fn,mergeMap as bn,of as hn}from"rxjs";var yn=(e,a,{api:o})=>e.pipe(fn(U.match),fn((e=>co(Ma.save,e.payload,a.value))),bn((e=>{var t,r,i,n;const c=a.value,d=e.payload.bcName,p=null!=(t=La(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(po(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(bn((a=>{var o;const t=null==(o=a.postActions)?void 0:o[0],r=a.record;return mn(hn(ne({bcName:d,cursor:m,dataItem:r})),hn(j({widgetName:u,bcName:d})),hn(...y),t?hn(_({bcName:d,widgetName:u,postInvoke:t,cursor:r.id})):vn,e.payload.onSuccessAction?hn(e.payload.onSuccessAction):vn)})),un((a=>{var o,t,r,i,n,l,s,c;console.error(a);let u=vn;e.payload.onSuccessAction&&!(null==h?void 0:h.disableNotification)&&(u=hn(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),mn(hn(le({bcName:d,bcUrl:p,viewError:m,entityError:v})),u)})))})));import{EMPTY as gn,filter as Nn,mergeMap as wn}from"rxjs";var Cn=(e,a)=>e.pipe(Nn(C.match),wn((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}`),gn}})));import{catchError as En,concat as Dn,EMPTY as Fn,filter as Mn,mergeMap as In,of as kn,race as xn}from"rxjs";import{WidgetTypes as jn}from"@cxbox-ui/schema";import{isAnyOf as Tn}from"@reduxjs/toolkit";var An=(e,a,{api:o})=>e.pipe(Mn(Tn(D,F,X,ce,Re)),In((t=>xn(...(()=>{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[Fn];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[Fn];const M=null==f?void 0:f.find((e=>e.bcName===h.bcName&&e.type===jn.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===jn.AssocListPopup&&(null==(a=e.options)?void 0:a.hierarchyFull)})),T=null==(c=m.router.bcPath)?void 0:c.includes(`${y}/${N}`),A=La(y,T,m),O=l(l({_page:w,_limit:C},to(x?[]:m.screen.filters[y]||[])),ro(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=dn(e,cn,P.cancel,k({bcName:y,bcUrl:A})),R=dn(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(In((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 kn(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&&!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 uo(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 Fn;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 Dn(...Object.entries(po(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 kn(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):Fn,d=kn(j({widgetName:v,bcName:y}));return Dn(r,kn(I({bcName:y,data:e.data,bcUrl:A,hasNext:e.hasNext})),d,c)})),En((e=>(console.error(e),kn(k({bcName:t.payload.bcName,bcUrl:A}))))));return[S,R,V]})()))));import{catchError as On,concat as Pn,EMPTY as Sn,filter as Rn,mergeMap as Vn,of as Un}from"rxjs";import{OperationTypeCrud as $n}from"@cxbox-ui/schema";var Bn=(e,a,{api:o})=>e.pipe(Rn(U.match),Rn((e=>co($n.delete,e.payload,a.value))),Vn((e=>{const t=e.payload.widgetName,r=a.value,i=e.payload.bcName,n=r.screen.bo.bc[i].cursor,l=La(i,!0,r),s="target"===r.view.pendingValidationFailsFormat;return o.deleteBcData(r.screen.screenName,l,{widgetName:e.payload.widgetName}).pipe(Vn((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return Pn(s?Un(me({bcNames:[i]})):Sn,Un(D({bcName:i,widgetName:t})),o?Un(_({bcName:i,postInvoke:o,cursor:n,widgetName:t})):Sn)})),On((e=>(console.error(e),Un(R({bcName:i}))))))})));import{concat as _n,filter as qn,mergeMap as Kn,of as Ln}from"rxjs";var Wn=(e,a)=>e.pipe(qn(ve.match),Kn((e=>{const{bcName:o,cursor:t}=e.payload,r=Object.entries(po(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 _n(Ln(G({cursorsMap:{[o]:t},keepDelta:e.payload.keepDelta})),Ln(j({widgetName:"",bcName:o})),r)})));import{concat as Yn,filter as Gn,mergeMap as Jn,of as Hn}from"rxjs";var zn=(e,a)=>e.pipe(Gn(be.match),Jn((e=>{var o,t,r,i,n;const c=a.value,d=e.payload.dataItem._associate,p=e.payload.bcName,u=[Hn(H({bcName:p,bcUrl:La(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(Hn(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(Hn(Ce({bcNames:[w.bcName]}))),u.push(Hn(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(Hn(be({bcName:w.bcName,widgetName:e.payload.widgetName,dataItem:s(l({},C),{_associate:!1}),assocValueKey:e.payload.assocValueKey})))}return Yn(...u)})));import{catchError as Qn,concat as Xn,EMPTY as Zn,filter as el,mergeMap as al,of as ol}from"rxjs";import{OperationTypeCrud as tl}from"@cxbox-ui/schema";import{isAnyOf as rl}from"@reduxjs/toolkit";var il=rl(U),nl=(e,a,{api:o})=>e.pipe(el(il),el((e=>co(tl.cancelCreate,e.payload,a.value))),al((e=>{var t,r;const i=a.value,n=i.screen.screenName,c=e.payload.bcName,d=La(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(al((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return Xn(ol(B({bcName:c,cursor:u})),ol(G({cursorsMap:h})),o?ol(_({bcName:c,postInvoke:o,cursor:u,widgetName:m.widgetName})):Zn)})),Qn((e=>(console.error(e),ol(R({bcName:c}))))))})));import{concat as ll,filter as sl,mergeMap as cl,of as dl}from"rxjs";var pl=e=>e.pipe(sl(fe.match),cl((e=>{const{bcName:a,cursor:o,depth:t}=e.payload;return ll(dl(J({bcName:a,depth:t,cursor:o})),dl(D({bcName:a,depth:t+1,widgetName:"",ignorePageLimit:!0})))})));import{concat as ul,filter as ml,mergeMap as vl,of as fl}from"rxjs";var bl=(e,a)=>e.pipe(ml(ie.match),vl((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=mo(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)&&(vo(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(vo(n,a),a.every((e=>E.includes(e)||!C.includes(e))))return ul(fl(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 fl(H({bcName:f,bcUrl:La(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 ul(fl(H({bcName:a,bcUrl:La(a,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),fl(H({bcName:f,bcUrl:La(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))}return ul(fl(H({bcName:h,bcUrl:La(h,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),fl(H({bcName:f,bcUrl:La(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))})));import{catchError as hl,filter as yl,map as gl,mergeMap as Nl,of as wl,race as Cl}from"rxjs";var El=(e,a,{api:o})=>e.pipe(yl(j.match),Nl((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=La(s,!0,n))?i:"",p=o.createCanceler(),u=dn(e,cn,p.cancel,A({bcName:s})),m=dn(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(gl((e=>T({bcName:s,rowMeta:e,bcUrl:d,cursor:c}))),hl((e=>(console.error(e),wl(A({bcName:s}))))));return Cl(u,m,v)})));import{concat as Dl,filter as Fl,mergeMap as Ml,of as Il}from"rxjs";var kl=(e,a)=>e.pipe(Fl(ye.match),Ml((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(Il(ye({bcName:u,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},o),{_associate:!1}),assocValueKey:p})))}else d.push(Il(we({bcName:u,parentId:e.payload.dataItem.id,depth:f+1,assocValueKey:p,selected:!1})));if(d.push(Il(H({bcName:e.payload.bcName,bcUrl:La(e.payload.bcName,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))),b&&g&&v&&d.push(Il(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(Il(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:s(l({},h),{_associate:!1}),assocValueKey:p})))}return Dl(...d)})));import{catchError as xl,concat as jl,EMPTY as Tl,filter as Al,mergeMap as Ol,of as Pl,switchMap as Sl}from"rxjs";var Rl=(e,a,{api:o})=>e.pipe(Al(te.match),Al((e=>{var o;return null==(o=a.value.view.popupData)?void 0:o.active})),Sl((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=La(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(Ol((e=>{const a=e.postActions[0],o=i.view.widgets.find((e=>e.bcName===n));return jl(a?Pl(_({bcName:n,postInvoke:a,widgetName:null==o?void 0:o.name})):Tl,Pl(me({bcNames:s})),Pl(ce({bcName:n,widgetName:l})))})),xl((e=>(console.error(e),Tl))))})));import{concat as Vl,filter as Ul,mergeMap as $l,of as Bl}from"rxjs";var _l=(e,a)=>e.pipe(Ul(he.match),$l((e=>{var o,t,r,i,n,c;const d=a.value,p=e.payload.bcName,u=[Bl(H({bcName:p,bcUrl:La(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(Bl(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(Bl(he({bcName:p,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},g),{_associate:!1}),assocValueKey:e.payload.assocValueKey}))),Vl(...u)})));import{catchError as ql,filter as Kl,mergeMap as Ll,of as Wl,race as Yl}from"rxjs";var Gl=(e,a,{api:o})=>e.pipe(Kl(M.match),Ll((t=>{const{bcName:r,searchSpec:i,searchString:n}=t.payload,l=La(r,!1,a.value),s=o.createCanceler(),c=dn(e,cn,s.cancel,k({bcName:r,bcUrl:l})),d=o.fetchBcData(a.value.screen.screenName,l,{[i+".contains"]:n},s.cancelToken).pipe(Ll((e=>Wl(I({bcName:r,data:e.data,bcUrl:l})))),ql((e=>(console.error(e),Wl(k({bcName:t.payload.bcName,bcUrl:l}))))));return Yl(c,d)})));import{filter as Jl,of as Hl,switchMap as zl}from"rxjs";var Ql=(e,a)=>e.pipe(Jl(te.match),Jl((()=>{var e;return!(null==(e=a.value.view.popupData)?void 0:e.active)})),zl((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 Hl(H({bcName:i,bcUrl:La(i,!0,r),cursor:l,dataItem:{[n]:p}}))})));import{filter as Xl,mergeMap as Zl,of as es}from"rxjs";var as=(e,a,{})=>e.pipe(Xl(ge.match),Zl((e=>{const o=a.value.data[e.payload.bcName];return es(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 os,mergeMap as ts,of as rs}from"rxjs";var is=(e,a)=>e.pipe(os(Ne.match),ts((e=>{var o;const t=(null==(o=a.value.depthData[e.payload.depth])?void 0:o[e.payload.bcName])||[];return rs(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 ns,filter as ls,mergeMap as ss,of as cs}from"rxjs";var ds=(e,a)=>e.pipe(ls(we.match),ss((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=[cs(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(cs(we(s(l({},e.payload),{parentId:a.id,depth:o+1}))))})),ns(...i)})));import ps from"axios";import{from as us,map as ms,takeWhile as vs}from"rxjs";function fs(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 bs=class{constructor(e){d(this,"instance",ps.create({responseType:"json",headers:{Pragma:"no-cache","Cache-Control":"no-cache, no-store, must-revalidate"}})),this.instance=e}get(e,a,o){return us(this.instance.get(e,a)).pipe(vs(fs),ms((e=>e.data)))}put(e,a,o){return us(this.instance.put(e,a)).pipe(vs(fs),ms((e=>e.data)))}post(e,a,o,t){return us(this.instance.post(e,a)).pipe(vs(fs),ms((e=>e.data)))}delete(e,a,o,t){return us(this.instance.delete(e,a)).pipe(vs(fs),ms((e=>e.data)))}};import hs from"axios";import{EMPTY as ys,expand as gs,map as Ns,reduce as ws}from"rxjs";var Cs=class{constructor(e){d(this,"api$"),this.api$=new bs(e)}routerRequest(e,a){return this.api$.get(qa(e,a))}fetchBcData(e,a,o={},t){const r=0===o._limit,i=_a(eo`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(gs((r=>r.hasNext?this.fetchBcData(e,a,s(l({},o),{_page:++t})):ys)),ws(((e,a)=>[...e,...a.data]),[]))}fetchRowMeta(e,a,o,t){const r=_a(eo`row-meta/${e}/`+a,o);return this.api$.get(r,{cancelToken:t}).pipe(Ns((e=>{var a;return null==(a=e.data)?void 0:a.row})))}newBcData(e,a,o,t){const r=_a(eo`row-meta-new/${e}/`+a,t);return this.api$.get(r,void 0,o).pipe(Ns((e=>e.data)))}saveBcData(e,a,o,t,r){const i=_a(eo`data/${e}/`+a,r);return this.api$.put(i,{data:o},t).pipe(Ns((e=>e.data)))}deleteBcData(e,a="",o,t){const r=_a(eo`data/${e}/`+a,t);return this.api$.delete(r,o).pipe(Ns((e=>e.data)))}customAction(e,a,o,t,r){const i=_a(eo`custom-action/${e}/`+a,r);return this.api$.post(i,{data:o||{}},void 0,t).pipe(Ns((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(eo`associate/${e}/`+a,t);return this.api$.post(i,r).pipe(Ns((e=>e.data)))}getRmByForceActive(e,a,o,t){const r=_a(eo`row-meta/${e}/`+(null!=a?a:""),t);return this.api$.post(r,{data:o}).pipe(Ns((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(eo`bc-registry/refresh-meta`)}loginByRoleRequest(e){return this.api$.get(eo`login?role=${e}`)}createCanceler(){let e;const a=new hs.CancelToken((a=>{e=a}));return{cancel:e,cancelToken:a}}};function Es(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 Ds={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=Me.match(t),b=!(u&&t.payload.operationType===Ma.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=>Es(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)&&Es(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 Es(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;Es(n,e,r)&&l(U({bcName:e,operationType:Ma.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:Ma.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=La(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=so(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(Me({widgetName:d,rowId:p,fieldKey:Object.keys(i)[0]})),o(i?H({bcName:e,bcUrl:La(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=La(d,!0,n),u=p&&(null==(r=n.view.rowMeta[d])?void 0:r[p]),m=u&&so(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{Cs as Api,u as actions,Io as epics,da as interfaces,Ds as middlewares,p as reducers,$a as utils};
|
|
2
2
|
//# sourceMappingURL=cxbox-ui-core.modern.production.min.js.map
|
package/dist/index.d.ts
CHANGED
package/dist/interfaces/bc.d.ts
CHANGED
|
@@ -48,6 +48,10 @@ export interface BcMeta {
|
|
|
48
48
|
*/
|
|
49
49
|
defaultFilter?: string;
|
|
50
50
|
}
|
|
51
|
+
export type DepthBcType = Record<number, {
|
|
52
|
+
loading?: boolean;
|
|
53
|
+
cursor?: string;
|
|
54
|
+
}>;
|
|
51
55
|
export interface BcMetaState extends BcMeta {
|
|
52
56
|
/**
|
|
53
57
|
* Data fetch for this business component is in progress
|
|
@@ -71,8 +75,5 @@ export interface BcMetaState extends BcMeta {
|
|
|
71
75
|
* Used by hierarchy widgets builded around single business component:
|
|
72
76
|
* controls which record is expanded and which children should be fetched.
|
|
73
77
|
*/
|
|
74
|
-
depthBc?:
|
|
75
|
-
loading?: boolean;
|
|
76
|
-
cursor?: string;
|
|
77
|
-
}>;
|
|
78
|
+
depthBc?: DepthBcType;
|
|
78
79
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { WidgetShowCondition, WidgetTypes, WidgetOptions, WidgetFormField, WidgetListField, WidgetInfoField } from '@cxbox-ui/schema';
|
|
2
2
|
import { ComponentType } from 'react';
|
|
3
|
-
export type {
|
|
3
|
+
export type { WidgetOptions, WidgetShowCondition, LayoutRow, LayoutCol, WidgetOperations, TableOperations, WidgetTableHierarchy, WidgetFieldBase, WidgetListFieldBase, WidgetFormFieldBase, AllWidgetTypeFieldBase, NumberFieldMeta, DateFieldMeta, CheckboxFieldMeta, DateTimeFieldMeta, DateTimeWithSecondsFieldMeta, DictionaryFieldMeta, TextFieldMeta, InputFieldMeta, MultiFieldMeta, MultivalueFieldMeta, PickListFieldMeta, InlinePickListFieldMeta, FileUploadFieldMeta, WidgetFormField, WidgetListField, HiddenFieldMeta, RadioButtonFieldMeta, WidgetField, WidgetInfoField } from '@cxbox-ui/schema';
|
|
4
|
+
export { WidgetTypes, PositionTypes } from '@cxbox-ui/schema';
|
|
4
5
|
/**
|
|
5
6
|
* Different widget types that are considered `tables` in nature for purposes of applying some shared features.
|
|
6
7
|
* For example, autofocus on missing required field should work for tables but not forms.
|
|
@@ -1,17 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
*
|
|
5
|
-
*/
|
|
6
|
-
export declare function createAutoSaveMiddleware(): ({ getState, dispatch }: MiddlewareAPI<Dispatch<AnyAction>, CoreStore>) => (next: Dispatch<AnyAction>) => (action: AnyAction) => AnyAction | {
|
|
7
|
-
payload: {
|
|
8
|
-
bcName: string;
|
|
9
|
-
operationType: string;
|
|
10
|
-
widgetName: string;
|
|
11
|
-
onSuccessAction?: AnyAction;
|
|
12
|
-
confirm?: string;
|
|
13
|
-
bcKey?: string;
|
|
14
|
-
confirmOperation?: import("../interfaces").OperationPreInvoke;
|
|
15
|
-
};
|
|
16
|
-
type: string;
|
|
17
|
-
};
|
|
1
|
+
import { Middleware } from 'redux';
|
|
2
|
+
export declare const saveFormMiddleware: Middleware;
|
|
@@ -1,16 +1,6 @@
|
|
|
1
1
|
export declare const middlewares: {
|
|
2
|
-
autosave:
|
|
3
|
-
payload: {
|
|
4
|
-
bcName: string;
|
|
5
|
-
operationType: string;
|
|
6
|
-
widgetName: string;
|
|
7
|
-
onSuccessAction?: import("redux").AnyAction;
|
|
8
|
-
confirm?: string;
|
|
9
|
-
bcKey?: string;
|
|
10
|
-
confirmOperation?: import("../interfaces").OperationPreInvoke;
|
|
11
|
-
};
|
|
12
|
-
type: string;
|
|
13
|
-
};
|
|
2
|
+
autosave: import("redux").Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>;
|
|
14
3
|
requiredFields: import("redux").Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>;
|
|
15
4
|
preInvoke: import("redux").Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>;
|
|
5
|
+
popup: import("redux").Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>;
|
|
16
6
|
};
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Process preInvoke operation before action sendOperation
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
* TODO
|
|
7
|
-
*/
|
|
8
|
-
export declare function createPreInvokeMiddleware(): Middleware<{}, any, Dispatch<AnyAction>>;
|
|
4
|
+
import { Middleware } from 'redux';
|
|
5
|
+
export declare const preInvokeAction: Middleware;
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Handles validation of "required fields" for widget operations
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { Middleware } from 'redux';
|
|
5
5
|
import { Operation, OperationGroup, PendingDataItem, RowMetaField, Store } from '../interfaces';
|
|
6
6
|
import { DataItem } from '@cxbox-ui/schema';
|
|
7
|
+
export declare const requiredFields: Middleware;
|
|
7
8
|
/**
|
|
8
9
|
* Check operations and operation groups for 'autoSaveBefore' flag (i.e. operation is validation-sensetive)
|
|
9
10
|
*
|
|
@@ -17,13 +18,9 @@ export declare function operationRequiresAutosave(operationType: string, actions
|
|
|
17
18
|
*
|
|
18
19
|
* @param record Record to check
|
|
19
20
|
* @param pendingChanges Pending record changes which could override record values
|
|
20
|
-
* @param
|
|
21
|
+
* @param fieldsMeta
|
|
21
22
|
*/
|
|
22
23
|
export declare function getRequiredFieldsMissing(record: DataItem, pendingChanges: PendingDataItem, fieldsMeta: RowMetaField[]): PendingDataItem;
|
|
23
|
-
/**
|
|
24
|
-
* TODO
|
|
25
|
-
*/
|
|
26
|
-
export declare function createRequiredFieldsMiddleware(): Middleware<{}, any, Dispatch<AnyAction>>;
|
|
27
24
|
/**
|
|
28
25
|
* Checks if `pendingValidationFails` is not empty
|
|
29
26
|
*
|
package/dist/utils/api.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { AxiosInstance } from 'axios';
|
|
2
1
|
export interface ApiCallContext {
|
|
3
2
|
widgetName: string;
|
|
4
3
|
}
|
|
@@ -15,7 +14,7 @@ export declare function addTailControlSequences(url: string): string;
|
|
|
15
14
|
* @param url Url to extend
|
|
16
15
|
* @param qso Query parameters dictionary
|
|
17
16
|
*/
|
|
18
|
-
export declare function applyParams(url: string, qso
|
|
17
|
+
export declare function applyParams(url: string, qso?: QueryParamsMap): string;
|
|
19
18
|
/**
|
|
20
19
|
* TODO
|
|
21
20
|
*
|
|
@@ -23,12 +22,4 @@ export declare function applyParams(url: string, qso: QueryParamsMap): string;
|
|
|
23
22
|
* @param qso
|
|
24
23
|
*/
|
|
25
24
|
export declare function applyRawParams(url: string, qso: Record<string, any>): string;
|
|
26
|
-
/**
|
|
27
|
-
* Get Cxbox API file upload endpoint based on baseURL of axios instance
|
|
28
|
-
*
|
|
29
|
-
* Handles empty baseURL and trailing slash
|
|
30
|
-
*
|
|
31
|
-
* @returns File upload endpoint
|
|
32
|
-
*/
|
|
33
|
-
export declare function getFileUploadEndpoint(instance: AxiosInstance): string;
|
|
34
25
|
export {};
|
package/dist/utils/bc.d.ts
CHANGED
|
@@ -24,4 +24,4 @@ export declare function getBcChildren(originBcName: string, widgets: WidgetMeta[
|
|
|
24
24
|
* @param data An array of data.ts items to check for condition
|
|
25
25
|
* @param pendingDataChanges Pending data.ts changes of the currently active view
|
|
26
26
|
*/
|
|
27
|
-
export declare function checkShowCondition(condition: WidgetShowCondition, cursor: string, data: DataItem[], pendingDataChanges: Record<string, Record<string, PendingDataItem>>): boolean;
|
|
27
|
+
export declare function checkShowCondition(condition: WidgetShowCondition | undefined, cursor: string, data: DataItem[], pendingDataChanges: Record<string, Record<string, PendingDataItem>>): boolean;
|
|
@@ -14,4 +14,4 @@ export declare const cancelRequestActionTypes: import("@reduxjs/toolkit").Action
|
|
|
14
14
|
* @param cancelActionCreator an action creator which called by request cancelation
|
|
15
15
|
* @param filterFn a callback function which filters come actions
|
|
16
16
|
*/
|
|
17
|
-
export declare function cancelRequestEpic(action$: Observable<AnyAction>, actionTypes: Parameters<typeof isAnyOf>, cancelFn: () => void, cancelActionCreator: AnyAction, filterFn?: (actions: AnyAction) => boolean): Observable<AnyAction>;
|
|
17
|
+
export declare function cancelRequestEpic(action$: Observable<AnyAction>, actionTypes: Parameters<typeof isAnyOf>, cancelFn: (() => void) | undefined, cancelActionCreator: AnyAction, filterFn?: (actions: AnyAction) => boolean): Observable<AnyAction>;
|
|
@@ -1,14 +1,3 @@
|
|
|
1
1
|
import { Middleware } from 'redux';
|
|
2
2
|
import { CustomMiddlewares, CoreMiddlewares } from '../interfaces/customMiddlewares';
|
|
3
|
-
export declare function combineMiddlewares(coreMiddlewares: CoreMiddlewares, customMiddlewares?: CustomMiddlewares):
|
|
4
|
-
payload: {
|
|
5
|
-
bcName: string;
|
|
6
|
-
operationType: string;
|
|
7
|
-
widgetName: string;
|
|
8
|
-
onSuccessAction?: import("redux").AnyAction;
|
|
9
|
-
confirm?: string;
|
|
10
|
-
bcKey?: string;
|
|
11
|
-
confirmOperation?: import("../interfaces").OperationPreInvoke;
|
|
12
|
-
};
|
|
13
|
-
type: string;
|
|
14
|
-
}) | Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>)[];
|
|
3
|
+
export declare function combineMiddlewares(coreMiddlewares: CoreMiddlewares, customMiddlewares?: CustomMiddlewares): Middleware<{}, any, import("redux").Dispatch<import("redux").AnyAction>>[];
|
package/dist/utils/filters.d.ts
CHANGED
|
@@ -33,7 +33,7 @@ export declare function getSorters(sorters: BcSorter[]): Record<string, string>;
|
|
|
33
33
|
* @param defaultFilters string representation of filters
|
|
34
34
|
* @category Utils
|
|
35
35
|
*/
|
|
36
|
-
export declare function parseFilters(defaultFilters
|
|
36
|
+
export declare function parseFilters(defaultFilters?: string): BcFilter[];
|
|
37
37
|
/**
|
|
38
38
|
* Parse sorter string into separate sorter objects.
|
|
39
39
|
* String representation of sorters is url based:
|
|
@@ -48,7 +48,7 @@ export declare function parseFilters(defaultFilters: string): BcFilter[];
|
|
|
48
48
|
* @param sorters string representation of sorters
|
|
49
49
|
* @category Utils
|
|
50
50
|
*/
|
|
51
|
-
export declare function parseSorters(sorters
|
|
51
|
+
export declare function parseSorters(sorters?: string): BcSorter[];
|
|
52
52
|
/**
|
|
53
53
|
* Returns appropriate filtration type for specified field type.
|
|
54
54
|
*
|
package/dist/utils/strings.d.ts
CHANGED
|
@@ -13,10 +13,10 @@ export declare function getTemplate(literals: TemplateStringsArray, ...placehold
|
|
|
13
13
|
*
|
|
14
14
|
* @param bcName Business component name
|
|
15
15
|
* @param includeSelf If result hierarchy should include target bc or only ancestors
|
|
16
|
-
* @param
|
|
16
|
+
* @param state
|
|
17
17
|
* @category Utils
|
|
18
18
|
*/
|
|
19
|
-
export declare function buildBcUrl(bcName: string, includeSelf
|
|
19
|
+
export declare function buildBcUrl(bcName: string, includeSelf: boolean, state: Store): string;
|
|
20
20
|
export declare function splitBcUrl(bcUrl: string): string[];
|
|
21
21
|
/**
|
|
22
22
|
* If there is a template in the field name then returns the formatted string
|