@cxbox-ui/core 2.0.0-alpha.7 → 2.0.0-alpha.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/README.md +261 -28
  2. package/dist/core.d.ts +4274 -0
  3. package/dist/index.js +2 -6
  4. package/dist/index.js.map +1 -0
  5. package/package.json +19 -30
  6. package/dist/actions/index.d.ts +0 -1081
  7. package/dist/api/ObservableApi.d.ts +0 -53
  8. package/dist/api/ObservableApiWrapper.d.ts +0 -11
  9. package/dist/api/index.d.ts +0 -1
  10. package/dist/cxbox-ui-core.cjs.development.js +0 -3674
  11. package/dist/cxbox-ui-core.cjs.production.min.js +0 -2
  12. package/dist/cxbox-ui-core.esm.js +0 -3638
  13. package/dist/cxbox-ui-core.modern.development.js +0 -3568
  14. package/dist/cxbox-ui-core.modern.js +0 -3568
  15. package/dist/cxbox-ui-core.modern.production.min.js +0 -2
  16. package/dist/epics/data/bcCancelCreateDataEpic.d.ts +0 -9
  17. package/dist/epics/data/bcDeleteDataEpic.d.ts +0 -2
  18. package/dist/epics/data/bcFetchDataEpic.d.ts +0 -15
  19. package/dist/epics/data/bcFetchRowMetaRequestEpic.d.ts +0 -17
  20. package/dist/epics/data/bcLoadMoreEpic.d.ts +0 -2
  21. package/dist/epics/data/bcNewDataEpic.d.ts +0 -14
  22. package/dist/epics/data/bcSaveDataEpic.d.ts +0 -24
  23. package/dist/epics/data/bcSelectDepthRecordEpic.d.ts +0 -2
  24. package/dist/epics/data/bcSelectRecordEpic.d.ts +0 -2
  25. package/dist/epics/data/changeAssociationEpic.d.ts +0 -2
  26. package/dist/epics/data/changeAssociationFullEpic.d.ts +0 -5
  27. package/dist/epics/data/changeAssociationSameBcEpic.d.ts +0 -5
  28. package/dist/epics/data/changeChildrenAssociationsEpic.d.ts +0 -2
  29. package/dist/epics/data/changeChildrenAssociationsSameBcEpic.d.ts +0 -2
  30. package/dist/epics/data/changeDescendantsAssociationsFullEpic.d.ts +0 -5
  31. package/dist/epics/data/index.d.ts +0 -20
  32. package/dist/epics/data/inlinePickListFetchDataEpic.d.ts +0 -2
  33. package/dist/epics/data/removeMultivalueTagEpic.d.ts +0 -17
  34. package/dist/epics/data/saveAssociationsActiveEpic.d.ts +0 -7
  35. package/dist/epics/data/saveAssociationsPassiveEpic.d.ts +0 -7
  36. package/dist/epics/data/selectViewEpic.d.ts +0 -11
  37. package/dist/epics/index.d.ts +0 -6
  38. package/dist/epics/router/changeLocationEpic.d.ts +0 -10
  39. package/dist/epics/router/drilldownEpic.d.ts +0 -2
  40. package/dist/epics/router/handleRouterEpic.d.ts +0 -2
  41. package/dist/epics/router/index.d.ts +0 -10
  42. package/dist/epics/router/loginDoneEpic.d.ts +0 -9
  43. package/dist/epics/router/selectScreenEpic.d.ts +0 -7
  44. package/dist/epics/router/selectScreenFailEpic.d.ts +0 -7
  45. package/dist/epics/router/selectViewEpic.d.ts +0 -7
  46. package/dist/epics/router/selectViewFailEpic.d.ts +0 -6
  47. package/dist/epics/router/userDrillDownEpic.d.ts +0 -6
  48. package/dist/epics/router/userDrilldownChangeCursorsEpic.d.ts +0 -2
  49. package/dist/epics/screen/apiErrorEpic.d.ts +0 -2
  50. package/dist/epics/screen/downloadFileByUrlEpic.d.ts +0 -2
  51. package/dist/epics/screen/downloadFileEpic.d.ts +0 -2
  52. package/dist/epics/screen/httpError401Epic.d.ts +0 -2
  53. package/dist/epics/screen/httpError409Epic.d.ts +0 -2
  54. package/dist/epics/screen/httpError418Epic.d.ts +0 -2
  55. package/dist/epics/screen/httpError500Epic.d.ts +0 -2
  56. package/dist/epics/screen/httpErrorDefaultEpic.d.ts +0 -2
  57. package/dist/epics/screen/index.d.ts +0 -10
  58. package/dist/epics/screen/processPostInvokeConfirmEpic.d.ts +0 -2
  59. package/dist/epics/screen/processPostInvokeEpic.d.ts +0 -2
  60. package/dist/epics/session/index.d.ts +0 -5
  61. package/dist/epics/session/loginByAnotherRoleEpic.d.ts +0 -5
  62. package/dist/epics/session/loginDoneEpic.d.ts +0 -6
  63. package/dist/epics/session/refreshMetaAndReloadPageEpic.d.ts +0 -2
  64. package/dist/epics/session/refreshMetaEpic.d.ts +0 -5
  65. package/dist/epics/session/switchRoleEpic.d.ts +0 -5
  66. package/dist/epics/utils/postOperationRoutine.d.ts +0 -13
  67. package/dist/epics/view/clearPendingDataChangesAfterCursorChangeEpic.d.ts +0 -7
  68. package/dist/epics/view/fileUploadConfirmEpic.d.ts +0 -11
  69. package/dist/epics/view/getRowMetaByForceActiveEpic.d.ts +0 -5
  70. package/dist/epics/view/index.d.ts +0 -9
  71. package/dist/epics/view/selectTableCellInitEpic.d.ts +0 -2
  72. package/dist/epics/view/sendOperationAssociateEpic.d.ts +0 -5
  73. package/dist/epics/view/sendOperationEpic.d.ts +0 -10
  74. package/dist/epics/view/showAllTableRecordsInitEpic.d.ts +0 -2
  75. package/dist/epics/view/showAssocPopupEpic.d.ts +0 -2
  76. package/dist/epics/view/showFileUploadPopupEpic.d.ts +0 -5
  77. package/dist/index.d.ts +0 -7
  78. package/dist/interfaces/bc.d.ts +0 -79
  79. package/dist/interfaces/customEpics.d.ts +0 -15
  80. package/dist/interfaces/customMiddlewares.d.ts +0 -35
  81. package/dist/interfaces/data.d.ts +0 -48
  82. package/dist/interfaces/filters.d.ts +0 -32
  83. package/dist/interfaces/index.d.ts +0 -27
  84. package/dist/interfaces/navigation.d.ts +0 -48
  85. package/dist/interfaces/objectMap.d.ts +0 -36
  86. package/dist/interfaces/operation.d.ts +0 -336
  87. package/dist/interfaces/router.d.ts +0 -17
  88. package/dist/interfaces/rowMeta.d.ts +0 -74
  89. package/dist/interfaces/screen.d.ts +0 -28
  90. package/dist/interfaces/session.d.ts +0 -83
  91. package/dist/interfaces/store.d.ts +0 -14
  92. package/dist/interfaces/tree.d.ts +0 -66
  93. package/dist/interfaces/view.d.ts +0 -202
  94. package/dist/interfaces/widget.d.ts +0 -209
  95. package/dist/middlewares/autosaveMiddleware.d.ts +0 -2
  96. package/dist/middlewares/index.d.ts +0 -6
  97. package/dist/middlewares/popupMiddleware.d.ts +0 -2
  98. package/dist/middlewares/preInvokeMiddleware.d.ts +0 -5
  99. package/dist/middlewares/requiredFieldsMiddleware.d.ts +0 -30
  100. package/dist/reducers/ReducerBuilderManager.d.ts +0 -19
  101. package/dist/reducers/data.d.ts +0 -4
  102. package/dist/reducers/depthData.d.ts +0 -4
  103. package/dist/reducers/index.d.ts +0 -6
  104. package/dist/reducers/router.d.ts +0 -9
  105. package/dist/reducers/screen.d.ts +0 -10
  106. package/dist/reducers/session.d.ts +0 -10
  107. package/dist/reducers/view.d.ts +0 -10
  108. package/dist/utils/api.d.ts +0 -25
  109. package/dist/utils/apiError.d.ts +0 -19
  110. package/dist/utils/autosave.d.ts +0 -37
  111. package/dist/utils/bc.d.ts +0 -27
  112. package/dist/utils/breadthFirst.d.ts +0 -21
  113. package/dist/utils/cancelRequestEpic.d.ts +0 -27
  114. package/dist/utils/combineMiddlewares.d.ts +0 -3
  115. package/dist/utils/deleteUndefinedFromObject.d.ts +0 -1
  116. package/dist/utils/exportState.d.ts +0 -0
  117. package/dist/utils/extendPopupWidgetTypes.d.ts +0 -8
  118. package/dist/utils/filters.d.ts +0 -63
  119. package/dist/utils/hierarchy.d.ts +0 -17
  120. package/dist/utils/highlightJson.d.ts +0 -12
  121. package/dist/utils/history.d.ts +0 -50
  122. package/dist/utils/index.d.ts +0 -10
  123. package/dist/utils/operations.d.ts +0 -21
  124. package/dist/utils/others.d.ts +0 -6
  125. package/dist/utils/strings.d.ts +0 -44
  126. package/dist/utils/tree.d.ts +0 -43
  127. package/dist/utils/viewTabs.d.ts +0 -20
@@ -1,2 +0,0 @@
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:()=>Io,createSessionReducerBuilderManager:()=>xo,createViewReducerBuilderManager:()=>Ao,dataInitialState:()=>na,initialDepthDataState:()=>sa,initialRouterState:()=>Sa,initialScreenState:()=>Do,initialSessionState:()=>ko,initialViewState:()=>To});var u={};c(u,{addNotification:()=>oa,addPendingRequest:()=>ea,apiError:()=>Le,bcAddFilter:()=>Te,bcAddSorter:()=>Pe,bcCancelPendingChanges:()=>me,bcChangeCursors:()=>G,bcChangeDepthCursor:()=>J,bcChangePage:()=>Se,bcDeleteDataFail:()=>S,bcFetchDataFail:()=>k,bcFetchDataPages:()=>D,bcFetchDataRequest:()=>F,bcFetchDataSuccess:()=>I,bcFetchRowMeta:()=>j,bcFetchRowMetaFail:()=>A,bcFetchRowMetaSuccess:()=>T,bcForceUpdate:()=>ce,bcLoadMore:()=>x,bcNewData:()=>O,bcNewDataFail:()=>R,bcNewDataSuccess:()=>P,bcRemoveAllFilters:()=>Oe,bcRemoveFilter:()=>Ae,bcRemoveSorter:()=>Re,bcSaveDataFail:()=>le,bcSaveDataSuccess:()=>ne,bcSelectDepthRecord:()=>fe,bcSelectRecord:()=>ve,bulkUploadFiles:()=>Ke,changeAssociation:()=>be,changeAssociationFull:()=>ye,changeAssociationSameBc:()=>he,changeAssociations:()=>re,changeChildrenAssociations:()=>ge,changeChildrenAssociationsSameBc:()=>Ne,changeDataItem:()=>H,changeDataItems:()=>z,changeDescendantsAssociationsFull:()=>we,changeLocation:()=>v,clearValidationFails:()=>Be,closeConfirmModal:()=>$e,closeNotification:()=>je,closeViewError:()=>Ue,closeViewPopup:()=>ee,downloadFile:()=>_e,downloadFileByUrl:()=>qe,drillDown:()=>Y,dropAllAssociations:()=>Ce,dropAllAssociationsFull:()=>Fe,dropAllAssociationsSameBc:()=>Ee,emptyAction:()=>Je,exportState:()=>Ge,forceActiveChangeFail:()=>V,forceActiveRmUpdate:()=>Q,handleRouter:()=>De,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"),F=m("bcFetchDataRequest"),D=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"),R=m("bcNewDataFail"),S=m("bcDeleteDataFail"),V=m("forceActiveChangeFail"),U=m("sendOperation"),$=m("sendOperationFail"),B=m("sendOperationSuccess"),_=m("processPostInvoke"),q=m("processPreInvoke"),K=m("processPostInvokeConfirm"),L=m("userDrillDown"),W=m("userDrillDownSuccess"),Y=m("drillDown"),G=m("bcChangeCursors"),J=m("bcChangeDepthCursor"),H=m("changeDataItem"),z=m("changeDataItems"),Q=m("forceActiveRmUpdate"),X=m("showViewPopup"),Z=m("showFileUploadPopup"),ee=m("closeViewPopup"),ae=m("viewPutPickMap"),oe=m("viewClearPickMap"),te=m("saveAssociations"),re=m("cnangeAssociations"),ie=m("removeMultivalueTag"),ne=m("bcSaveDataSuccess"),le=m("bcSaveDataFail"),se=m("operationConfirmation"),ce=m("bcForceUpdate"),de=m("uploadFile"),pe=m("uploadFileDone"),ue=m("uploadFileFailed"),me=m("bcCancelPendingChanges"),ve=m("bcSelectRecord"),fe=m("bcSelectDepthRecord"),be=m("changeAssociations"),he=m("changeAssociationsSameBc"),ye=m("changeAssociationFull"),ge=m("changeChildrenAssociations"),Ne=m("changeChildrenAssociationsSameBc"),we=m("changeDescendantsAssociationsFull"),Ce=m("dropAllAssociations"),Ee=m("dropAllAssociationsSameBc"),Fe=m("dropAllAssociationsFull"),De=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"),Re=m("bcRemoveSorter"),Se=m("bcChangePage"),Ve=m("showViewError"),Ue=m("closeViewError"),$e=m("closeConfirmModal"),Be=m("clearValidationFails"),_e=m("downloadFile"),qe=m("downloadFileByUrl"),Ke=m("bulkUploadFiles"),Le=m("apiError"),We=m("httpError"),Ye=m("switchDebugMode"),Ge=m("exportState"),Je=m("emptyAction"),He=m("refreshMeta"),ze=m("refreshMetaDone"),Qe=m("refreshMetaFail"),Xe=m("refreshMetaAndReloadPage"),Ze=m("switchRole"),ea=m("addPendingRequest"),aa=m("removePendingRequest"),oa=m("addNotification"),ta=m("removeNotifications"),ra=class{constructor(){d(this,"reducers",[]),d(this,"matchers",[]),d(this,"defaultCaseReducer")}addCase(e,a){return this.reducers.push([e,a]),this}removeCase(e){return this.reducers=this.reducers.filter((a=>a[0].type!==e.type)),this}replaceCase(e,a){return this.removeCase(e).addCase(e,a),this}addMatcher(e,a){return this.matchers.push([e,a]),this}addDefaultCase(e){return this.defaultCaseReducer=e,this}get builder(){return e=>{const a=this.reducers.reduce(((e,a)=>e.addCase(...a)),e),o=this.matchers.reduce(((e,a)=>e.addMatcher(...a)),a);return void 0!==this.defaultCaseReducer?o.addDefaultCase(this.defaultCaseReducer):o}}},ia=[],na={},la=e=>(new ra).addCase(I,((e,a)=>{e[a.payload.bcName]=a.payload.data})).addCase(P,((e,a)=>{e[a.payload.bcName]=[...e[a.payload.bcName]||ia,a.payload.dataItem]})).addCase(ne,((e,a)=>{const o=a.payload.dataItem,t=e[a.payload.bcName].findIndex((e=>e.id===o.id));e[a.payload.bcName][t]=o})).addCase(T,((e,a)=>{const o=a.payload.cursor;if(!o)return;const t=(e[a.payload.bcName]||ia).find((e=>e.id===o)),r=s(l({},t),{id:o,vstamp:-1,_associate:t&&t._associate});a.payload.rowMeta.fields.find((e=>"id"===e.key&&!e.currentValue))||(a.payload.rowMeta.fields.filter((e=>"_associate"!==e.key)).forEach((e=>r[e.key]=e.currentValue)),e[a.payload.bcName]=t?e[a.payload.bcName].map((e=>e===t?r:e)):[...e[a.payload.bcName]||ia,r])})).addCase(re,((e,a)=>{e[`${a.payload.bcName}Delta`]=a.payload.records||[]})).addCase(C,(a=>e)),sa={},ca=e=>(new ra).addCase(I,((e,a)=>{var o;!a.payload.depth||a.payload.depth<2||(e[a.payload.depth]=null!=(o=e[a.payload.depth])?o:{},e[a.payload.depth][a.payload.bcName]=a.payload.data)})).addCase(C,(a=>e)),da={};c(da,{AppNotificationType:()=>pa,ApplicationErrorType:()=>ba,DrillDownType:()=>ua,FieldType:()=>va,FilterType:()=>Aa,OperationPostInvokeConfirmType:()=>Ta,OperationPostInvokeType:()=>ja,OperationPreInvokeType:()=>xa,OperationTypeCrud:()=>Ma,PaginationMode:()=>Da,PendingValidationFailsFormat:()=>fa,PopupWidgetTypes:()=>wa,PositionTypes:()=>ga,RouteType:()=>ma,TableLikeWidgetTypes:()=>Na,WidgetTypes:()=>ya,coreOperations:()=>Ia,isCustomWidget:()=>Ca,isCustomWidgetConfiguration:()=>Ea,isOperationGroup:()=>ka,isViewNavigationCategory:()=>Pa,isViewNavigationGroup:()=>Ra,isViewNavigationItem:()=>Oa,isWidgetFieldBlock:()=>Fa});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 Fa(e){return!!e&&"blockId"in e}var Da=(e=>(e.page="page",e.loadMore="loadMore",e))(Da||{});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 Ra(e){return!!e&&"child"in e&&!("categoryName"in e)}var Sa={type:"default",path:"/",search:"",params:null,screenName:null},Va=e=>(new ra).addCase(v,((e,a)=>a.payload.location));import{OperationTypeCrud as Ua}from"@cxbox-ui/schema";var $a={};function Ba(e){return e.includes("?")?e+"&":e+"?"}function _a(e,a){return a?qa(e,function(e){const a=l({},e);return Object.keys(a).reduce(((e,a)=>(e[a]||"number"==typeof e[a]||delete e[a],e)),a)}(a)):e}function qa(e,a){if(!a)return e;const o=new URLSearchParams(a).toString();return`${Ba(e)}${o&&`${o}`}`}c($a,{addTailControlSequences:()=>Ba,applyParams:()=>_a,applyRawParams:()=>qa,assignTreeLinks:()=>go,breadthFirstSearch:()=>Eo,buildBcUrl:()=>Ha,buildSearchResultTree:()=>wo,buildUrl:()=>io,checkShowCondition:()=>yo,createApiError:()=>Ya,createApiErrorObservable:()=>Ga,defaultBuildURL:()=>lo,defaultParseURL:()=>no,deleteUndefinedFromObject:()=>Fo,escapedSrc:()=>oo,flattenOperations:()=>fo,getBcChildren:()=>ho,getDescendants:()=>No,getFieldTitle:()=>eo,getFilterType:()=>vo,getFilters:()=>co,getRouteFromString:()=>so,getSorters:()=>po,getTemplate:()=>Ja,makeRelativeUrl:()=>to,matchOperationRole:()=>bo,parseBcCursors:()=>ro,parseFilters:()=>uo,parseSorters:()=>mo,presort:()=>Co,splitBcUrl:()=>za,splitIntoTokens:()=>ao});import{actions as Ka}from"@cxbox-ui/core";import{EMPTY as La,of as Wa}from"rxjs";function Ya(e,a={widgetName:"unknown"}){if(e.isAxiosError)return Ka.apiError({error:e,callContext:a})}function Ga(e,a){const o=Ya(e,a);return o?Wa(o):La}function Ja(e,...a){let o="";for(let t=0;t<a.length;t++)o+=e[t],o+="${"+t+"}";return o+=e[e.length-1],o}function Ha(e,a=!1,o){var t;const r=o.screen.bo.bc,i=r[e];if(!i)return null;const n=[i.cursor&&a?`${i.name}/${i.cursor}`:i.name];let l=i;for(;l.parentName;)l=r[l.parentName],n.push(`${l.name}/${null!=(t=l.cursor)?t:null}`);return n.reverse().join("/")}function za(e){const a=e.split("/"),o=[];for(let e=0;e<a.length;e+=2){const t=a[e],r=a[e+1];o.push(t&&r?`${t}/${r}`:t)}return o}var Qa=/\${([^{}]+)}/g,Xa=(e,a)=>e?e.replace(Qa,((e,o)=>{const[t,r]=o.split(":");return String((null==a?void 0:a[t])||r||"")})):"",Za=e=>!!e&&null!==e.match(Qa);function eo(e,a){return Za(e)?Xa(e,a):e}function ao(e,a){const o=a instanceof RegExp?a:oo(a);return e.split(o)}function oo(e){return new RegExp(`(${null==e?void 0:e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")})`,"gi")}function to(e){return e.startsWith("/")?e:`/${e}`}function ro(e){if(!e)return null;const a={},o=e.split("/");for(let e=0;e<o.length;e+=2)o[e+1]&&(a[o[e]]=o[e+1]);return a}function io(e,...a){let o="";for(let t=0;t<a.length;t++){o+=e[t];const r=a[t];if("number"==typeof r)o+=r.toString(10);else{if("string"!=typeof r){const o=Ja(e,a);throw new Error(`Неверный тип подстановочного знака в ${o}, index: ${t}, value: ${JSON.stringify(r)}`)}o+=encodeURIComponent(r)}}return o+=e[e.length-1],o}function no(e){let a=e.pathname;a.startsWith("/")&&(a=a.substring(1)),a.endsWith("/")&&(a=a.substring(0,a.length-1)),(null==a?void 0:a.includes("&"))&&!(null==a?void 0:a.includes("?"))&&(a=a.substring(0,a.indexOf("&")));const o={};e.searchParams.forEach(((e,a)=>o[a]=e));const t=a.split("/").map(decodeURIComponent);let r="unknown",i=null,n=null,l=null;if(t.length>0&&"router"===t[0])r="router";else if(1===t.length)r="default";else if(t.length>=2&&"screen"===t[0]){let e=2;r="screen",i=t[1],t.length>=4&&"view"===t[2]&&(e+=2,n=t[3]),l=t.slice(e).map(encodeURIComponent).join("/")}return{type:r,path:0===a.length||a.startsWith("/")?a:`/${a}`,search:e.search,params:o,screenName:i,viewName:n,bcPath:l}}function lo(e){return`/screen/${e.screenName}/view/${e.viewName}/${e.bcPath}`}var so=e=>no(new URL(e,window.location.origin));function co(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 po(e){if(!e||!e.length)return null;const a={};return e.forEach(((e,o)=>{a[`_sort.${o}.${e.direction}`]=e.fieldName})),a}function uo(e=""){const a=[],o=new URLSearchParams(e);return Object.keys(Object.fromEntries(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{1===i.length&&(i=JSON.parse(i[0]))}catch(e){console.warn(e)}i=Array.isArray(i)?i:[]}else i=Array.isArray(i)?i[0]:i;a.push({fieldName:t,type:r,value:i})}})),a.length?a:null}function mo(e){if(!e||!e.length)return null;const a=[],o=new URLSearchParams(e);return Array.from(o.entries()).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 vo(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 fo(e){const a=[];return null==e||e.forEach((e=>{ka(e)?e.actions.forEach((e=>{a.push(e)})):a.push(e)})),a}function bo(e,a,o){var t,r;if(a.operationType===e)return!0;const i=Ha(a.bcName,!0,o),n=fo(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 ho(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 yo(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 go(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 No(e,a){e.forEach((e=>{a.push(e.id),e.children&&No(e.children,a)}))}function wo(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 Co(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 Eo(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=Eo(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 Fo(e){Object.keys(e).forEach((a=>{void 0===e[a]&&delete e[a]}))}var Do={screenName:"",bo:{activeBcName:"",bc:{}},cachedBc:{},views:[],primaryView:"",filters:{},sorters:{}},Mo=[Ua.associate,Ua.fileUpload],Io=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=mo(e.defaultSort),o=uo(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(F,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0})).addCase(x,((e,a)=>{var o;const t=e.bo.bc[a.payload.bcName];t.page=(null!=(o=t.page)?o:1)+1,t.loading=!0})).addCase(C,((e,a)=>{var o;const t={};Array.from(new Set(null==(o=a.payload.widgets)?void 0:o.map((e=>e.bcName)))).filter((a=>e.bo.bc[a])).forEach((a=>{t[a]=s(l({},e.bo.bc[a]),{page:1})})),e.bo.bc=l(l({},e.bo.bc),t)})).addCase(I,((e,a)=>{const o=e.bo.bc[a.payload.bcName];o.hasNext=a.payload.hasNext,o.loading=!1,e.cachedBc[a.payload.bcName]=a.payload.bcUrl})).addCase(k,((e,a)=>{const o=a.payload.bcName;Object.values(e.bo.bc).some((e=>e.name===o))&&(e.bo.bc[o].loading=!1,e.cachedBc[o]=a.payload.bcUrl)})).addCase(U,((e,a)=>{Mo.includes(a.payload.operationType)||(e.bo.bc[a.payload.bcName].loading=!0)})).addCase(P,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1,e.bo.bc[a.payload.bcName].cursor=a.payload.dataItem.id,e.cachedBc[a.payload.bcName]=a.payload.bcUrl})).addCase(G,((e,a)=>{const o={},t={};Object.entries(a.payload.cursorsMap).forEach((a=>{const[r,i]=a;o[r]=s(l({},e.bo.bc[r]),{cursor:i}),t[r]=i}));const r=Object.values(o).map((e=>`${e.url}/:id`));Object.values(e.bo.bc).forEach((a=>{r.some((e=>a.url.includes(e)))&&(o[a.name]=s(l({},e.bo.bc[a.name]),{cursor:null}),t[a.name]=null)})),Object.assign(e.bo.bc,o),Object.assign(e.cachedBc,t)})).addCase(J,((e,a)=>{var o;1===a.payload.depth?e.bo.bc[a.payload.bcName].cursor=a.payload.cursor:(e.bo.bc[a.payload.bcName].depthBc=null!=(o=e.bo.bc[a.payload.bcName].depthBc)?o:{},e.bo.bc[a.payload.bcName].depthBc[a.payload.depth].cursor=a.payload.cursor)})).addCase(ve,((e,a)=>{e.bo.bc[a.payload.bcName].cursor=a.payload.cursor})).addCase(ce,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!0,e.cachedBc[a.payload.bcName]=null})).addCase(Te,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=t,i=e.filters[o]||[],n=i.find((e=>e.fieldName===t.fieldName&&e.type===t.type)),c=n?i.map((e=>e===n?s(l({},n),{value:r.value}):e)):[...i,r];e.bo.bc[o].page=1,e.filters[o]=c})).addCase(Ae,((e,a)=>{const{bcName:o,filter:t}=a.payload,r=(e.filters[o]||[]).filter((e=>e.fieldName!==(null==t?void 0:t.fieldName)||e.type!==t.type)),i=s(l({},e.filters),{[o]:r});r.length||delete i[o],e.bo.bc[a.payload.bcName].page=1,e.filters=i})).addCase(Oe,((e,a)=>{delete e.filters[a.payload.bcName],e.bo.bc[a.payload.bcName].page=1})).addCase(Pe,((e,a)=>{e.sorters[a.payload.bcName]=Array.isArray(a.payload.sorter)?a.payload.sorter:[a.payload.sorter]})).addCase(Se,((e,a)=>{e.bo.bc[a.payload.bcName].page=a.payload.page,e.bo.bc[a.payload.bcName].loading=!0})).addCase(X,((e,a)=>{var o,t;const r=null!=(t=null==(o=e.bo.bc[a.payload.bcName])?void 0:o.page)?t:1;e.bo.bc[a.payload.bcName].page=a.payload.bcName===a.payload.calleeBCName?r:1,e.bo.bc[a.payload.bcName].loading=a.payload.bcName!==a.payload.calleeBCName})).addCase(B,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(S,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase($,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(ne,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})).addCase(le,((e,a)=>{e.bo.bc[a.payload.bcName].loading=!1})),ko={devPanelEnabled:!1,activeRole:null,roles:null,firstName:"",lastName:"",login:"",debugMode:!1,exportStateEnabled:!1,active:!1,logout:!1,loginSpin:!1,errorMsg:null,screens:[],pendingRequests:[],notifications:[],isMetaRefreshing:!1},xo=e=>(new ra).addCase(f,(e=>{e.loginSpin=!0,e.errorMsg=null})).addCase(b,((e,a)=>{(e=Object.assign(e,a.payload)).loginSpin=!1,e.active=!0,e.logout=!1})).addCase(h,((e,a)=>{e.loginSpin=!1,e.errorMsg=a.payload.errorMsg})).addCase(y,(e=>{e.loginSpin=!1,e.active=!1,e.logout=!0})).addCase(Ye,((e,a)=>{e.debugMode=a.payload})).addCase(ea,((e,a)=>{var o;null==(o=e.pendingRequests)||o.push(a.payload.request)})).addCase(aa,((e,a)=>{var o;e.pendingRequests=null==(o=e.pendingRequests)?void 0:o.filter((e=>e.requestId!==a.payload.requestId))})).addCase(oa,((e,a)=>{e.notifications.push(a.payload)})).addCase(ta,((e,a)=>{const o=a.payload;e.notifications=e.notifications.filter((e=>!o.includes(e.key)))})).addCase(He,(e=>{e.isMetaRefreshing=!0})).addCase(ze,(e=>{e.isMetaRefreshing=!1})).addCase(Qe,(e=>{e.isMetaRefreshing=!1}));import{OperationTypeCrud as jo}from"@cxbox-ui/schema";var To={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},Ao=e=>(new ra).addCase(C,((e,a)=>{e.rowMeta=To.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===jo.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=To.selectedCell})).addCase(Q,((e,a)=>{var o,t,r,i,n;const{bcName:s,bcUrl:c,currentRecordData:d,rowMeta:p,cursor:u}=a.payload,m={},v={},f={},b=[];p.fields.forEach((e=>{v[e.key]=e.currentValue,e.forceActive&&b.push(e.key)})),e.pendingDataChanges[s]=null!=(o=e.pendingDataChanges[s])?o:{};const h=l(l({},d),e.pendingDataChanges[s][u]);Object.keys(h).forEach((e=>{void 0!==v[e]&&h[e]!==v[e]&&(f[e]=v[e])}));const y=l(l({},e.pendingDataChanges[s][u]),f);b.forEach((e=>{void 0!==y[e]&&(m[e]=y[e])})),e.handledForceActive[s]=null!=(t=e.handledForceActive[s])?t:{},e.handledForceActive[s][u]=null!=(r=e.handledForceActive[s][u])?r:{},Object.assign(e.handledForceActive[s][u],m),e.pendingDataChanges[s]=null!=(i=e.pendingDataChanges[s])?i:{},e.pendingDataChanges[s][u]=y,e.rowMeta[s]=null!=(n=e.rowMeta[s])?n:{},e.rowMeta[s][c]=p})).addCase(H,((e,a)=>{var o,t,r,i;const n=a.payload.bcName,s=l(l({},(e.pendingDataChanges[a.payload.bcName]||{})[a.payload.cursor]||{}||{}),a.payload.dataItem),c=null==(o=e.rowMeta[n])?void 0:o[a.payload.bcUrl],d={},p="target"===e.pendingValidationFailsFormat;Object.keys(s).forEach((e=>{const a=null==c?void 0:c.fields.find((a=>a.required&&a.key===e)),o=null==s[e]||""===s[e]||Array.isArray(s[e])&&0===Object.keys(s[e]).length;a&&o&&(d[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]=s,p?(e.pendingValidationFails=null!=(r=e.pendingValidationFails)?r:{},e.pendingValidationFails[n]=null!=(i=e.pendingValidationFails[n])?i:{},e.pendingValidationFails[n][a.payload.cursor]=d):e.pendingValidationFails=d})).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:To.pendingValidationFails})).addCase(Ee,((e,a)=>{})).addCase(Fe,((e,a)=>{})).addCase(R,((e,a)=>{e.metaInProgress[a.payload.bcName]=!1})).addCase(A,((e,a)=>{e.metaInProgress[a.payload.bcName]=!1})).addCase(V,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase(le,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase($,((e,a)=>{var o;const{bcName:t,bcUrl:r,entityError:i}=a.payload,n={};i&&Object.entries(i.fields).forEach((([e,a])=>{n[e]=a})),e.rowMeta[t]=null!=(o=e.rowMeta[t])?o:{},e.rowMeta[t][r].errors=n})).addCase(B,((e,a)=>{var o,t,r,i;const n=a.payload.bcName,l=a.payload.cursor,s="target"===e.pendingValidationFailsFormat;e.pendingDataChanges[n]=null!=(o=e.pendingDataChanges[n])?o:{},e.pendingDataChanges[n][l]={},s?(e.pendingValidationFails=null!=(t=e.pendingValidationFails)?t:{},e.pendingValidationFails[n]=null!=(r=e.pendingValidationFails[n])?r:{},e.pendingValidationFails[n][l]={}):e.pendingValidationFails=To.pendingValidationFails,e.handledForceActive[n]=null!=(i=e.handledForceActive[n])?i:{},e.handledForceActive[n][l]={}})).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?(e.pendingValidationFails=null!=(t=e.pendingValidationFails)?t:{},e.pendingValidationFails[i][n]={}):e.pendingValidationFails=To.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=To.pendingValidationFails),e.pendingDataChanges=r,e.pendingValidationFails=i?n:To.pendingValidationFails})).addCase(Be,(e=>{e.pendingValidationFails=To.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=To.pendingDataChanges,e.selectedCell=To.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})),Oo={};c(Oo,{apiErrorEpic:()=>Rr,bcCancelCreateDataEpic:()=>fl,bcDeleteDataEpic:()=>Hn,bcFetchDataEpic:()=>_n,bcFetchRowMetaRequestEpic:()=>Ol,bcLoadMoreEpic:()=>Nn,bcNewDataEpic:()=>nn,bcSaveDataEpic:()=>In,bcSelectDepthRecordEpic:()=>Nl,bcSelectRecordEpic:()=>el,changeAssociationEpic:()=>il,changeAssociationFullEpic:()=>Ul,changeAssociationSameBcEpic:()=>Ql,changeChildrenAssociationsEpic:()=>ps,changeChildrenAssociationsSameBcEpic:()=>fs,changeDescendantsAssociationsFullEpic:()=>Ns,changeLocationEpic:()=>Nr,changeScreen:()=>nr,changeViewEpic:()=>zt,clearPendingDataChangesAfterCursorChangeEpic:()=>St,downloadFileByUrlEpic:()=>di,downloadFileEpic:()=>Br,drillDownEpic:()=>_t,fileUploadConfirmEpic:()=>ot,getRowMetaByForceActiveEpic:()=>Mt,handleRouterEpic:()=>or,httpError401Epic:()=>Kr,httpError409Epic:()=>Yr,httpError418Epic:()=>Xr,httpError500Epic:()=>ai,httpErrorDefaultEpic:()=>ii,inlinePickListFetchDataEpic:()=>ts,loginByAnotherRoleEpic:()=>Ki,loginDoneEpic:()=>Wt,loginDoneSessionEpic:()=>Ri,processPostInvokeConfirmEpic:()=>wi,processPostInvokeEpic:()=>fi,refreshMetaAndReloadPageEpic:()=>Qi,refreshMetaEpic:()=>Ti,removeMultivalueTagEpic:()=>Dl,saveAssociationsActiveEpic:()=>Yl,saveAssociationsPassiveEpic:()=>ls,selectScreenFailEpic:()=>Mr,selectTableCellInitEpic:()=>lt,selectViewEpic:()=>Tn,selectViewFailEpic:()=>Er,sendOperationAssociateEpic:()=>ht,sendOperationEpic:()=>qo,showAllTableRecordsInitEpic:()=>Tt,showAssocPopupEpic:()=>Jo,showFileUploadPopupEpic:()=>mt,switchRoleEpic:()=>Di,userDrillDownChangeCursorsEpic:()=>xr,userDrillDownEpic:()=>vr});import{catchError as Po,concat as Ro,EMPTY as So,filter as Vo,mergeMap as Uo,of as $o}from"rxjs";import{of as Bo}from"rxjs";function _o(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=>Bo(e)))}var qo=(e,a,{api:o})=>e.pipe(Vo(U.match),Vo((e=>bo("none",e.payload,a.value))),Uo((e=>{var t,r,i,n,c,d,p,u,m,f;const b=a.value,h=b.screen.screenName,{bcName:y,operationType:g,widgetName:N}=e.payload,w=(null==(t=e.payload.confirmOperation)?void 0:t.type)||e.payload.confirm,C=Ha(y,!0,b),E=b.screen.bo.bc[y],F=C&&(null==(r=b.view.rowMeta[y])?void 0:r[C]),D=null==F?void 0:F.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)D.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},co(k)),po(x));w&&(O._confirm=w);const P={widgetName:e.payload.widgetName};return o.customAction(h,C,T,P,O).pipe(Uo((a=>{var o,t;const r=null==(o=a.postActions)?void 0:o[0],i=a.record,n=a.preInvoke;return A?(null==(t=null==e?void 0:e.payload)?void 0:t.onSuccessAction)?Ro($o(me({bcNames:[y]})),$o(e.payload.onSuccessAction)):So:Ro($o(B({bcName:y,cursor:M,dataItem:i})),$o(ce({bcName:y})),..._o(N,r,n,g,y))})),Po((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]),Ro($o($({bcName:y,bcUrl:C,viewError:l,entityError:s})),Ga(e,P))})))})));import{EMPTY as Ko,filter as Lo,mergeMap as Wo,of as Yo}from"rxjs";import{WidgetTypes as Go}from"@cxbox-ui/schema";var Jo=(e,a)=>e.pipe(Lo(X.match),Lo((e=>!(!e.payload.calleeBCName||!e.payload.associateFieldKey))),Wo((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===Go.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 Ko;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})})),Yo(z({bcName:n,cursors:Object.keys(v),dataItems:Object.values(v)}))})));import{catchError as Ho,concat as zo,EMPTY 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,{api:o})=>e.pipe(Xo(Ke.match),Zo((e=>{var t,r,i,n;const l=a.value,s=null==(t=e.payload.isPopup)||t,c=null!=(i=e.payload.bcName)?i:null==(r=l.view.popupData)?void 0:r.bcName,d=Ha(c,!0,l),p=null==(n=l.view.widgets.find((e=>e.bcName===c)))?void 0:n.name,u=e.payload.fileIds.map((e=>({id:e,_associate:!0,vstamp:0})));return o.associate(l.screen.screenName,d,u,null).pipe(Zo((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0],t=e.preInvoke;return zo(et(B({bcName:c,cursor:null})),et(ce({bcName:c})),s?et(ee(null)):Qo,..._o(p,o,t,at.save,c))})),Ho((e=>(console.error(e),Ga(e)))))})));import{concat as tt,filter as rt,mergeMap as it,of as nt}from"rxjs";var lt=(e,a)=>e.pipe(rt(Me.match),it((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(nt(ve({bcName:s,cursor:i}))),d&&n===d.fieldKey&&i===d.rowId&&(null==l?void 0:l.name)===d.widgetName||t.push(nt(Ie({widgetName:null==l?void 0:l.name,rowId:i,fieldKey:n}))),tt(...t)})));import{concat as st,filter as ct,mergeMap as dt,of as pt}from"rxjs";import{OperationTypeCrud as ut}from"@cxbox-ui/schema";var mt=(e,a)=>e.pipe(ct(U.match),ct((e=>bo(ut.fileUpload,e.payload,a.value))),dt((e=>st(pt(G({cursorsMap:{[e.payload.bcName]:null}})),pt(Z({widgetName:e.payload.widgetName}))))));import{filter as vt,map as ft}from"rxjs";import{OperationTypeCrud as bt}from"@cxbox-ui/schema";var ht=(e,a)=>e.pipe(vt(U.match),vt((e=>bo(bt.associate,e.payload,a.value))),ft((e=>{var o,t;const r=a.value,i=Ha(e.payload.bcName,!0,r);return"multiFileUpload"===fo(null==(t=null==(o=r.view.rowMeta[e.payload.bcName])?void 0:o[i])?void 0:t.actions).find((a=>a.type===e.payload.operationType)).subtype?Z({widgetName:e.payload.widgetName}):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 yt,concat as gt,filter as Nt,mergeMap as wt,of as Ct,catchError as Et}from"rxjs";import{WidgetTypes as Ft}from"@cxbox-ui/schema";import{nanoid as Dt}from"@reduxjs/toolkit";var Mt=(e,a,{api:o})=>e.pipe(Nt(H.match),wt((e=>{var t,r,i,n,c;const d=a.value,p=d.view.url,{bcName:u,cursor:m,disableRetry:v}=e.payload;if(d.view.widgets.some((e=>{var a,o;return e.bcName===u&&e.type===Ft.AssocListPopup&&((null==(a=e.options)?void 0:a.hierarchySameBc)||(null==(o=e.options)?void 0:o.hierarchyFull))})))return yt;const f=d.view.widgets.find((e=>{var a;return e.name===(null==(a=d.view.popupData)?void 0:a.widgetName)&&[Ft.PickListPopup,Ft.FlatTreePopup].includes(e.type)})),b=Ha(u,!0,d),h=null==(t=d.view.pendingDataChanges[u])?void 0:t[m],y=(null==(r=d.view.handledForceActive[u])?void 0:r[m])||{},g=null==(i=d.data[u])?void 0:i.find((e=>e.id===m)),N=null==(c=null==(n=d.view.rowMeta[u])?void 0:n[b])?void 0:c.fields;let w=null;const C=gt(Ct(ee(null)),Ct(oe(null)),Ct(Oe({bcName:u}))),E=null==N?void 0:N.filter((e=>e.forceActive&&void 0!==h[e.key])).some((e=>{const a=h[e.key]!==y[e.key];return a&&(w=e.key),a})),F=Dt();return E&&!v?gt(Ct(ea({request:{requestId:F,type:"force-active"}})),o.getRmByForceActive(d.screen.screenName,b,s(l({},h),{vstamp:null==g?void 0:g.vstamp})).pipe(wt((e=>{const a=[Ct(aa({requestId:F}))];return d.view.url===p&&a.push(Ct(Q({rowMeta:e,currentRecordData:g,bcName:u,bcUrl:b,cursor:m}))),f&&a.push(C),gt(...a)})),Et((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]),gt(Ct(aa({requestId:F})),d.view.url===p?gt(Ct(H({bcName:u,bcUrl:Ha(u,!0,d),cursor:m,dataItem:{[w]:null==g?void 0:g[w]},disableRetry:!0})),Ct(V({bcName:u,bcUrl:b,viewError:l,entityError:s}))):yt,Ga(e))})))):f?C:yt})));import{concat as It,filter as kt,mergeMap as xt,of as jt}from"rxjs";var Tt=(e,a)=>e.pipe(kt(ke.match),xt((e=>{const o=[],{bcName:t,cursor:r}=e.payload,i=a.value.router;o.push(jt(G({cursorsMap:{[t]:null}})));const n=i.bcPath.slice(0,i.bcPath.indexOf(`${t}/${r}`)),c=lo(s(l({},i),{bcPath:n}));return o.push(jt(ce({bcName:t}))),o.push(jt(v({location:no(new URL(c,window.location.origin))}))),It(...o)})));import{EMPTY as At,filter as Ot,mergeMap as Pt,of as Rt}from"rxjs";var St=(e,a)=>e.pipe(Ot(G.match),Pt((e=>{const o=a.value,t=ro(o.router.bcPath)||{},r={};return Object.entries(t).forEach((e=>{const[a,t]=e,i=o.screen.bo.bc[a];i&&(null==i?void 0:i.cursor)===t||(r[a]=t)})),Object.keys(r).length?Rt(G({cursorsMap:r})):At})));import{concat as Vt,EMPTY as Ut,filter as $t,switchMap as Bt}from"rxjs";var _t=(e,a)=>e.pipe($t(Y.match),Bt((e=>{var o,t;const r=a.value,i=e.payload.url,n=[];switch(e.payload.drillDownType){case ua.external:window.location.href=i;break;case ua.externalNew:/^[a-z0-9]+:\/\//i.test(i)&&window.open(i);break;case ua.relative:window.location.href=`${window.location.origin}/${i}`;break;case ua.relativeNew:window.open(`${window.location.origin}/${i}`,"_blank");break;default:const[e]=i.split("?"),a=new URL(i,window.location.origin),c=a.searchParams.get("filters"),d=a.searchParams.get("sorters");let p={},u={};try{p=null!=(o=JSON.parse(c))?o:p}catch(e){c&&console.warn("Failed to parse filters on drilldown"),p={}}try{u=null!=(t=JSON.parse(d))?t:u}catch(e){d&&console.warn("Failed to parse sorters on drilldown"),u={}}const m={};Object.keys(r.screen.filters).forEach((e=>{(""===p[e]||p[e])&&(m[e]=!0,n.push(Oe({bcName:e})))}));const f=no(a),b=f.viewName;Object.entries(p).forEach((([e,a])=>{var o;const t=null==(o=uo(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=mo(a);n.push(Pe({bcName:e,sorter:o})),m[e]=!0})),function(e,a,o=[]){const t=[];if(!e&&!a)return null;if(!e)return Object.keys(a);if(!a)return Object.keys(e);const r=Object.keys(a);return r.forEach((r=>{e[r]===a[r]||o.includes(r)||t.push(r)})),Object.keys(e).forEach((e=>{r.includes(e)||t.push(e)})),t}(r.router,f,["params"]).length>0||Object.keys(m).forEach((e=>{n.push(ce({bcName:e}))})),n.push(v({location:no(new URL(to(e),window.location.origin)),forceUpdate:!0}))}return n.length?Vt(n):Ut})));import{filter as qt,of as Kt,switchMap as Lt}from"rxjs";var Wt=(e,a)=>e.pipe(qt(b.match),Lt((e=>{const o=a.value;return Kt("router"===o.router.type?De(o.router):v({location:so(window.location.hash.replace("#","")),forceUpdate:!0}))})));import{EMPTY as Yt,filter as Gt,of as Jt,switchMap as Ht}from"rxjs";var zt=(e,a)=>e.pipe(Gt(C.match),Ht((e=>{const o=a.value,t=ro(o.router.bcPath)||{},r={};return Object.entries(t).forEach((e=>{const[a,t]=e,i=o.screen.bo.bc[a];i&&i.cursor===t||(r[a]=t)})),Object.keys(r).length?Jt(G({cursorsMap:r})):Yt})));import{catchError as Qt,EMPTY as Xt,filter as Zt,mergeMap as er,switchMap as ar}from"rxjs";var or=(e,a,{api:o})=>e.pipe(Zt(De.match),ar((e=>o.routerRequest(e.payload.path,e.payload.params).pipe(er((()=>Xt)),Qt((e=>(console.error(e),Ga(e))))))));import{filter as tr,of as rr,switchMap as ir}from"rxjs";var nr=(e,a)=>e.pipe(tr(N.match),ir((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 rr(n?C(n):E({viewName:t}))})));import{catchError as lr,concat as sr,EMPTY as cr,filter as dr,mergeMap as pr,of as ur,switchMap as mr}from"rxjs";var vr=(e,a,{api:o})=>e.pipe(dr(L.match),mr((e=>{const t=a.value,{bcName:r,fieldKey:i,cursor:n}=e.payload,l=Ha(r,!0,t);return o.fetchRowMeta(t.screen.screenName,l).pipe(pr((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?sr((null==d?void 0:d.drillDownType)!==ua.inner?ur(T({bcName:r,rowMeta:e,bcUrl:l,cursor:n})):cr,ur(W({bcName:r,bcUrl:l,cursor:n})),ur(Y({url:m||d.drillDown,drillDownType:d.drillDownType,route:p}))):cr})),lr((e=>(console.error(e),Ga(e)))))})));import{concat as fr,EMPTY as br,filter as hr,mergeMap as yr,of as gr}from"rxjs";var Nr=(e,a)=>e.pipe(hr(v.match),yr((e=>{var o,t;const r=a.value;if(!r.session.active)return br;if("router"===r.router.type)return gr(De(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||e.payload.forceUpdate){const e=r.session.screens.find((e=>e.name===l));return gr(e?N({screen:e}):w({screenName:l}))}const s=r.view.name,c=r.router.viewName,d=ro(r.router.bcPath)||{},p={};Object.entries(d).forEach((e=>{const[a,o]=e,t=r.screen.bo.bc[a];t&&(null==t?void 0:t.cursor)===o||(p[a]=o)}));const u=Object.keys(p).length,m=c!==s,v=[];if(u&&v.push(gr(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(gr(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(gr(ce({bcName:a})))})),fr(...v)})));import{filter as wr,map as Cr}from"rxjs";var Er=(e,a)=>e.pipe(wr(E.match),Cr((e=>oa({type:"error",key:"selectViewFail",message:"View is missing or unavailable for your role",options:{messageOptions:{viewName:e.payload.viewName}},duration:15}))));import{filter as Fr,map as Dr}from"rxjs";var Mr=e=>e.pipe(Fr(w.match),Dr((e=>oa({type:"error",key:"selectScreenFail",message:"Screen is missing or unavailable for your role",options:{messageOptions:{screenName:e.payload.screenName}},duration:15}))));import{filter as Ir,map as kr}from"rxjs";var xr=(e,a)=>e.pipe(Ir(L.match),kr((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 jr from"axios";import{EMPTY as Tr,filter as Ar,mergeMap as Or,of as Pr}from"rxjs";var Rr=e=>e.pipe(Ar(Le.match),Or((e=>{const{error:a,callContext:o}=e.payload;return a.response?Pr(We({statusCode:a.response.status,error:a,callContext:o})):jr.isCancel(a)?Tr:Pr(Ve({error:{type:2}}))})));import{EMPTY as Sr,filter as Vr,mergeMap as Ur,tap as $r}from"rxjs";var Br=(e,a,{api:o})=>e.pipe(Vr(_e.match),$r((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)})),Ur((()=>Sr)));import{filter as _r,map as qr}from"rxjs";var Kr=e=>e.pipe(_r(We.match),_r((e=>401===e.payload.statusCode)),qr((e=>g(null))));import{filter as Lr,map as Wr}from"rxjs";var Yr=(e,a)=>e.pipe(Lr(We.match),Lr((e=>409===e.payload.statusCode)),Wr((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 Gr,EMPTY as Jr,filter as Hr,mergeMap as zr,of as Qr}from"rxjs";var Xr=(e,a)=>e.pipe(Hr(We.match),Hr((e=>418===e.payload.statusCode)),zr((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 Jr;if(n.push(Qr(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(Qr(_({bcName:null==e?void 0:e.bcName,postInvoke:l.error.postActions[0],widgetName:null==e?void 0:e.name})))}return Gr(...n)})));import{filter as Zr,map as ei}from"rxjs";var ai=(e,a)=>e.pipe(Zr(We.match),Zr((e=>500===e.payload.statusCode)),ei((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 oi,map as ti}from"rxjs";var ri=[401,409,418,500],ii=(e,a)=>e.pipe(oi(We.match),oi((e=>!ri.includes(e.payload.statusCode))),ti((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 ni,filter as li,mergeMap as si,tap as ci}from"rxjs";var di=(e,a)=>e.pipe(li(qe.match),ci((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)})),si((()=>ni)));import{EMPTY as pi,filter as ui,mergeMap as mi,of as vi}from"rxjs";var fi=(e,a)=>e.pipe(ui(_.match),mi((e=>{var o;const t=a.value;switch(e.payload.postInvoke.type){case"drillDown":return vi(Y(s(l({},e.payload.postInvoke),{route:t.router,widgetName:e.payload.widgetName})));case"postDelete":{const a=[G({cursorsMap:{[e.payload.bcName]:null}})];if(null==(o=t.router.bcPath)?void 0:o.includes(`${e.payload.bcName}/`)){const o=t.router.bcPath.split(e.payload.bcName)[0]||"";a.push(v({location:no(new URL(`/screen/${t.router.screenName}/view/${t.router.viewName}/${o}`,window.location.origin))}))}else a.push(F({bcName:e.payload.bcName,widgetName:e.payload.widgetName}));return vi(...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 vi(l?D({bcName:null==r?void 0:r.name,widgetName:i,from:1,to:null==r?void 0:r.page}):F({bcName:null==r?void 0:r.name,widgetName:i}))}case"showMessage":{const a=e.payload.postInvoke;return vi(xe({type:a.messageType,message:a.messageText}))}case"downloadFile":return vi(_e({fileId:e.payload.postInvoke.fileId}));case"downloadFileByUrl":return vi(qe({url:e.payload.postInvoke.url}));default:return pi}})));import{EMPTY as bi,filter as hi,mergeMap as yi,of as gi}from"rxjs";import{isAnyOf as Ni}from"@reduxjs/toolkit";var wi=(e,a)=>e.pipe(hi(Ni(K,q)),yi((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 gi(se({operation:{bcName:a,operationType:o,widgetName:t},confirmOperation:r}));default:return bi}})));import{concat as Ci,filter as Ei,switchMap as Fi}from"rxjs";var Di=(e,a)=>e.pipe(Ei(Ze.match),Fi((e=>Ci([g(null),f({login:"",password:"",role:e.payload.role})]))));import{catchError as Mi,concat as Ii,filter as ki,mergeMap as xi,switchMap as ji}from"rxjs";var Ti=(e,a,{api:o})=>e.pipe(ki(He.match),xi((()=>{const e=a.value,{activeRole:t}=e.session;return o.refreshMeta().pipe(ji((()=>Ii([ze(),g(null),f({login:"",password:"",role:t})]))),Mi((e=>Ii([h(e),Qe(),Ya(e)]))))})));import{EMPTY as Ai,filter as Oi,switchMap as Pi}from"rxjs";var Ri=(e,a)=>e.pipe(Oi(f.match),Pi((e=>Ai)));import{catchError as Si,concat as Vi,filter as Ui,mergeMap as $i,of as Bi,switchMap as _i}from"rxjs";var qi={401:"Invalid credentials",403:"Access denied"},Ki=(e,a,{api:o})=>e.pipe(Ui(f.match),Ui((e=>{var a;return!!(null==(a=e.payload)?void 0:a.role)})),_i((e=>{var t;const r=null!=(t=e.payload.role)?t:"",i=r&&r!==a.value.session.activeRole;return o.loginByRoleRequest(r).pipe($i((e=>{var a;const o=[];if(i){const t=e.screens.find((e=>e.defaultScreen))||e.screens[0],r=null!=(a=null==t?void 0:t.primary)?a:t.meta.views[0].name,i=null==t?void 0:t.meta.views.find((e=>r===e.name));i&&o.push(v({location:no(new URL(i.url,window.location.origin))}))}return Vi([...o,b({devPanelEnabled:e.devPanelEnabled,activeRole:e.activeRole,roles:e.roles,screens:e.screens,firstName:e.firstName,lastName:e.lastName,login:e.login})])})),Si((e=>(console.error(e),Vi(Bi(h({errorMsg:e.response?qi[e.response.status]||"Server application unavailable":"Empty server response"})),Ga(e))))))})));import{concat as Li,EMPTY as Wi,filter as Yi,of as Gi,switchMap as Ji,take as Hi,tap as zi}from"rxjs";var Qi=(e,a)=>e.pipe(Yi(Xe.match),Ji((()=>Li(Gi(He()),e.pipe(Yi(b.match),Hi(1),zi((()=>location.reload())),Ji((()=>Wi)))))));import{catchError as Xi,concat as Zi,EMPTY as en,filter as an,mergeMap as on,of as tn}from"rxjs";import{OperationTypeCrud as rn}from"@cxbox-ui/schema";var nn=(e,a,{api:o})=>e.pipe(an(U.match),an((e=>bo(rn.create,e.payload,a.value))),on((e=>{var t;const r=a.value,i=e.payload.bcName,n=null!=(t=Ha(i,!1,r))?t:"",l={widgetName:e.payload.widgetName};return o.newBcData(r.screen.screenName,n,l,{_action:e.payload.operationType}).pipe(on((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 Zi(tn(P({bcName:i,dataItem:s,bcUrl:n})),tn(T({bcName:i,bcUrl:`${n}/${d}`,rowMeta:l,cursor:d})),tn(H({bcName:i,bcUrl:null!=(t=Ha(i,!0,r))?t:"",cursor:d,dataItem:{id:d}})),c?tn(_({bcName:i,postInvoke:c,cursor:d,widgetName:e.payload.widgetName})):en)})),Xi((e=>(console.error(e),Zi(tn(R({bcName:i})),Ga(e,l))))))})));import{catchError as ln,concat as sn,filter as cn,mergeMap as dn,of as pn,race as un}from"rxjs";import{filter as mn,mergeMap as vn,of as fn,take as bn}from"rxjs";import{isAnyOf as hn}from"@reduxjs/toolkit";var yn=[C,y];function gn(e,a,o,t,r=(e=>!0)){return e.pipe(mn(hn(...a)),mn(r),vn((()=>(null==o||o(),fn(t)))),bn(1))}var Nn=(e,a,{api:o})=>e.pipe(cn(x.match),dn((t=>{var r,i;const n=a.value,s=t.payload.bcName,c=n.screen.bo.bc[s],{cursor:d,page:p}=c,u=(null==(r=n.view.widgets.find((e=>e.bcName===s)))?void 0:r.limit)||c.limit,m=null==(i=n.router.bcPath)?void 0:i.includes(`${s}/${d}`),v=Ha(s,m,n),f=n.screen.sorters[s],b=l(l({_page:p,_limit:u},co(n.screen.filters[s]||[])),po(f)),h=o.createCanceler(),y=gn(e,yn,h.cancel,k({bcName:s,bcUrl:v})),g=o.fetchBcData(n.screen.screenName,v,b,h.cancelToken).pipe(dn((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 pn(I({bcName:s,data:t,bcUrl:v,hasNext:e.hasNext}))})),ln((e=>(console.error(e),sn(pn(k({bcName:s,bcUrl:v})),Ga(e))))));return un(y,g)})));import{catchError as wn,concat as Cn,EMPTY as En,filter as Fn,mergeMap as Dn,of as Mn}from"rxjs";var In=(e,a,{api:o})=>e.pipe(Fn(U.match),Fn((e=>bo(Ma.save,e.payload,a.value))),Dn((e=>{var t,r,i,n;const c=a.value,d=e.payload.bcName,p=null!=(t=Ha(d,!0,c))?t:"",u=e.payload.widgetName,m=c.screen.bo.bc[d].cursor,v=c.data[d].find((e=>e.id===m)),f=l({},null==(r=c.view.pendingDataChanges[d])?void 0:r[m]),b=p&&(null==(i=c.view.rowMeta[d])?void 0:i[p]),h=null==(n=c.view.widgets.find((e=>e.name===u)))?void 0:n.options;if(b){const e=b.fields;for(const a in f)e.find((e=>e.key===a&&e.disabled))&&delete f[a]}const y=Object.entries(ho(d,c.view.widgets,c.screen.bo.bc)).map((e=>{const[a,o]=e;return F({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(Dn((a=>{var o;const t=null==(o=a.postActions)?void 0:o[0],r=a.record;return Cn(Mn(ne({bcName:d,cursor:m,dataItem:r})),Mn(j({widgetName:u,bcName:d})),Mn(...y),t?Mn(_({bcName:d,widgetName:u,postInvoke:t,cursor:r.id})):En,e.payload.onSuccessAction?Mn(e.payload.onSuccessAction):En)})),wn((a=>{var o,t,r,i,n,l,s,c;console.error(a);let u=En;e.payload.onSuccessAction&&!(null==h?void 0:h.disableNotification)&&(u=Mn(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),Cn(Mn(le({bcName:d,bcUrl:p,viewError:m,entityError:v})),u,Ga(a,g))})))})));import{EMPTY as kn,filter as xn,mergeMap as jn}from"rxjs";var Tn=(e,a)=>e.pipe(xn(C.match),jn((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])=>F({widgetName:a.name,bcName:e})))}catch(e){return console.error(`selectView Epic:: ${e}`),kn}})));import{catchError as An,concat as On,EMPTY as Pn,filter as Rn,mergeMap as Sn,of as Vn,race as Un}from"rxjs";import{WidgetTypes as $n}from"@cxbox-ui/schema";import{isAnyOf as Bn}from"@reduxjs/toolkit";var _n=(e,a,{api:o})=>e.pipe(Rn(Bn(F,D,X,ce,Se)),Sn((t=>Un(...(()=>{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[Pn];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[Pn];const M=null==f?void 0:f.find((e=>e.bcName===h.bcName&&e.type===$n.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===$n.AssocListPopup&&(null==(a=e.options)?void 0:a.hierarchyFull)})),T=null==(c=m.router.bcPath)?void 0:c.includes(`${y}/${N}`),A=Ha(y,T,m),O=l(l({_page:w,_limit:C},co(x?[]:m.screen.filters[y]||[])),po(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),D.match(t)&&(O._page=t.payload.from||1,O._limit=(t.payload.to||w-O._page)*C),(F.match(t)&&t.payload.ignorePageLimit||(null==(u=null==M?void 0:M.options)?void 0:u.hierarchyFull))&&(O._limit=0);const P=o.createCanceler(),R=gn(e,yn,P.cancel,k({bcName:y,bcUrl:A})),S=gn(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(Sn((e=>{var a,o;const r=((e,a,o)=>{var r;const{bcName:i}=t.payload,n=F.match(t)?t.payload.keepDelta:void 0,l=null==(r=e[0])?void 0:r.id;return Vn(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 yo(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 Pn;const c=(null==(o=e.data)?void 0:o.length)?((e,a,o,r)=>{const{bcName:i}=t.payload,{ignorePageLimit:n,keepDelta:l}=F.match(t)?t.payload:{ignorePageLimit:void 0,keepDelta:void 0};return On(...Object.entries(ho(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 Vn(F({bcName:a,widgetName:null==s?void 0:s.name,ignorePageLimit:n||X.match(t),keepDelta:o||l}))})))})(f,m.screen.bo.bc,!!M,n):Pn,d=Vn(j({widgetName:v,bcName:y}));return On(r,Vn(I({bcName:y,data:e.data,bcUrl:A,hasNext:e.hasNext})),d,c)})),An((e=>(console.error(e),On(Vn(k({bcName:t.payload.bcName,bcUrl:A})),Ga(e))))));return[R,S,V]})()))));import{catchError as qn,concat as Kn,EMPTY as Ln,filter as Wn,mergeMap as Yn,of as Gn}from"rxjs";import{OperationTypeCrud as Jn}from"@cxbox-ui/schema";var Hn=(e,a,{api:o})=>e.pipe(Wn(U.match),Wn((e=>bo(Jn.delete,e.payload,a.value))),Yn((e=>{const t=e.payload.widgetName,r=a.value,i=e.payload.bcName,n=r.screen.bo.bc[i].cursor,l=Ha(i,!0,r),s={widgetName:e.payload.widgetName},c="target"===r.view.pendingValidationFailsFormat;return o.deleteBcData(r.screen.screenName,l,s).pipe(Yn((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return Kn(c?Gn(me({bcNames:[i]})):Ln,Gn(F({bcName:i,widgetName:t})),o?Gn(_({bcName:i,postInvoke:o,cursor:n,widgetName:t})):Ln)})),qn((e=>(console.error(e),Kn(Gn(S({bcName:i})),Ga(e,s))))))})));import{concat as zn,filter as Qn,mergeMap as Xn,of as Zn}from"rxjs";var el=(e,a)=>e.pipe(Qn(ve.match),Xn((e=>{const{bcName:o,cursor:t}=e.payload,r=Object.entries(ho(o,a.value.view.widgets,a.value.screen.bo.bc)).map((a=>{const[o,t]=a;return F({bcName:o,widgetName:t[0],ignorePageLimit:e.payload.ignoreChildrenPageLimit,keepDelta:e.payload.keepDelta})}));return zn(Zn(G({cursorsMap:{[o]:t},keepDelta:e.payload.keepDelta})),Zn(j({widgetName:"",bcName:o})),r)})));import{concat as al,filter as ol,mergeMap as tl,of as rl}from"rxjs";var il=(e,a)=>e.pipe(ol(be.match),tl((e=>{var o,t,r,i,n;const c=a.value,d=e.payload.dataItem._associate,p=e.payload.bcName,u=[rl(H({bcName:p,bcUrl:Ha(p,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],m=c.view.widgets.find((a=>a.name===e.payload.widgetName)),v=e.payload.bcName===m.bcName,f={bcName:m.bcName,radio:null==(o=m.options)?void 0:o.hierarchyRadio,fields:m.fields},b=null==(t=m.options)?void 0:t.hierarchy,h=v?f:null==b?void 0:b.find((a=>a.bcName===e.payload.bcName)),y=null==(r=m.options)?void 0:r.hierarchyGroupSelection,g=null==(i=m.options)?void 0:i.hierarchyTraverse,N=null==b?void 0:b.slice(b.findIndex((a=>a.bcName===e.payload.bcName))+1).map((e=>e.bcName));y&&h.radio&&!d&&u.push(rl(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(rl(Ce({bcNames:[w.bcName]}))),u.push(rl(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(rl(be({bcName:w.bcName,widgetName:e.payload.widgetName,dataItem:s(l({},C),{_associate:!1}),assocValueKey:e.payload.assocValueKey})))}return al(...u)})));import{catchError as nl,concat as ll,EMPTY as sl,filter as cl,mergeMap as dl,of as pl}from"rxjs";import{OperationTypeCrud as ul}from"@cxbox-ui/schema";import{isAnyOf as ml}from"@reduxjs/toolkit";var vl=ml(U),fl=(e,a,{api:o})=>e.pipe(cl(vl),cl((e=>bo(ul.cancelCreate,e.payload,a.value))),dl((e=>{var t,r;const i=a.value,n=i.screen.screenName,c=e.payload.bcName,d=Ha(c,!0,i),p=i.screen.bo.bc[c],u=null==p?void 0:p.cursor,m={widgetName:e.payload.widgetName},v=null==(t=i.data[c])?void 0:t.find((e=>e.id===p.cursor)),f=null==(r=i.view.pendingDataChanges[c])?void 0:r[p.cursor],b=v&&s(l({},f),{vstamp:v.vstamp}),h={[e.payload.bcName]:null};return o.customAction(n,d,b,m,{_action:e.payload.operationType}).pipe(dl((e=>{var a;const o=null==(a=e.postActions)?void 0:a[0];return ll(pl(B({bcName:c,cursor:u})),pl(G({cursorsMap:h})),o?pl(_({bcName:c,postInvoke:o,cursor:u,widgetName:m.widgetName})):sl)})),nl((e=>(console.error(e),ll(pl(S({bcName:c})),Ga(e,m))))))})));import{concat as bl,filter as hl,mergeMap as yl,of as gl}from"rxjs";var Nl=e=>e.pipe(hl(fe.match),yl((e=>{const{bcName:a,cursor:o,depth:t}=e.payload;return bl(gl(J({bcName:a,depth:t,cursor:o})),gl(F({bcName:a,depth:t+1,widgetName:"",ignorePageLimit:!0})))})));import{concat as wl,filter as Cl,mergeMap as El,of as Fl}from"rxjs";var Dl=(e,a)=>e.pipe(Cl(ie.match),El((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=go(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)&&(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===(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(No(n,a),a.every((e=>E.includes(e)||!C.includes(e))))return wl(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:Ha(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem.filter((e=>!E.includes(e.id)))}}));if(null==(c=null==g?void 0:g.options)?void 0:c.hierarchy){const a=null!=(m=null==(u=null==(p=null==(d=null==g?void 0:g.options)?void 0:d.hierarchy)?void 0:p.find((a=>{var o;return null==(o=v.view.pendingDataChanges[a.bcName])?void 0:o[e.payload.removedItem.id]})))?void 0:u.bcName)?m:f;return wl(Fl(H({bcName:a,bcUrl:Ha(a,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),Fl(H({bcName:f,bcUrl:Ha(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))}return wl(Fl(H({bcName:h,bcUrl:Ha(h,!0,v),cursor:e.payload.removedItem.id,dataItem:s(l({},e.payload.removedItem),{_associate:!1})})),Fl(H({bcName:f,bcUrl:Ha(f,!0,v),cursor:b,dataItem:{[y]:e.payload.dataItem}})))})));import{catchError as Ml,concat as Il,filter as kl,map as xl,mergeMap as jl,of as Tl,race as Al}from"rxjs";var Ol=(e,a,{api:o})=>e.pipe(kl(j.match),jl((t=>{var r,i;const n=a.value,l=n.screen.screenName,s=t.payload.bcName,c=null!=(r=n.screen.bo.bc[s].cursor)?r:"",d=null!=(i=Ha(s,!0,n))?i:"",p=o.createCanceler(),u=gn(e,yn,p.cancel,A({bcName:s})),m=gn(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(xl((e=>T({bcName:s,rowMeta:e,bcUrl:d,cursor:c}))),Ml((e=>(console.error(e),Il(Tl(A({bcName:s})),Ga(e))))));return Al(u,m,v)})));import{concat as Pl,filter as Rl,mergeMap as Sl,of as Vl}from"rxjs";var Ul=(e,a)=>e.pipe(Rl(ye.match),Sl((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(Vl(ye({bcName:u,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},o),{_associate:!1}),assocValueKey:p})))}else d.push(Vl(we({bcName:u,parentId:e.payload.dataItem.id,depth:f+1,assocValueKey:p,selected:!1})));if(d.push(Vl(H({bcName:e.payload.bcName,bcUrl:Ha(e.payload.bcName,!0,c),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))),b&&g&&v&&d.push(Vl(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(Vl(ye({bcName:u,depth:b,widgetName:e.payload.widgetName,dataItem:s(l({},h),{_associate:!1}),assocValueKey:p})))}return Pl(...d)})));import{catchError as $l,concat as Bl,EMPTY as _l,filter as ql,mergeMap as Kl,of as Ll,switchMap as Wl}from"rxjs";var Yl=(e,a,{api:o})=>e.pipe(ql(te.match),ql((e=>{var o;return null==(o=a.value.view.popupData)?void 0:o.active})),Wl((e=>{var t,r;const i=a.value,n=null==(t=i.view.popupData)?void 0:t.calleeBCName,l=null==(r=i.view.popupData)?void 0:r.calleeWidgetName,s=e.payload.bcNames,c=Ha(n,!0,i),d=s.length?{_bcName:s[s.length-1]}:{};return o.associate(i.screen.screenName,c,Object.values(i.view.pendingDataChanges[s[0]]||{}).filter((e=>e._associate)),d).pipe(Kl((e=>{const a=e.postActions[0],o=i.view.widgets.find((e=>e.bcName===n));return Bl(a?Ll(_({bcName:n,postInvoke:a,widgetName:null==o?void 0:o.name})):_l,Ll(me({bcNames:s})),Ll(ce({bcName:n,widgetName:l})))})),$l((e=>(console.error(e),_l))))})));import{concat as Gl,filter as Jl,mergeMap as Hl,of as zl}from"rxjs";var Ql=(e,a)=>e.pipe(Jl(he.match),Hl((e=>{var o,t,r,i,n,c;const d=a.value,p=e.payload.bcName,u=[zl(H({bcName:p,bcUrl:Ha(p,!0,d),cursor:e.payload.dataItem.id,dataItem:e.payload.dataItem}))],m=e.payload.dataItem._associate,v=e.payload.depth||1,f=v-1,b=null==(o=d.view.widgets.find((a=>a.name===e.payload.widgetName)).options)?void 0:o.hierarchyTraverse,h=v>1?null==(t=d.depthData[v])?void 0:t[p]:d.data[p],y=f?f>1?null==(i=null==(r=d.screen.bo.bc[p].depthBc)?void 0:r[f])?void 0:i.cursor:d.screen.bo.bc[p].cursor:null,g=y?f>1?null==(c=null==(n=d.depthData[f])?void 0:n[p])?void 0:c.find((e=>e.id===y)):d.data[p].find((e=>e.id===y)):null;return f&&b&&m&&u.push(zl(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(zl(he({bcName:p,depth:f,widgetName:e.payload.widgetName,dataItem:s(l({},g),{_associate:!1}),assocValueKey:e.payload.assocValueKey}))),Gl(...u)})));import{catchError as Xl,filter as Zl,mergeMap as es,of as as,race as os}from"rxjs";var ts=(e,a,{api:o})=>e.pipe(Zl(M.match),es((t=>{const{bcName:r,searchSpec:i,searchString:n}=t.payload,l=Ha(r,!1,a.value),s=o.createCanceler(),c=gn(e,yn,s.cancel,k({bcName:r,bcUrl:l})),d=o.fetchBcData(a.value.screen.screenName,l,{[i+".contains"]:n},s.cancelToken).pipe(es((e=>as(I({bcName:r,data:e.data,bcUrl:l})))),Xl((e=>(console.error(e),as(k({bcName:t.payload.bcName,bcUrl:l}))))));return os(c,d)})));import{filter as rs,of as is,switchMap as ns}from"rxjs";var ls=(e,a)=>e.pipe(rs(te.match),rs((()=>{var e;return!(null==(e=a.value.view.popupData)?void 0:e.active)})),ns((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 is(H({bcName:i,bcUrl:Ha(i,!0,r),cursor:l,dataItem:{[n]:p}}))})));import{filter as ss,mergeMap as cs,of as ds}from"rxjs";var ps=(e,a,{})=>e.pipe(ss(ge.match),cs((e=>{const o=a.value.data[e.payload.bcName];return ds(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 us,mergeMap as ms,of as vs}from"rxjs";var fs=(e,a)=>e.pipe(us(Ne.match),ms((e=>{var o;const t=(null==(o=a.value.depthData[e.payload.depth])?void 0:o[e.payload.bcName])||[];return vs(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 bs,filter as hs,mergeMap as ys,of as gs}from"rxjs";var Ns=(e,a)=>e.pipe(hs(we.match),ys((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=[gs(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(gs(we(s(l({},e.payload),{parentId:a.id,depth:o+1}))))})),bs(...i)})));import ws from"axios";import{from as Cs,map as Es,takeWhile as Fs}from"rxjs";function Ds(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 Ms=class{constructor(e){d(this,"instance",ws.create({responseType:"json",headers:{Pragma:"no-cache","Cache-Control":"no-cache, no-store, must-revalidate"}})),this.instance=e}get(e,a,o){return Cs(this.instance.get(e,a)).pipe(Fs(Ds),Es((e=>e.data)))}put(e,a,o){return Cs(this.instance.put(e,a)).pipe(Fs(Ds),Es((e=>e.data)))}post(e,a,o,t){return Cs(this.instance.post(e,a)).pipe(Fs(Ds),Es((e=>e.data)))}delete(e,a,o,t){return Cs(this.instance.delete(e,a)).pipe(Fs(Ds),Es((e=>e.data)))}};import Is from"axios";import{EMPTY as ks,expand as xs,map as js,reduce as Ts}from"rxjs";var As=class{constructor(e){d(this,"api$"),this.api$=new Ms(e)}routerRequest(e,a){return this.api$.get(qa(e,a))}fetchBcData(e,a,o={},t){const r=0===o._limit,i=_a(io`data/${e}/`+a,s(l({},o),{_page:r?void 0:"_page"in o?o._page:1,_limit:r?void 0:"_limit"in o?o._limit:30}));return this.api$.get(i,{cancelToken:t})}fetchBcDataAll(e,a,o={}){let t=1;return this.fetchBcData(e,a,s(l({},o),{_page:t})).pipe(xs((r=>r.hasNext?this.fetchBcData(e,a,s(l({},o),{_page:++t})):ks)),Ts(((e,a)=>[...e,...a.data]),[]))}fetchRowMeta(e,a,o,t){const r=_a(io`row-meta/${e}/`+a,o);return this.api$.get(r,{cancelToken:t}).pipe(js((e=>e.data.row)))}newBcData(e,a,o,t){const r=_a(io`row-meta-new/${e}/`+a,t);return this.api$.get(r,void 0,o).pipe(js((e=>e.data)))}saveBcData(e,a,o,t,r){const i=_a(io`data/${e}/`+a,r);return this.api$.put(i,{data:o},t).pipe(js((e=>e.data)))}deleteBcData(e,a="",o,t){const r=_a(io`data/${e}/`+a,t);return this.api$.delete(r,o).pipe(js((e=>e.data)))}customAction(e,a,o,t,r){const i=_a(io`custom-action/${e}/`+a,r);return this.api$.post(i,{data:o||{}},void 0,t).pipe(js((e=>e.data)))}associate(e,a,o,t){const r=Array.isArray(o)?o.map((e=>({id:e.id,vstamp:e.vstamp,associated:e._associate}))):o,i=_a(io`associate/${e}/`+a,t);return this.api$.post(i,r).pipe(js((e=>e.data)))}getRmByForceActive(e,a,o,t){const r=_a(io`row-meta/${e}/`+(null!=a?a:""),t);return this.api$.post(r,{data:o}).pipe(js((e=>e.data.row)))}get fileUploadEndpoint(){const e=this.api$.instance;return e.defaults.baseURL?e.defaults.baseURL.endsWith("/")?`${e.defaults.baseURL}file`:`${e.defaults.baseURL}/file`:"/file"}refreshMeta(){return this.api$.get(io`bc-registry/refresh-meta`)}loginByRoleRequest(e){return this.api$.get(io`login?role=${e}`)}createCanceler(){let e;const a=new Is.CancelToken((a=>{e=a}));return{cancel:e,cancelToken:a}}};function Os(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 Ps={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=>Os(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,F=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(F||{}).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)&&Os(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 Os(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;Os(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=Ha(e,!0,s),u=null==(i=s.data[e])?void 0:i.find((e=>e.id===p)),m=r&&(null==(n=s.view.rowMeta[e])?void 0:n[r]),v=null==(l=s.view.pendingDataChanges[e])?void 0:l[p],f=s.view.widgets.find((e=>e.name===d));if(function(e,a){let o=!1;return a?(o=fo(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=>{Fa(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:Ha(e,!0,s),cursor:p,dataItem:i}):t)}if(function(e,a){var o;if("target"!==e.view.pendingValidationFailsFormat&&e.view.pendingValidationFails&&Object.keys(e.view.pendingValidationFails).length)return!0;let t=!1;const r=null==(o=e.view.pendingValidationFails)?void 0:o[a],i=r&&Object.keys(r);if(!i)return!1;let n=0;for(;n<i.length;n++)if(Object.keys(r[i[n]]).length){t=!0;break}return t}(s,e))return oa({key:"requiredFieldsMissing",type:"buttonWarningNotification",message:"Required fields are missing",duration:0,options:{buttonWarningNotificationOptions:{buttonText:"Cancel changes",actionsForClick:[me(null),Be(null)]}}})}}return o(t)},preInvoke:({getState:e})=>a=>o=>{var t,r,i;if(U.match(o)){const n=e(),{operationType:l,widgetName:s,confirm:c}=o.payload,d=null==(t=n.view.widgets.find((e=>e.name===s)))?void 0:t.bcName,p=Ha(d,!0,n),u=p&&(null==(r=n.view.rowMeta[d])?void 0:r[p]),m=u&&fo(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{As as Api,u as actions,Oo as epics,da as interfaces,Ps as middlewares,p as reducers,$a as utils};
2
- //# sourceMappingURL=cxbox-ui-core.modern.production.min.js.map
@@ -1,9 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Sends `cancel-create` custom operation with record's pending changes and vstamp;
4
- * Dispatches `sendOperationSuccess` and `bcChangeCursors` to drop cursors, also
5
- * `processPostInvokeEpic` if received `postActions` in response.
6
- *
7
- * @category Epics
8
- */
9
- export declare const bcCancelCreateDataEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const bcDeleteDataEpic: CXBoxEpic;
@@ -1,15 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- *
4
- *
5
- * Loads BC's dataEpics.ts.
6
- * In case successful download:
7
- * - dispatches action to store
8
- * - initializes rowMeta load
9
- * - initializes child BCs dataEpics.ts load
10
- *
11
- * action.payload.bcName BC's name for dataEpics.ts load
12
- *
13
- * @category Epics
14
- */
15
- export declare const bcFetchDataEpic: CXBoxEpic;
@@ -1,17 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Access `row-meta` API endpoint for business component; response will contain information
4
- * about operations available for row and additional information about row fields.
5
- *
6
- * On success, {@link ActionPayloadTypes.bcFetchRowMetaSuccess | bcFetchRowMetaSuccess} action dispatched
7
- * to store received row meta.
8
- * On failure, console.error called and {@link ActionPayloadTypes.bcFetchRowMetaFail | bcFetchRowMetaFail} action
9
- * dispatched to drop fetching state.
10
- *
11
- * If any action from `cancelRequestActionTypes` array dispatched while this epic is in progress,
12
- * this epic will be cancelled and {@link ActionPayloadTypes.bcFetchRowMetaFail | bcFetchRowMetaFail} action
13
- * will be dispatched.
14
- *
15
- * @category Epics
16
- */
17
- export declare const bcFetchRowMetaRequestEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const bcLoadMoreEpic: CXBoxEpic;
@@ -1,14 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Access `row-meta-new` API endpoint for business component endpoint; response will contain
4
- * row meta where `currentValue` of `id` field will contain an id for newly created record.
5
- *
6
- * `bcNewDataSuccess` action dispatched with new dataEpics.ts item draft (vstamp = -1).
7
- * `bcFetchRowMetaSuccess` action dispatched to set BC cursor to this new id.
8
- * `changeDataItem` action dispatched to add this new item to pending changes.
9
- * `processPostInvokeEpic` dispatched to handle possible post invokes.
10
- *
11
- * In case of an error message is logged as warning and `bcNewDataFail` action dispatched.
12
- *
13
- */
14
- export declare const bcNewDataEpic: CXBoxEpic;
@@ -1,24 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Post record's pending changes to `save dataEpics.ts` API endpoint.
4
- * Pending changes for fields disabled through row meta are not send; please notice that fields are
5
- * disabled by default.
6
- *
7
- * On success following actions are dispatched:
8
- * - {@link bcSaveDataSuccess}
9
- * - {@link bcFetchRowMeta}
10
- * - one {@link bcFetchDataRequest} for each child of saved business component
11
- * - optional {@link ActionPayloadTypes.processPostInvokeEpic | processPostInvokeEpic } if present in response
12
- * - optional `onSuccessAction` callback if provided in payload.
13
- *
14
- * On failure, console\.error called and {@link ActionPayloadTypes.bcSaveDataFail | bcSaveDataFail} action
15
- * dispatched.
16
- *
17
- * If there was a `onSuccessAction` callback provided in action payload (and widget option
18
- * {@link WidgetOptions.disableNotification} was not set)
19
- * then a notification will be shown on failure with suggestion to cancel pending changes and a button that fires
20
- * {@link bcCancelPendingChanges}
21
- *
22
- * @category Epics
23
- */
24
- export declare const bcSaveDataEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const bcSelectDepthRecordEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const bcSelectRecordEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const changeAssociationEpic: CXBoxEpic;
@@ -1,5 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Change full hierarchy record association state. Also select/deselect dependent records according to widget options.
4
- */
5
- export declare const changeAssociationFullEpic: CXBoxEpic;
@@ -1,5 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * @category Epics
4
- */
5
- export declare const changeAssociationSameBcEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const changeChildrenAssociationsEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const changeChildrenAssociationsSameBcEpic: CXBoxEpic;
@@ -1,5 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Change full hierarchy descendants association state
4
- */
5
- export declare const changeDescendantsAssociationsFullEpic: CXBoxEpic;
@@ -1,20 +0,0 @@
1
- export * from './bcNewDataEpic';
2
- export * from './bcLoadMoreEpic';
3
- export * from './bcSaveDataEpic';
4
- export * from './selectViewEpic';
5
- export * from './bcFetchDataEpic';
6
- export * from './bcDeleteDataEpic';
7
- export * from './bcSelectRecordEpic';
8
- export * from './changeAssociationEpic';
9
- export * from './bcCancelCreateDataEpic';
10
- export * from './bcSelectDepthRecordEpic';
11
- export * from './removeMultivalueTagEpic';
12
- export * from './bcFetchRowMetaRequestEpic';
13
- export * from './changeAssociationFullEpic';
14
- export * from './saveAssociationsActiveEpic';
15
- export * from './changeAssociationSameBcEpic';
16
- export * from './inlinePickListFetchDataEpic';
17
- export * from './saveAssociationsPassiveEpic';
18
- export * from './changeChildrenAssociationsEpic';
19
- export * from './changeChildrenAssociationsSameBcEpic';
20
- export * from './changeDescendantsAssociationsFullEpic';
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const inlinePickListFetchDataEpic: CXBoxEpic;
@@ -1,17 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * For full hierarchies it fires `changeDataItem` action to remove value from source record
4
- *
5
- * With `hierarchyGroupDeselection` widget option, parent removal also remove children; removing
6
- * last child will also remove the parent.
7
- *
8
- * With `hierarchyTraverse` widget option, descendants are used instead of children.
9
- *
10
- * When parent should be removed with both option, `removeMultivalueTag` with updated `removedItem` will
11
- * fire instead of `changeDataItem`.
12
- *
13
- * For non-full hierarchies two `changeDataItem` actions will fire, first to drop `_associate` flag
14
- * of remove item and second to update value of source record.
15
- * Widget options are not tested for non-full hierarchies.
16
- */
17
- export declare const removeMultivalueTagEpic: CXBoxEpic;
@@ -1,7 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Works with assoc-lists, which does call back-end's assoc methods by click on confirm button in modal window
4
- *
5
- * @category Epics
6
- */
7
- export declare const saveAssociationsActiveEpic: CXBoxEpic;
@@ -1,7 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Works with assoc-lists, which doesn't call back-end's assoc methods
4
- *
5
- * @category Epics
6
- */
7
- export declare const saveAssociationsPassiveEpic: CXBoxEpic;
@@ -1,11 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Schedules dataEpics.ts fetch for every widget on the view
4
- *
5
- * After selecting a view, this epic schedules a dataEpics.ts fetch for every widget present on the view.
6
- * If business componenet for the widget has a parent, then root ancestor BC is scheduled for dataEpics.ts fetch instead
7
- * and dataEpics.ts for its descendants will be scheduled after ancestor dataEpics.ts fetch resolved.
8
- *
9
- * @see {@link src/epics/dataEpics.ts/bcFetchDataEpic.ts} for details how descendants resolved
10
- */
11
- export declare const selectViewEpic: CXBoxEpic;
@@ -1,6 +0,0 @@
1
- export * from './view';
2
- export * from './router';
3
- export * from './screen';
4
- export * from './session';
5
- export * from './router';
6
- export * from './data';
@@ -1,10 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Epic of changing the current route
4
- *
5
- * Checks route parameters (screen, view, BC cursors) relative to those
6
- * that are currently stored in the store, and in case of a mismatch
7
- * initiates reloading the screen, view or BC with new cursors.
8
- *
9
- */
10
- export declare const changeLocationEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const drillDownEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const handleRouterEpic: CXBoxEpic;
@@ -1,10 +0,0 @@
1
- export * from './drilldownEpic';
2
- export * from './loginDoneEpic';
3
- export * from './selectViewEpic';
4
- export * from './handleRouterEpic';
5
- export * from './selectScreenEpic';
6
- export * from './userDrillDownEpic';
7
- export * from './changeLocationEpic';
8
- export * from './selectViewFailEpic';
9
- export * from './selectScreenFailEpic';
10
- export * from './userDrilldownChangeCursorsEpic';
@@ -1,9 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Fires `selectScreen` or `selectScreenFail` to set requested in url screen as active
4
- * after succesful login.
5
- *
6
- * For server-side router fires `handleRouter` instead.
7
- *
8
- */
9
- export declare const loginDoneEpic: CXBoxEpic;
@@ -1,7 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- *
4
- * TODO: Rename to `selectScreen` in 2.0.0
5
- *
6
- */
7
- export declare const changeScreen: CXBoxEpic;
@@ -1,7 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Throws a error popup when attempting to navigate to a screen which is missing for current session
4
- *
5
- * @param action$ selectViewFail
6
- */
7
- export declare const selectScreenFailEpic: CXBoxEpic;
@@ -1,7 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- *
4
- * TODO: Rename to `selectView` in 2.0.0
5
- *
6
- */
7
- export declare const changeViewEpic: CXBoxEpic;
@@ -1,6 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Throws a error popup when attempting to navigate to the view which is missing for current session
4
- *
5
- */
6
- export declare const selectViewFailEpic: CXBoxEpic;
@@ -1,6 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- *
4
- * @category Epics
5
- */
6
- export declare const userDrillDownEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const userDrillDownChangeCursorsEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const apiErrorEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const downloadFileByUrlEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const downloadFileEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const httpError401Epic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const httpError409Epic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const httpError418Epic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const httpError500Epic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const httpErrorDefaultEpic: CXBoxEpic;
@@ -1,10 +0,0 @@
1
- export * from './apiErrorEpic';
2
- export * from './downloadFileEpic';
3
- export * from './httpError401Epic';
4
- export * from './httpError409Epic';
5
- export * from './httpError418Epic';
6
- export * from './httpError500Epic';
7
- export * from './httpErrorDefaultEpic';
8
- export * from './downloadFileByUrlEpic';
9
- export * from './processPostInvokeEpic';
10
- export * from './processPostInvokeConfirmEpic';
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const processPostInvokeConfirmEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const processPostInvokeEpic: CXBoxEpic;
@@ -1,5 +0,0 @@
1
- export * from './switchRoleEpic';
2
- export * from './refreshMetaEpic';
3
- export * from './loginDoneEpic';
4
- export * from './loginByAnotherRoleEpic';
5
- export * from './refreshMetaAndReloadPageEpic';
@@ -1,5 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Performed on role switching
4
- */
5
- export declare const loginByAnotherRoleEpic: CXBoxEpic;
@@ -1,6 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Fires on successful login; there is no default implementation related to this epic,
4
- * but it can be used to customize successful login behaivior.
5
- */
6
- export declare const loginDoneSessionEpic: CXBoxEpic;
@@ -1,2 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- export declare const refreshMetaAndReloadPageEpic: CXBoxEpic;
@@ -1,5 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Performed on refresh meta dataEpics.ts process.
4
- */
5
- export declare const refreshMetaEpic: CXBoxEpic;
@@ -1,5 +0,0 @@
1
- import { CXBoxEpic } from '../../interfaces';
2
- /**
3
- * Activates process of role switching
4
- */
5
- export declare const switchRoleEpic: CXBoxEpic;