@ibiz-template/vue3-util 0.6.14 → 0.6.16

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 (53) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +1 -1
  3. package/es/control/panel/panel/panel.mjs +1 -1
  4. package/es/control/panel/view-layout-panel/view-layout-panel.mjs +1 -1
  5. package/es/index.mjs +3 -0
  6. package/es/panel-component/index.d.ts +2 -0
  7. package/es/panel-component/index.d.ts.map +1 -1
  8. package/es/panel-component/index.mjs +3 -0
  9. package/es/panel-component/panel-container-tabs/index.d.ts +23 -0
  10. package/es/panel-component/panel-container-tabs/index.d.ts.map +1 -0
  11. package/es/panel-component/panel-container-tabs/index.mjs +19 -0
  12. package/es/panel-component/panel-container-tabs/panel-container-tabs.css +1 -0
  13. package/es/panel-component/panel-container-tabs/panel-container-tabs.d.ts +26 -0
  14. package/es/panel-component/panel-container-tabs/panel-container-tabs.d.ts.map +1 -0
  15. package/es/panel-component/panel-container-tabs/panel-container-tabs.mjs +35 -0
  16. package/es/panel-component/panel-container-tabs/panel-container-tabs.provider.d.ts +16 -0
  17. package/es/panel-component/panel-container-tabs/panel-container-tabs.provider.d.ts.map +1 -0
  18. package/es/panel-component/panel-container-tabs/panel-container-tabs.provider.mjs +15 -0
  19. package/es/panel-component/panel-field/index.d.ts +8 -0
  20. package/es/panel-component/panel-field/index.d.ts.map +1 -1
  21. package/es/panel-component/panel-field/panel-field.d.ts +8 -0
  22. package/es/panel-component/panel-field/panel-field.d.ts.map +1 -1
  23. package/es/panel-component/panel-field/panel-field.mjs +5 -1
  24. package/es/panel-component/teleport-placeholder/index.d.ts +28 -0
  25. package/es/panel-component/teleport-placeholder/index.d.ts.map +1 -0
  26. package/es/panel-component/teleport-placeholder/index.mjs +19 -0
  27. package/es/panel-component/teleport-placeholder/teleport-placeholder.css +1 -0
  28. package/es/panel-component/teleport-placeholder/teleport-placeholder.d.ts +29 -0
  29. package/es/panel-component/teleport-placeholder/teleport-placeholder.d.ts.map +1 -0
  30. package/es/panel-component/teleport-placeholder/teleport-placeholder.mjs +63 -0
  31. package/es/panel-component/teleport-placeholder/teleport-placeholder.provider.d.ts +17 -0
  32. package/es/panel-component/teleport-placeholder/teleport-placeholder.provider.d.ts.map +1 -0
  33. package/es/panel-component/teleport-placeholder/teleport-placeholder.provider.mjs +16 -0
  34. package/es/view/common/index.d.ts +5 -0
  35. package/es/view/common/index.d.ts.map +1 -1
  36. package/es/view/common/view.d.ts +6 -3
  37. package/es/view/common/view.d.ts.map +1 -1
  38. package/es/view/common/view.mjs +62 -43
  39. package/lib/control/panel/panel/panel.cjs +1 -1
  40. package/lib/control/panel/view-layout-panel/view-layout-panel.cjs +1 -1
  41. package/lib/index.cjs +21 -15
  42. package/lib/panel-component/index.cjs +6 -0
  43. package/lib/panel-component/panel-container-tabs/index.cjs +24 -0
  44. package/lib/panel-component/panel-container-tabs/panel-container-tabs.cjs +37 -0
  45. package/lib/panel-component/panel-container-tabs/panel-container-tabs.css +1 -0
  46. package/lib/panel-component/panel-container-tabs/panel-container-tabs.provider.cjs +17 -0
  47. package/lib/panel-component/panel-field/panel-field.cjs +5 -1
  48. package/lib/panel-component/teleport-placeholder/index.cjs +25 -0
  49. package/lib/panel-component/teleport-placeholder/teleport-placeholder.cjs +65 -0
  50. package/lib/panel-component/teleport-placeholder/teleport-placeholder.css +1 -0
  51. package/lib/panel-component/teleport-placeholder/teleport-placeholder.provider.cjs +18 -0
  52. package/lib/view/common/view.cjs +60 -41
  53. package/package.json +5 -5
@@ -1 +1 @@
1
- .ibiz-view-shell{position:relative;width:100%;height:100%}.ibiz-control-shell{position:relative;width:100%;height:100%}.ibiz-badge{display:inline-block;padding:3px 6px;line-height:1rem;color:#fff;background-color:var(--ibiz-badge-bg-color);border-radius:10px}.ibiz-badge--danger{--ibiz-badge-bg-color:var(--ibiz-color-danger)}.ibiz-badge--success{--ibiz-badge-bg-color:var(--ibiz-color-success)}.ibiz-badge--warning{--ibiz-badge-bg-color:var(--ibiz-color-warning)}.ibiz-badge--info{--ibiz-badge-bg-color:var(--ibiz-color-info)}.ibiz-badge--primary{--ibiz-badge-bg-color:var(--ibiz-color-primary)}.ibiz-code-list{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap}.ibiz-code-list__item{color:var(--ibiz-code-list-item-color);display:flex;align-items:center;justify-content:flex-start}.ibiz-code-list .ibiz-icon{display:inline-flex;padding-right:var(--ibiz-spacing-tight)}.ibiz-panel-container{width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow-x:hidden;overflow-y:auto}.ibiz-panel-container.is-hidden{display:none}.ibiz-panel-ctrl-pos{width:100%;height:100%}.ibiz-panel-ctrl-pos.is-hidden{display:none}.ibiz-panel-field{--ibiz-form-item-label-color:var(--ibiz-color-text-1);--ibiz-form-item-text-color:var(--ibiz-color-text-2);--ibiz-form-item-hover-color:var(--ibiz-color-text-0);--ibiz-form-item-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-form-item-readonly-color:var(--ibiz-color-disabled-text);--ibiz-form-item-border-color:transparent;--ibiz-form-item-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-placeholder-color:var(--ibiz-color-text-3);--ibiz-form-item-disabled-color:var(--ibiz-color-disabled-text);--ibiz-form-item-disabled-bg-color:var(--ibiz-color-disabled-fill);--ibiz-form-item-disabled-border-color:var(--ibiz-color-disabled-border);--ibiz-form-item-active-bg:var(--ibiz-color-fill-2);--ibiz-form-item-active-border:var(--ibiz-active-bg);--ibiz-form-item-focus-bg:var(--ibiz-color-fill-0);--ibiz-form-item-focus-border:var(--ibiz-color-focus-border);--ibiz-form-item-line-height:var(--ibiz-editor-default-line-height);--ibiz-form-item-font-weight:var(--ibiz-font-weight-regular);width:100%;height:100%}.ibiz-panel-field .ibiz-panel-field-content{line-height:inherit}.ibiz-panel-rawitem{width:100%;height:100%}.ibiz-panel-rawitem .ibiz-panel-rawitem-content{width:100%}.ibiz-multi-data-container{width:100%;height:100%}.ibiz-single-data-container{width:100%;height:100%}.ibiz-nav-pos{width:100%;height:100%}.ibiz-scroll-container-item{width:100%;height:100%;overflow:auto}.ibiz-scroll-container-item.is-hidden{display:none}.ibiz-scroll-container{width:100%;height:100%;display:flex;flex-flow:column nowrap}.ibiz-scroll-container.is-hidden{display:none}.ibiz-scroll-container-content{flex-grow:1;overflow:auto;display:flex}.ibiz-scroll-container-content__center{flex-grow:1;overflow:auto}.ibiz-scroll-container-content__left{overflow:auto}.ibiz-scroll-container-content__right{overflow:auto}.ibiz-scroll-container-header{overflow:auto}.ibiz-scroll-container-footer{overflow:auto}.ibiz-grid-container{--ibiz-grid-container-bg-color:var(--ibiz-bg-color-overlay);--ibiz-grid-container-padding:var(--ibiz-padding);width:100%;height:100%;overflow:auto}.ibiz-grid-container.is-hidden{display:none}.ibiz-panel-container-group{--ibiz-panel-container-group-bg-color:transparent;--ibiz-panel-container-group-header-bg-color:transparent;--ibiz-panel-container-group-header-padding:var(--ibiz-spacing-base-tight);--ibiz-panel-container-group-header-border-color:var(--ibiz-color-border);--ibiz-panel-container-group-header-height:49px;--ibiz-panel-container-group-caption-text-color:var(--ibiz-color-text-0);--ibiz-panel-container-group-caption-font-size:var(--ibiz-font-size-header-5);--ibiz-panel-container-group-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-panel-container-group-content-bg-color:transparent;--ibiz-panel-container-group-content-padding:var(--ibiz-spacing-tight)}.ibiz-panel-container-group{height:100%;background-color:var(--ibiz-panel-container-group-bg-color);border-radius:var(--ibiz-border-radius-base)}.ibiz-panel-container-group__caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-panel-container-group-caption-font-size);font-weight:var(--ibiz-panel-container-group-caption-font-weight);color:var(--ibiz-panel-container-group-caption-text-color)}.ibiz-panel-container-group-collapse>.ibiz-panel-container-group-content{display:block}.ibiz-panel-container-group-collapse.is-collapse>.ibiz-panel-container-group-content{display:none}.ibiz-panel-container-group-header{display:flex;height:var(--ibiz-panel-container-group-header-height);padding:var(--ibiz-panel-container-group-header-padding);margin:var(--ibiz-panel-container-group-header-margin);border-bottom:1px solid var(--ibiz-panel-container-group-header-border-color)}.ibiz-panel-container-group-header__left,.ibiz-panel-container-group-header__right{display:inline-block;width:50%}.ibiz-panel-container-group-header__right{text-align:right;display:flex;align-items:center;justify-content:flex-end}.ibiz-panel-container-group-content{width:100%;height:100%}.ibiz-panel-container-group-content>.ibiz-row{width:100%;height:100%}.ibiz-panel-container-group--show-header>.ibiz-panel-container-group-content{height:calc(100% - var(--ibiz-panel-container-group-header-height));padding:var(--ibiz-panel-container-group-content-padding);background-color:var(--ibiz-panel-container-group-content-bg-color)}.ibiz-panel-container-image{position:relative;width:100%;height:100%;background-repeat:no-repeat;background-position:center center}.ibiz-panel-container-image>.ibiz-row{height:100%;overflow-x:hidden;overflow-y:auto}.ibiz-panel-container-image.is-hidden{display:none}.ibiz-view{--ibiz-view-bg-color:var(--ibiz-color-bg-1);--ibiz-view-border-radius:var(--ibiz-border-radius-medium);width:100%;height:100%}.ibiz-view .ibiz-view{background-color:var(--ibiz-view-bg-color);border-radius:var(--ibiz-view-border-radius)}.ibiz-view .ibiz-view-appportalview{background-color:rgba(0,0,0,0)}.ibiz-view.has-top-message,.ibiz-view.has-bottom-message{display:flex;flex-flow:column nowrap}.ibiz-view.has-top-message>.ibiz-view-message,.ibiz-view.has-bottom-message>.ibiz-view-message{flex-grow:0;flex-shrink:0}.ibiz-view.has-top-message>.ibiz-control-viewlayoutpanel,.ibiz-view.has-bottom-message>.ibiz-control-viewlayoutpanel{flex-grow:1;flex-shrink:1}.ibiz-control-panel{width:100%;height:100%}.ibiz-control-panel-content{width:100%;height:100%}.ibiz-control-viewlayoutpanel{width:100%;height:100%}.ibiz-control-viewlayoutpanel-content{width:100%;height:100%}
1
+ .ibiz-control-shell{position:relative;width:100%;height:100%}.ibiz-view-shell{position:relative;width:100%;height:100%}.ibiz-badge{display:inline-block;padding:3px 6px;line-height:1rem;color:#fff;background-color:var(--ibiz-badge-bg-color);border-radius:10px}.ibiz-badge--danger{--ibiz-badge-bg-color:var(--ibiz-color-danger)}.ibiz-badge--success{--ibiz-badge-bg-color:var(--ibiz-color-success)}.ibiz-badge--warning{--ibiz-badge-bg-color:var(--ibiz-color-warning)}.ibiz-badge--info{--ibiz-badge-bg-color:var(--ibiz-color-info)}.ibiz-badge--primary{--ibiz-badge-bg-color:var(--ibiz-color-primary)}.ibiz-code-list{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap}.ibiz-code-list__item{color:var(--ibiz-code-list-item-color);display:flex;align-items:center;justify-content:flex-start}.ibiz-code-list .ibiz-icon{display:inline-flex;padding-right:var(--ibiz-spacing-tight)}.ibiz-view{--ibiz-view-bg-color:var(--ibiz-color-bg-1);--ibiz-view-border-radius:var(--ibiz-border-radius-medium);width:100%;height:100%}.ibiz-view .ibiz-view{background-color:var(--ibiz-view-bg-color);border-radius:var(--ibiz-view-border-radius)}.ibiz-view .ibiz-view-appportalview{background-color:rgba(0,0,0,0)}.ibiz-view.has-top-message,.ibiz-view.has-bottom-message{display:flex;flex-flow:column nowrap}.ibiz-view.has-top-message>.ibiz-view-message,.ibiz-view.has-bottom-message>.ibiz-view-message{flex-grow:0;flex-shrink:0}.ibiz-view.has-top-message>.ibiz-control-viewlayoutpanel,.ibiz-view.has-bottom-message>.ibiz-control-viewlayoutpanel{flex-grow:1;flex-shrink:1}.ibiz-panel-ctrl-pos{width:100%;height:100%}.ibiz-panel-ctrl-pos.is-hidden{display:none}.ibiz-panel-container{width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow-x:hidden;overflow-y:auto}.ibiz-panel-container.is-hidden{display:none}.ibiz-panel-field{--ibiz-form-item-label-color:var(--ibiz-color-text-1);--ibiz-form-item-text-color:var(--ibiz-color-text-2);--ibiz-form-item-hover-color:var(--ibiz-color-text-0);--ibiz-form-item-hover-bg-color:var(--ibiz-color-fill-1);--ibiz-form-item-readonly-color:var(--ibiz-color-disabled-text);--ibiz-form-item-border-color:transparent;--ibiz-form-item-font-size:var(--ibiz-font-size-regular);--ibiz-form-item-placeholder-color:var(--ibiz-color-text-3);--ibiz-form-item-disabled-color:var(--ibiz-color-disabled-text);--ibiz-form-item-disabled-bg-color:var(--ibiz-color-disabled-fill);--ibiz-form-item-disabled-border-color:var(--ibiz-color-disabled-border);--ibiz-form-item-active-bg:var(--ibiz-color-fill-2);--ibiz-form-item-active-border:var(--ibiz-active-bg);--ibiz-form-item-focus-bg:var(--ibiz-color-fill-0);--ibiz-form-item-focus-border:var(--ibiz-color-focus-border);--ibiz-form-item-line-height:var(--ibiz-editor-default-line-height);--ibiz-form-item-font-weight:var(--ibiz-font-weight-regular);width:100%;height:100%}.ibiz-panel-field .ibiz-panel-field-content{line-height:inherit}.ibiz-nav-pos{width:100%;height:100%}.ibiz-panel-rawitem{width:100%;height:100%}.ibiz-panel-rawitem .ibiz-panel-rawitem-content{width:100%}.ibiz-scroll-container-item{width:100%;height:100%;overflow:auto}.ibiz-scroll-container-item.is-hidden{display:none}.ibiz-scroll-container{width:100%;height:100%;display:flex;flex-flow:column nowrap}.ibiz-scroll-container.is-hidden{display:none}.ibiz-scroll-container-content{flex-grow:1;overflow:auto;display:flex}.ibiz-scroll-container-content__center{flex-grow:1;overflow:auto}.ibiz-scroll-container-content__left{overflow:auto}.ibiz-scroll-container-content__right{overflow:auto}.ibiz-scroll-container-header{overflow:auto}.ibiz-scroll-container-footer{overflow:auto}.ibiz-single-data-container{width:100%;height:100%}.ibiz-multi-data-container{width:100%;height:100%}.ibiz-panel-container-image{position:relative;width:100%;height:100%;background-repeat:no-repeat;background-position:center center}.ibiz-panel-container-image>.ibiz-row{height:100%;overflow-x:hidden;overflow-y:auto}.ibiz-panel-container-image.is-hidden{display:none}.ibiz-panel-container-group{--ibiz-panel-container-group-bg-color:transparent;--ibiz-panel-container-group-header-bg-color:transparent;--ibiz-panel-container-group-header-padding:var(--ibiz-spacing-base-tight);--ibiz-panel-container-group-header-border-color:var(--ibiz-color-border);--ibiz-panel-container-group-header-height:49px;--ibiz-panel-container-group-caption-text-color:var(--ibiz-color-text-0);--ibiz-panel-container-group-caption-font-size:var(--ibiz-font-size-header-5);--ibiz-panel-container-group-caption-font-weight:var(--ibiz-font-weight-bold);--ibiz-panel-container-group-content-bg-color:transparent;--ibiz-panel-container-group-content-padding:var(--ibiz-spacing-tight)}.ibiz-panel-container-group{height:100%;background-color:var(--ibiz-panel-container-group-bg-color);border-radius:var(--ibiz-border-radius-base)}.ibiz-panel-container-group__caption{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ibiz-panel-container-group-caption-font-size);font-weight:var(--ibiz-panel-container-group-caption-font-weight);color:var(--ibiz-panel-container-group-caption-text-color)}.ibiz-panel-container-group-collapse>.ibiz-panel-container-group-content{display:block}.ibiz-panel-container-group-collapse.is-collapse>.ibiz-panel-container-group-content{display:none}.ibiz-panel-container-group-header{display:flex;height:var(--ibiz-panel-container-group-header-height);padding:var(--ibiz-panel-container-group-header-padding);margin:var(--ibiz-panel-container-group-header-margin);border-bottom:1px solid var(--ibiz-panel-container-group-header-border-color)}.ibiz-panel-container-group-header__left,.ibiz-panel-container-group-header__right{display:inline-block;width:50%}.ibiz-panel-container-group-header__right{text-align:right;display:flex;align-items:center;justify-content:flex-end}.ibiz-panel-container-group-content{width:100%;height:100%}.ibiz-panel-container-group-content>.ibiz-row{width:100%;height:100%}.ibiz-panel-container-group--show-header>.ibiz-panel-container-group-content{height:calc(100% - var(--ibiz-panel-container-group-header-height));padding:var(--ibiz-panel-container-group-content-padding);background-color:var(--ibiz-panel-container-group-content-bg-color)}.ibiz-teleport-placeholder{width:auto;height:auto}.ibiz-grid-container{--ibiz-grid-container-bg-color:var(--ibiz-bg-color-overlay);--ibiz-grid-container-padding:var(--ibiz-padding);width:100%;height:100%;overflow:auto}.ibiz-grid-container.is-hidden{display:none}.ibiz-panel-container-tabs{position:relative}.ibiz-panel-container-tabs .el-tabs{--el-tabs-header-height: 52px}.ibiz-panel-container-tabs .el-tabs__nav-wrap::after{display:none}.ibiz-panel-container-tabs::after{position:absolute;bottom:0;left:0;z-index:var(--el-index-normal);width:100%;height:2px;content:"";background-color:var(--el-border-color-light)}.ibiz-control-viewlayoutpanel{width:100%;height:100%}.ibiz-control-viewlayoutpanel-content{width:100%;height:100%}.ibiz-control-panel{width:100%;height:100%}.ibiz-control-panel-content{width:100%;height:100%}
@@ -1 +1 @@
1
- System.register(["qx-util","vue","@ibiz-template/core","ramda","vue-router","qs","@ibiz-template/runtime","pinia"],(function(t){"use strict";var e,n,o,a,s,r,i,l,c,u,d,p,h,m,f,g,v,y,w,C,b,I,P,D,E,N,O,A,x,S,R,z,T,B,V,j,L,k,M,_,G,W,q,$,U,F,K,H,X,Q,J,Y,Z,tt,et,nt,ot,at,st,rt,it,lt,ct,ut,dt,pt,ht,mt,ft,gt,vt,yt,wt,Ct,bt,It,Pt,Dt,Et,Nt,Ot;return{setters:[function(t){e=t.SyncSeriesHook,n=t.isFunc,o=t.notNilEmpty,a=t.QXEvent,s=t.clearAll,r=t.createUUID},function(t){i=t.watch,l=t.onBeforeUnmount,c=t.createCommentVNode,u=t.getCurrentInstance,d=t.isReactive,p=t.toRaw,h=t.inject,m=t.reactive,f=t.onActivated,g=t.onDeactivated,v=t.ref,y=t.h,w=t.resolveComponent,C=t.provide,b=t.defineComponent,I=t.computed,P=t.createVNode,D=t.withDirectives,E=t.resolveDirective,N=t.isVNode,O=t.onUnmounted,A=t.onMounted,x=t.createTextVNode},function(t){S=t.onClickOutside,R=t.NOOP,z=t.listenJSEvent,T=t.Namespace,B=t.RuntimeError,V=t.isBase64Image,j=t.isSvg,L=t.IBizContext,k=t.ModelError,M=t.RuntimeModelError},function(t){_=t.isNil,G=t.isNotNil,W=t.isEmpty,q=t.mergeLeft},function(t){$=t.useRoute,U=t.useRouter,F=t.RouterView},function(t){K=t.default},function(t){H=t.ViewType,X=t.RouteConst,Q=t.getMatchResPath,J=t.calcDeCodeNameById,Y=t.ViewController,Z=t.getControlProvider,tt=t.calcDynaSysParams,et=t.getViewProvider,nt=t.PanelItemState,ot=t.PanelItemController,at=t.registerPanelItemProvider,st=t.Modal,rt=t.ViewMode,it=t.OpenAppViewCommand,lt=t.getEditorProvider,ct=t.PanelItemEventName,ut=t.getAllPanelField,dt=t.isDataContainer,pt=t.getPanelItemProvider,ht=t.PanelData,mt=t.PanelNotifyState,ft=t.execDELogicById,gt=t.ScriptFactory,vt=t.toLocalOpenWFRedirectView,yt=t.getControlsByView,wt=t.registerViewProvider,Ct=t.getDERedirectToView,bt=t.ViewLayoutPanelController,It=t.registerControlProvider,Pt=t.ControlType,Dt=t.PanelController,Et=t.RemotePluginItem},function(t){Nt=t.defineStore,Ot=t.createPinia}],execute:function(){t({calcResRoutePath:Wt,createOverlayView:Kt,generateRoutePath:async function(t,e,n,o){const a=kt(e);let s=n.srfdefaulttoroutedepth||2;n.toRouteDepth?(s=n.toRouteDepth,n.toRouteDepth=void 0):ibiz.env.isMob&&(a.pathNodes[0]={viewName:"home"});if(a.pathNodes.splice(s-1,a.pathNodes.length-s+1),n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}e.fullPath.startsWith("/appredirectview")&&((null==o?void 0:o.srfindexname)?(a.pathNodes[0].viewName=o.srfindexname,delete o.srfindexname):a.pathNodes[0].viewName="index");if(a.pathNodes.push({viewName:t.codeName.toLowerCase(),context:_t(n),params:o}),2===s&&(await Wt(a,n,t.appDataEntityId,t.appId),Gt.includes(t.viewType))){const e=J(t.appDataEntityId);delete a.pathNodes[0].context[e]}return{path:Mt(a)}},generateRoutePathByModal:async function(t,e,n,o){const a=kt(e),s=a.pathNodes.findIndex((t=>t.viewName===X.ROUTE_MODAL_TAG));-1!==s&&(a.pathNodes=a.pathNodes.slice(0,s));if(n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}return a.pathNodes.push({viewName:"".concat(X.ROUTE_MODAL_TAG,"/").concat(t.codeName.toLowerCase()),context:_t(n),params:o}),{path:Mt(a)}},getArrayProps:Hn,getAutoCompleteProps:$n,getCascaderProps:Xn,getCheckboxListProps:Sn,getCheckboxProps:Rn,getCodeProps:Un,getColorPickerProps:Qn,getDataPickerProps:zn,getDatePickerProps:Tn,getDateRangeProps:Bn,getDrawerPlacement:function(t){return Ht[t]||"right"},getDropdownProps:xn,getEditorEmits:function(){return{change:(t,e)=>!0,blur:t=>!0,focus:t=>!0,enter:t=>!0,infoTextChange:t=>!0}},getEditorProps:Pn,getGridArrayProps:function(){return{...Hn(),...Dn()}},getGridAutoCompleteProps:function(){return{...$n(),...Dn()}},getGridCascaderProps:function(){return{...Xn(),...Dn()}},getGridCheckboxListProps:function(){return{...Sn(),...Dn()}},getGridCheckboxProps:function(){return{...Rn(),...Dn()}},getGridCodeProps:function(){return{...Un(),...Dn()}},getGridColorPickerProps:function(){return{...Qn(),...Dn()}},getGridDataPickerProps:function(){return{...zn(),...Dn()}},getGridDatePickerProps:function(){return{...Tn(),...Dn()}},getGridDateRangeProps:function(){return{...Bn(),...Dn()}},getGridDropdownProps:function(){return{...xn(),...Dn()}},getGridEditorCommonProps:Dn,getGridEditorEmits:function(){return{change:(t,e)=>!0,rowSave:()=>!0}},getGridHtmlProps:function(){return{...Fn(),...Dn()}},getGridInputIpProps:function(){return{...On(),...Dn()}},getGridInputNumberProps:function(){return{...Nn(),...Dn()}},getGridInputProps:function(){return{...En(),...Dn()}},getGridListBoxProps:function(){return{...Vn(),...Dn()}},getGridMarkDownProps:function(){return{...Kn(),...Dn()}},getGridNumberRangeProps:function(){return{...jn(),...Dn()}},getGridRadioProps:function(){return{...Ln(),...Dn()}},getGridRateProps:function(){return{...kn(),...Dn()}},getGridRawProps:function(){return{...Mn(),...Dn()}},getGridSliderProps:function(){return{..._n(),...Dn()}},getGridSpanProps:function(){return{...An(),...Dn()}},getGridStepperProps:function(){return{...Gn(),...Dn()}},getGridSwitchProps:function(){return{...Wn(),...Dn()}},getGridUploadProps:function(){return{...qn(),...Dn()}},getHtmlProps:Fn,getInputIpProps:On,getInputNumberProps:Nn,getInputProps:En,getListBoxProps:Vn,getMarkDownProps:Kn,getNestedRoutePath:qt,getNumberRangeProps:jn,getOrigin:Rt,getOwnRouteContext:_t,getRadioProps:Ln,getRateProps:kn,getRawProps:Mn,getSliderProps:_n,getSpanProps:An,getStepperProps:Gn,getSwitchProps:Wn,getUploadProps:qn,isEmptyVNode:function(t){if(!Array.isArray(t))return t===Tt;return 1===t.length&&t[0]===Tt},onRouteChange:function(t,e){const n=$();if(!n)throw new B("无法正确获取route,可能是依赖问题");i((()=>null==n?void 0:n.path),(()=>{const o=qt(n,e);t({currentKey:o,fullPath:n.fullPath})}),{immediate:!0})},openViewDrawer:async function(t,e){const n=ibiz.overlay.createDrawer(Kt(t),void 0,e);await n.present();return await n.onWillDismiss()||{ok:!1}},openViewFloatWindow:async function(t,e){const n=ibiz.overlay.createFloatWindow(Kt(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewModal:async function(t,e){const n=ibiz.overlay.createModal(Kt(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewPopover:async function(t,e,n){const o=ibiz.overlay.createPopover(Kt(e),void 0,n);o.present(t.target);return await o.onWillDismiss()||{ok:!1}},parseRouteViewData:async function(t,e,n=!1){var a;const s=kt(t,n);let r=s.pathNodes[e-1].viewName;if(!r)throw new B("第".concat(e,"级路由不存在视图标识"));r===X.ROUTE_MODAL_TAG&&(r=s.pathNodes[e].viewName);"index"===r&&(r=ibiz.hub.defaultAppIndexViewName);const i=await ibiz.hub.config.view.get(r);if(!i)throw new B("找不到视图".concat(r));const l={};(null==(a=ibiz.appData)?void 0:a.context)&&Object.assign(l,ibiz.appData.context);s.appContext&&Object.assign(l,s.appContext);if(1!==e)for(let t=0;t<e;t++){const e=s.pathNodes[t];o(e.context)&&Object.assign(l,e.context)}const{params:c,srfnav:u}=s.pathNodes[e-1];return{viewConfig:i,context:l,params:c,srfnav:u}},prepareControl:function(t){const e=Lt("control"),{controlType:n,sysCss:o,codeName:a}=t.model,s=n.toLowerCase(),r=null==o?void 0:o.cssName,i=Lt("control-".concat(s)),l=[e.b(),e.b(s),e.m(a)];r&&l.push(r);return{controlClass:l,ns:i}},renderString:function(t){if(_(t))return"";if("string"==typeof t)return t;if("object"==typeof t)return JSON.stringify(t);try{return t.toString()}catch(e){ibiz.log.error(t,"转换成字符串失败",e)}return""},route2routePath:kt,routePath2string:Mt,useClickOutside:xt,useControlController:Vt,useController:function(t){t.force=zt()},useCtx:Bt,useEventListener:jt,useFocusAndBlur:function(t,e){const n=v(),o=v(!1);let a;const s=()=>{o.value||ibiz.log.debug("没有聚焦,不触发失焦"),e(),a.stop(),o.value=!1};return jt(n,"click",(e=>{o.value||(a=xt(n,(()=>{s()})),o.value=!0,t())}),{capture:!0}),{componentRef:n,isFocus:o,doBlur:s,pause:()=>{a&&a.pause()},stop:()=>{a&&a.stop()}}},useForce:zt,useForceTogether:function(t,e){const n=e.force,o=zt();e.force=t=>{n(t),o()}},useMobCtx:function(){return h("ctx")},useNamespace:Lt,useProps:St,usePropsWatch:function(t,e,n){const o=St();Object.prototype.hasOwnProperty.call(o,t)&&(i((()=>o[t]),((t,n)=>{e(Rt(t),Rt(n))}),n),e(Rt(o[t]),void 0))},useRouteKey:function(t,e,n){n||(n=v(""));n.value=t.value;const o=new $t(e);return i(t,((t,e)=>{t!==e&&o.nextChange((()=>{n.value=t}))})),n},useRouterQuery:function(){const t=$(),{query:e}=t;return e},useViewController:Qt});class At{}function xt(t,e,n={}){let o=R,a=R,s=R;const r=()=>{o(),o=R,a=R,s=R};return i(t,((t,i)=>{if(t!==i)if(_(t))r();else{const r=S((null==t?void 0:t.$el)||t,e,n);o=r.stop,a=r.pause,s=r.proceed}}),{immediate:!0}),l((()=>{o!==R&&r()})),{stop:()=>o(),pause:()=>a(),proceed:()=>s()}}function St(){return u().proxy.$props}function Rt(t){return d(t)?p(t):t}function zt(){const t=u().proxy;return e=>{t.$forceUpdate(),e&&n(e)&&t.$nextTick((()=>{e()}))}}t("AppHooks",At),At.createApp=new e,At.useComponent=new e;const Tt=t("EmptyVNode",c("EmptyVNode"));function Bt(){return h("ctx")}function Vt(t,e){const n=Bt(),o=St();n.evt.emit("onForecast",o.modelData.name);const a=o.provider;let s;s=(null==a?void 0:a.createController)?a.createController(o.modelData,o.context,o.params,n):t(o.modelData,o.context,o.params,n),function(t,e){i((()=>({context:t.context,params:t.params})),((t,n)=>{if(t===n)return;const o={...t};t.context===n.context&&delete o.context,t.params===n.params&&delete o.params,e.updateContextParams(o),ibiz.log.debug("".concat(e.model.id,"的上下文或视图参数变更:"),t)}))}(o,s),function(t,e,n=[]){const o=["context","params","modelData",...n];i((()=>{const e={};return Object.keys(t).forEach((n=>{o.includes(n)||(e[n]=t[n])})),e}),((t,n)=>{const o={};Object.keys(t).forEach((e=>{t[e]!==(n||{})[e]&&(o[e]=t[e])})),ibiz.log.debug("部件 [".concat(e.model.name,"] state 变更"),o),Object.keys(o).forEach((t=>{void 0!==o[t]&&(e.state[t]=o[t])}))}),{immediate:!0})}(o,s,null==e?void 0:e.excludePropsKeys),s.state=m(s.state),f((()=>s.onActivated())),g((()=>s.onDeactivated())),s.force=zt();const r=u().proxy;return s.evt.onAll(((t,e)=>{r.$emit(t.slice(2),e)})),r.$emit("controllerAppear",s),s.created(),l((()=>s.destroyed())),s}function jt(t,e,n,o={}){let a=R;return i(t,((t,s)=>{t!==s&&(_(t)?(a(),a=R):a=z((null==t?void 0:t.$el)||t,e,n,o))}),{immediate:!0}),l((()=>{a!==R&&a()})),()=>{a()}}function Lt(t){return new T(t,ibiz.env.namespace)}function kt(t,e=!1){const n=t.matched.length;let o=t.path;e&&(o=o.replace(new RegExp("/".concat(X.ROUTE_MODAL_TAG),"g"),""));const a=o.split("/"),s=[];for(let e=1;e<=n;e++){const n=a[2*e],o=t.params["params".concat(e)];let r,i,l;r=o&&o!==ibiz.env.routePlaceholder?K.parse(o,{strictNullHandling:!0,delimiter:";"}):void 0,r&&(1===e?(i=r,r=void 0):(r.srfnavctx&&(i=JSON.parse(decodeURIComponent(r.srfnavctx)),delete r.srfnavctx),r.srfnav&&(l=r.srfnav,delete r.srfnav))),s.push({viewName:n,context:i,params:r,srfnav:l})}let r;return t.params.appContext&&t.params.appContext!==ibiz.env.routePlaceholder&&(r=K.parse(t.params.appContext,{strictNullHandling:!0,delimiter:";"})),{appContext:r,pathNodes:s}}function Mt(t){let e="";return t.appContext?e+="/".concat(K.stringify(t.appContext,{delimiter:";",strictNullHandling:!0})):e+="/".concat(ibiz.env.routePlaceholder),t.pathNodes.forEach(((t,n)=>{e+="/".concat(t.viewName,"/");let a={};if(0===n)o(t.context)&&(a=t.context);else{if(a=o(t.params)?t.params:{},o(t.context)){const e=JSON.stringify(t.context);"{}"!==e&&(a.srfnavctx=encodeURIComponent(e))}t.srfnav&&(a.srfnav=t.srfnav)}const s=K.stringify(a,{delimiter:";",strictNullHandling:!0,skipNulls:!0});o(s)?e+=s:e+=ibiz.env.routePlaceholder})),e}function _t(t){const e=t.getOwnContext(),n=["srfsessionid","srfappid","currentSrfNav","toRouteDepth"];return Object.keys(e).forEach((t=>{n.includes(t)&&delete e[t]})),e}const Gt=t("excludeViewTypes",[H.DE_GRID_VIEW,H.DE_GRID_EXP_VIEW,H.DE_LIST_VIEW,H.DE_LIST_EXP_VIEW,H.DE_DATA_VIEW,H.DE_DATAVIEW_EXP_VIEW,H.DE_CALENDAR_VIEW,H.DE_CALENDAR_EXP_VIEW,H.DE_CHART_VIEW,H.DE_CHART_EXP_VIEW,H.DE_KANBAN_VIEW]);async function Wt(t,e,n,o){if(n){const a=await ibiz.hub.getAppDataEntity(n,o);let s=Q(e,a);if(s||(s={path:"",keys:[a.codeName.toLowerCase()]}),s){const n=t.pathNodes[1].context,o={};s.keys.forEach((t=>{e&&Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t],n&&delete n[t])})),t.pathNodes[0].context=o}}else t.pathNodes[0].context=void 0}function qt(t,e,n=!0){if(t.matched.length<e)return"";if(t.matched.length===e&&t.name)return t.path;const o=kt(t);return o.pathNodes.length<e?t.path:(o.pathNodes.length>e&&(o.pathNodes=o.pathNodes.slice(0,e)),n&&delete o.pathNodes[e-1].srfnav,Mt(o))}class $t{constructor(t,e){this.callbacks=[],this.timers=[],this.wait=500,e&&(this.wait=e),i((()=>t.path),((t,e)=>{if(t!==e){if(this.callbacks.length)for(let t=0;t<this.callbacks.length;t++){(0,this.callbacks[t])()}if(this.callbacks=[],this.timers.length)for(let t=0;t<this.timers.length;t++){const e=this.timers[t];clearTimeout(e)}this.timers=[]}}))}nextChange(t){t&&(this.timers.push(setTimeout((()=>{t();const e=this.callbacks.findIndex((e=>e===t));this.callbacks.splice(e,1)}),this.wait)),this.callbacks.push(t))}}t("RouteListener",$t);const Ut=t("withInstall",((t,e)=>(t.install=t=>{e(t)},t)));class Ft{constructor(t,e,n){this.component=t,this.render=e,this.opts=n,this.evt=new a,this.init()}static createVueApp(t,e){throw new B("没有注入createVueApp方法")}init(){const t=this,{render:e,opts:n}=this,o=document.createElement("div");document.body.appendChild(o);const a=Ft.createVueApp({mounted(){t.modal=this.$refs.root},unmounted(){document.body.removeChild(o),t.evt.emit("dismiss",t.result)},render:()=>y(t.component,{ref:"root",opts:n,onDismiss(e){t.result=e,a.unmount()}},{default:e})});ibiz.plugin.register(a),a.mount(o),this.vm=a}async present(){return this.modal.present()}async dismiss(t){await this.modal.dismiss(t)}async onWillDismiss(){return new Promise((t=>{const e=n=>{t(n),this.evt.off("dismiss",e)};this.evt.on("dismiss",e)}))}}t("OverlayContainer",Ft);function Kt(t){return e=>{const n=w("IBizViewShell");return y(n,{...t,modal:e})}}t("OverlayPopoverContainer",class extends Ft{present(t){return this.modal.present(t)}});const Ht={DRAWER_LEFT:"left",DRAWER_RIGHT:"right",DRAWER_TOP:"top",DRAWER_BOTTOM:"bottom"};class Xt{constructor(t,e){this.from=t,this.to=e,this.isActivated=!1,ibiz.log.debug("openRouter: ",t,e)}onWillDismiss(){return this.promise||(this.promise=new Promise((t=>{this.resolve=t}))),this.promise.then((t=>(ibiz.log.debug("onWillDismiss: ",this.from,this.to,t),t)))}close(t){ibiz.log.debug("closeRouter: ",this.from,this.to,t),this.resolve&&(this.resolve(t),this.resolve=void 0)}active(){ibiz.log.debug("activeRouter: ",this.from,this.to),this.isActivated=!0}destroy(){ibiz.log.debug("destroyRouter: ",this.from,this.to),this.resolve&&(this.resolve({ok:!1}),this.resolve=void 0)}}t("routerCallback",new class{constructor(){this.map=new Map}async open(t,e,n={}){const o=t.currentRoute.value.fullPath;n.replace?t.replace({path:e}):t.push({path:e});const a=e;if(this.map.has(a)){return this.map.get(a).onWillDismiss()}const s=new Xt(o,a);return this.map.set(a,s),this.scheduledDestruction(s),s.onWillDismiss()}close(t,e){const n=this.map.get(t);n&&(n.close(e),this.map.delete(t))}active(t){const e=this.map.get(t);e&&(window.clearTimeout(e.timeout),e.timeout=void 0,e.active())}scheduledDestruction(t){t.timeout=window.setTimeout((()=>{t.timeout=void 0,t.destroy(),this.map.delete(t.to)}),1e4)}}),t("useAppStore",Nt("appStore",(()=>({appStore:m({})}))));t("useUIStore",Nt("uiStore",(()=>{const t=function(){const t=v(500);return{zIndex:t,increment:function(){return t.value+=1,t.value},decrement:function(){t.value-=1}}}();return{UIStore:m({zIndex:t.zIndex,theme:"light"}),zIndex:t}}))),t("piniaInstance",Ot());function Qt(t){const e=St(),n=h("ctx",void 0);null==n||n.evt.emit("onForecast",e.modelData.name);const o=e.provider;let a;a=(null==o?void 0:o.createController)?o.createController(e.modelData,e.context,e.params,n):t(e.modelData,e.context,e.params,n),ibiz.util.viewStack.add(a.id,a),function(t,e){i((()=>({context:t.context,params:t.params})),(t=>{e.context.reset({},t.context),s(e.params),Object.assign(e.params,t.params),e.handleContextParams(),ibiz.log.debug("".concat(e.model.id,"的上下文或视图参数变更:"),t)}))}(e,a),function(t,e){i((()=>t.state?{...t.state}:{}),((t,n)=>{const o={};Object.keys(t).forEach((e=>{t[e]!==(n||{})[e]&&(o[e]=t[e])})),ibiz.log.debug("视图 [".concat(e.model.name,"] state 变更"),o),Object.keys(o).forEach((t=>{e.state[t]=o[t]}))}),{immediate:!0})}(e,a),C("ctx",a.ctx),a.state=m(a.state),a.slotProps=m(a.slotProps),e.modal&&(a.modal=e.modal),f((()=>{a.onActivated(),ibiz.util.viewStack.active(a.id)})),g((()=>{a.onDeactivated(),ibiz.util.viewStack.deactivate(a.id)})),a.force=zt();const r=u().proxy;return a.evt.onAll(((t,e)=>{r.$emit(t.slice(2),e)})),a.created(),l((()=>{a.destroyed(),ibiz.util.viewStack.remove(a.id)})),a}t("IBizIcon",b({name:"IBizIcon",props:{icon:{type:Object},size:{type:String},baseDir:{type:String,default:"images"}},setup(t){const e=Lt("icon"),n="".concat(ibiz.env.assetsUrl,"/").concat(t.baseDir,"/");const o=I((()=>function(t){if(t){if(t.htmlStr)return P("span",{class:e.b(),innerHTML:t.htmlStr},null);if(t.cssClass)return-1!==t.cssClass.indexOf("fa-")?P("i",{class:[e.b(),t.cssClass]},null):P("ion-icon",{class:e.b(),name:t.cssClass},null);if(t.imagePath)return V(t.imagePath)?P("img",{class:e.b(),src:t.imagePath},null):j(t.imagePath)?P("div",{class:e.b(),innerHTML:t.imagePath},null):t.imagePath.endsWith("svg")?t.imagePath.startsWith("http")?P("img",{class:e.b(),src:t.imagePath},null):P("ion-icon",{src:n+t.imagePath,class:e.b()},null):t.imagePath.startsWith("http")?P("img",{class:e.b(),src:t.imagePath},null):P("img",{class:e.b(),src:n+t.imagePath},null);if(t.rawContent)return j(t.rawContent)?P("div",{class:e.b(),innerHTML:t.rawContent},null):P("img",{class:e.b(),src:t.rawContent},null)}return null}(t.icon)));return()=>o.value}})),t("IBizRouterView",b({name:"IBizRouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object,manualKey:{type:String}},setup(t,{attrs:e}){const n={};let o=!0;i((()=>t.manualKey),((t,e)=>{G(t)&&t!==e&&(o=!0)}));return{renderComp:(a,s)=>{if(!o)return n.vNode;if(o=!1,a){const o={...a.props};delete o.onVnodeUnmounted,delete o.ref;const s=y(a.type,{...o,...e,key:t.manualKey});return n.vNode=s,s}}}},render(){return P(w("router-view"),{name:this.name,route:this.route},{default:({Component:t,route:e})=>{const n=this.renderComp(t,e);return this.$slots.default?this.$slots.default({Component:n,route:e}):n}})}})),t("IBizControlBase",b({name:"IBizControlBase",props:{controller:{type:Object,required:!0}},setup(t){const e=Lt("control"),{controlType:n,sysCss:o,codeName:a}=t.controller.model,s=n.toLowerCase(),r=null==o?void 0:o.cssName,i=t.controller.model,l=t.controller.model.controls,c=m({});return!1===i.controlType.endsWith("EXPBAR")&&(_(i.width)||(i.width>0&&i.width<=1?c.width="".concat(100*i.width,"%"):c.width="".concat(i.width,"px")),_(i.height)||(i.height>0&&i.height<=1?c.width="".concat(100*i.height,"%"):c.height="".concat(i.height,"px"))),{ns:e,typeClass:s,sysCssName:r,inlineStyle:c,codeName:a,controls:l,onLayoutPanelCreated:e=>{t.controller.setLayoutPanel(e)}}},render(){var t,e,n;const{state:o,controlPanel:a,providers:s}=this.controller;let r=null;if(o.isCreated&&a){const e={...this.$slots};(null==(t=this.controls)?void 0:t.length)&&this.controls.forEach((t=>{const n=t.name,o={context:this.controller.context,params:this.controller.params},a=e[n];e[n]=a?()=>a(o):()=>{const e=w("IBizControlShell");return y(e,{modelData:t,...o})}}));const n=s[a.name];r=y(w(n.component),{modelData:a,context:this.controller.context,params:this.controller.params,provider:n,container:this.controller,onControllerAppear:this.onLayoutPanelCreated},e)}return P("div",{class:[this.ns.b(),this.ns.b(this.typeClass),this.ns.m(this.codeName),this.sysCssName],style:this.inlineStyle},[r||(null==(n=(e=this.$slots).default)?void 0:n.call(e))])}})),t("IBizControlShell",b({name:"IBizControlShell",props:{modelData:{type:Object,required:!0}},setup(t){const e=h("ctx");if(e)e.evt.emit("onForecast",t.modelData.name);else{const t={name:"AppView",id:"AppView",viewType:H.DE_CUSTOM_VIEW,appId:ibiz.env.appId};C("ctx",new Y(t,L.create({})).ctx)}const n=v(!1),o=v(""),a=v();Z(t.modelData).then((t=>{t?a.value=t:o.value="未找到对应部件的适配器",n.value=!0})).catch((t=>{ibiz.log.error(t),o.value=t.message,n.value=!0}));return{ns:Lt("control-shell"),isComplete:n,errMsg:o,provider:a}},render(){return this.isComplete&&this.provider?y(w(this.provider.component),{provider:this.provider,...this.$props,...this.$attrs},this.$slots):D(P("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[E("loading"),!this.isComplete]])}})),t("IBizViewShell",b({name:"IBizViewShell",props:{context:{type:Object,required:!0},params:{type:Object},modelData:{type:Object},viewId:{type:String}},setup(t){const e=Lt("view-shell"),n=v(!1),o=v(""),a=v(),s=v();return(async()=>{let e;if(e=t.modelData?t.modelData:await ibiz.hub.getAppView(t.viewId),!e)throw new B("未找到视图模型");if(1===e.dynaSysMode){const n=e.appDataEntityId;if(!n)throw new B("".concat(e.codeName,"无实体,暂不支持加载动态模型"));const o=t.params||{},a=await tt(n,t.context,{viewParams:o,appId:e.appId});if(o.srfdatatype&&(a.srfdatatype=o.srfdatatype),o.srfwftag)a.srfwftag=o.srfwftag;else if(n&&e.enableWF){const o={...t.context};if(a.srfkey){const s=_(t.context.srfsessionid)||W(t.context.srfsessionid),i=r();if(s){const t=ibiz.uiDomainManager.create(i);o.srfsessionid=t.id}const l=ibiz.hub.getApp(e.appId),c=await l.deService.getService(t.context,n),u=await c.get(o,t.params||{});if(u.ok&&u.data){const{srfwftag:n,processdefinitionkey:o,taskdefinitionkey:s}=u.data;if(n&&(a.srfwftag=n),["DEWFDYNAEDITVIEW3","DEWFDYNAEDITVIEW"].includes(e.viewType)){const e=t.params;_(e.processDefinitionKey)&&(e.processDefinitionKey=o),_(e.taskDefinitionKey)&&(e.taskDefinitionKey=s)}}s&&ibiz.uiDomainManager.destroy(i)}}s.value=await ibiz.hub.loadAppView(e.appId,e.id,a)}else s.value=e;try{a.value=await et(e)}catch(t){ibiz.log.error(t),o.value=t.message}finally{n.value=!0}})(),{ns:e,isComplete:n,errMsg:o,viewModelData:s,provider:a}},render(){return this.isComplete&&this.provider?y(w(this.provider.component),{context:this.$props.context,params:this.$props.params,modelData:this.viewModelData,...this.$attrs,provider:this.provider},this.$slots):D(P("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[E("loading"),!this.isComplete]])}})),t("IBizCodeList",b({name:"IBizCodeList",props:{codeListItems:{type:Array},codeList:{type:Object,required:!0},value:{type:[String,Number]}},emits:{infoTextChange:t=>!0},setup(t,{emit:e}){var n,o;const a=Lt("code-list"),s=v([]),r=(null==(n=t.codeList)?void 0:n.textSeparator)||"、",l=(null==(o=t.codeList)?void 0:o.valueSeparator)||",";i(s,(t=>{let n="";t.length>0&&(n=t.map((t=>t.text)).join(r)),e("infoTextChange",n)}));const c=(t,e)=>{if(t){const n=t.find((t=>t.value==e));if(n)return n;for(let n=0;n<t.length;n++){const o=c(t[n].children,e);if(o)return o}}};i((()=>t.value),((e,n)=>{if(e!==n)if(_(e)||""===e)s.value=[];else{let n;n="string"==typeof e?e.split(l):[e],s.value=n.map((e=>{const n=c(t.codeListItems,e);return{text:(null==n?void 0:n.text)||e,color:null==n?void 0:n.color,textCls:null==n?void 0:n.textCls,sysImage:null==n?void 0:n.sysImage}}))}}),{immediate:!0});const u="未定义"===t.codeList.emptyText?"- - -":t.codeList.emptyText;return{items:s,ns:a,emptyText:u,textSeparator:r}},render(){return P("span",{class:this.ns.b()},[0===this.items.length?this.emptyText:this.items.map(((t,e)=>[0!==e?this.textSeparator:null,P("span",{class:[this.ns.e("item"),t.textCls?t.textCls:null],style:t.color?this.ns.cssVarBlock({"item-color":"".concat(t.color)}):null},[t.sysImage&&P(w("iBizIcon"),{icon:t.sysImage},null),t.text])]))])}})),t("ControlLoadingPlaceholder",b({name:"ControlLoadingPlaceholder",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})}},setup:t=>(h("ctx").evt.emit("onForecast",t.modelData.name),{}),render:()=>null})),t("IBizBadge",b({name:"IBizBadge",props:{value:{type:Number,required:!0},type:{type:String,default:"danger"}},setup:()=>({ns:Lt("badge")}),render(){return P("div",{class:[this.ns.b(),this.ns.m(this.type)]},[this.value])}}));class Jt extends nt{}t("PanelContainerState",Jt);class Yt extends ot{createState(){var t;return new Jt(null==(t=this.parent)?void 0:t.state)}}function Zt(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}t("PanelContainerController",Yt);const te=b({name:"IBizPanelContainer",props:{modelData:{type:Object,required:!0},controller:{type:Yt,required:!0}},setup(t){const e=Lt("panel-container"),{id:n}=t.modelData,o=I((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o}));return{ns:e,classArr:o}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],a=P(w("iBizRow"),{slot:"content",layout:this.modelData.layout},Zt(n=o.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Zt(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});return P("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[this.controller.model.cssStyle?P("style",{type:"text/css"},[this.controller.model.cssStyle]):null,a])}});class ee{constructor(){this.component="IBizPanelContainer"}async createController(t,e,n){const o=new Yt(t,e,n);return await o.init(),o}}t("IBizPanelContainer",Ut(te,(function(t){t.component(te.name,te),at("CONTAINER",(()=>new ee)),at("CONTAINER_DEFAULT",(()=>new ee))})));const ne=b({name:"IBizPanelCtrlPos",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){h("ctx").evt.on("onRegister",((e,n)=>{e===t.modelData.id&&t.controller.bindControl(n)}));return{ns:Lt("panel-ctrl-pos")}},render(){const{state:t}=this.controller;let e;return this.$slots.default&&(e=this.$slots.default()),P("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass,this.ns.is("hidden",!t.visible)]},[e||(ibiz.env.dev?"未提供".concat(this.modelData.id,"插槽"):"")])}});class oe extends ot{bindControl(t){this.control=t,t.evt.onAll(((t,e)=>{this.panel.evt.emit("onControlEvent",{triggerControlName:this.model.id,triggerEventName:t,triggerEvent:e})}))}}t("PanelCtrlPosController",oe);class ae{constructor(){this.component="IBizPanelCtrlPos"}async createController(t,e,n){const o=new oe(t,e,n);return await o.init(),o}}t("IBizPanelCtrlPos",Ut(ne,(function(t){t.component(ne.name,ne),at("CTRLPOS",(()=>new ae))})));class se extends ot{}function re(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}t("ScrollContainerItemController",se);const ie=t("ScrollContainerItem",b({name:"IBizScrollContainerItem",props:{modelData:{type:Object,required:!0},controller:{type:se,required:!0}},setup(t){const e=Lt("scroll-container-item"),{id:n}=t.modelData,o=I((()=>[e.b(),e.m(n),e.is("hidden",!t.controller.state.visible)]));return{ns:e,classArr:o}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[];return P(w("iBizRow"),{class:this.classArr,layout:{layout:"FLEX"}},re(n=o.map((t=>{const e=t.props;return e&&e.controller?(e.modelData.layoutPos.layout="FLEX",P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},re(t)?t:{default:()=>[t]})):t})))?n:{default:()=>[n]})}}));class le{constructor(){this.component="IBizScrollContainerItem"}async createController(t,e,n){const o=new se(t,e,n);return await o.init(),o}}class ce extends ot{async onInit(){await super.onInit(),this.state.layout.width="100%",this.state.layout.height="100%"}}t("ScrollContainerController",ce);const ue=t("ScrollContainer",b({name:"IBizScrollContainer",props:{modelData:{type:Object,required:!0},controller:{type:ce,required:!0}},setup(t){const e=Lt("scroll-container"),{id:n}=t.modelData,o=I((()=>[e.b(),e.m(n),...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)]));return{ns:e,classArr:o}},render(){var t,e;let n=null,o=null,a=null,s=null,r=null;const i={};((null==(e=(t=this.$slots).default)?void 0:e.call(t))||[]).forEach((t=>{const e=t.props;if(!e||!e.controller)return;const{width:l,height:c}=e.controller.state.layout;switch(e.modelData.layoutPos.layoutPos){case"WEST":n=t,i.left={width:l};break;case"EAST":a=t,i.right={width:l};break;case"NORTH":o=t,i.top={height:c};break;case"SOUTH":s=t,i.bottom={height:c};break;case"CENTER":r=t;break;default:ibiz.log.debug("未适配的布局占位".concat(e.modelData.layoutPos.layoutPos))}}));for(const t in i)(i[t].width||i[t].height)&&(i[t].flexShrink=0);return P("div",{class:this.classArr},[P("div",{class:[this.ns.e("header")],style:i.top},[o]),P("div",{class:[this.ns.b("content")]},[P("div",{class:this.ns.be("content","left"),style:i.left},[n]),P("div",{class:this.ns.be("content","center")},[r]),P("div",{class:this.ns.be("content","right"),style:i.right},[a])]),P("div",{class:[this.ns.e("footer")],style:i.bottom},[s])])}}));class de{constructor(){this.component="IBizScrollContainer"}async createController(t,e,n){const o=new ce(t,e,n);return await o.init(),o}}t("IBizScrollContainer",Ut(ue,(function(t){t.component(ue.name,ue),t.component(ie.name,ie),at("CONTAINER_CONTAINER_SCROLL",(()=>new de)),at("CONTAINER_CONTAINER_SCROLL_LEFT",(()=>new le)),at("CONTAINER_CONTAINER_SCROLL_HEADER",(()=>new le)),at("CONTAINER_CONTAINER_SCROLL_RIGHT",(()=>new le)),at("CONTAINER_CONTAINER_SCROLL_BOTTOM",(()=>new le)),at("CONTAINER_CONTAINER_SCROLL_MAIN",(()=>new le))})));class pe extends nt{constructor(){super(...arguments),this.cache=!0,this.routeOpen=!0,this.currentKey="",this.cacheKeys=["RouterShell"],this.navViewMsgs={}}}t("NavPosState",pe);const he=["is404","isRoutePushed"];class me extends ot{constructor(){super(...arguments),this.viewModals={},this.refCtrlKeys=[],this.rawItemParams={}}get route(){return this.router.currentRoute.value}getExpItemIsCache(t){return"CACHE"===this.rawItemParams.expcache||"NO_CACHE"!==this.rawItemParams.expcache&&t.isCache}setRouter(t){this.router=t}async onInit(){var t;await super.onInit(),this.handleRawItemParams(),(null==(t=this.model.rawItem)?void 0:t.rawItemParams)&&this.model.rawItem.rawItemParams.find((t=>!("REFCTRL"!==t.key||!t.value)&&(this.refCtrlKeys=t.value.split(";").map((t=>t.toLowerCase())),!0))),this.panel.evt.on("onControlEvent",(t=>{if((0===this.refCtrlKeys.length||this.refCtrlKeys.includes(t.triggerControlName))&&"onNavViewChange"===t.triggerEventName){const e=t.triggerEvent;this.openView(e.navViewMsg)}}));const e=this.rawItemParams.expmode||this.panel.view.params.expmode;"ROUTE"===e&&this.routeDepth?this.state.routeOpen=!0:this.state.routeOpen="NO_ROUTE"!==e&&!!this.routeDepth,this.panel.view.params.expmode&&delete this.panel.view.params.expmode}createState(){var t;return new pe(null==(t=this.parent)?void 0:t.state)}get routeDepth(){return this.panel.view.modal.routeDepth}calcCacheKey(t){return t?"".concat(t.viewId,"___").concat(t.key):""}onRouteChange(t){if(this.curNavViewMsg){const e=this.calcCacheKey(this.curNavViewMsg);this.state.currentKey=e,this.state.navViewMsgs[e].fullPath=t.fullPath}}setNavViewMsgs(t){t.isRoutePushed=!0===t.isRoutePushed;const e=this.calcCacheKey(t);this.state.navViewMsgs[e]?(q(this.state.navViewMsgs[e],t),he.forEach((n=>{Object.prototype.hasOwnProperty.call(t,n)&&(this.state.navViewMsgs[e][n]=void 0)}))):(this.state.navViewMsgs[e]=t,this.getExpItemIsCache(t)&&this.state.cacheKeys.push(e),this.viewModals[e]=new st({mode:this.routeDepth?rt.ROUTE:rt.EMBED,routeDepth:this.routeDepth?this.routeDepth+1:void 0,dismiss:()=>{this.dismiss(e)}})),this.curNavViewMsg=this.state.navViewMsgs[e]}dismiss(t){ibiz.log.debug(this.constructor.name,"dismiss",t)}onViewCreated(t){ibiz.log.debug(this.constructor.name,"onViewCreated",t)}toBlankRoute(){const t=qt(this.route,this.routeDepth);this.router.push(t)}openView(t){if(!t.key)return this.state.currentKey=this.calcCacheKey(t),void(this.routeDepth&&this.state.routeOpen&&this.toBlankRoute());this.routeDepth&&this.state.routeOpen?this.openViewByPath(t):this.openViewByModel(t)}openViewByPath(t){var e,n;const o=this.calcCacheKey(t);this.setNavViewMsgs(t);if(!0===t.isRoutePushed)return this.state.currentKey=o,void(this.state.navViewMsgs[this.calcCacheKey(this.curNavViewMsg)].fullPath=this.route.fullPath);if(t.is404){const n=qt(this.route,this.routeDepth,!1);(null==(e=t.modalOptions)?void 0:e.replace)?this.router.replace("".concat(n,"/error/404")):this.router.push("".concat(n,"/error/404"))}else if(this.state.navViewMsgs[o].fullPath&&this.getExpItemIsCache(t))(null==(n=t.modalOptions)?void 0:n.replace)?this.router.replace(this.state.navViewMsgs[o].fullPath):this.router.push(this.state.navViewMsgs[o].fullPath);else{const e=Object.assign(t.context.clone(),{toRouteDepth:this.routeDepth+1});this.getExpItemIsCache(t)&&this.state.cacheKeys.push(o),ibiz.commands.execute(it.TAG,t.viewId,e,t.params,{openMode:"INDEXVIEWTAB",replace:!this.state.currentKey,...t.modalOptions})}}openViewByModel(t){this.setNavViewMsgs(t),this.state.currentKey=this.calcCacheKey(t)}handleRawItemParams(){var t;let e={};const n=null==(t=this.model.rawItem)?void 0:t.rawItemParams;o(n)&&(e=n.reduce(((t,e)=>(t[e.key.toLowerCase()]=e.value,t)),{})),Object.assign(this.rawItemParams,e)}}function fe(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}t("NavPosController",me);const ge=b({name:"IBizNavPos",props:{modelData:{type:Object,required:!0},controller:{type:me,required:!0}},setup(t){const e=t.controller,n=Lt("nav-pos"),o=U(),a=$(),s=v(!1);if(e.setRouter(o),e.routeDepth){const t=qt(a,e.routeDepth);i((()=>a.fullPath),(()=>{const n=qt(a,e.routeDepth);if(t===n&&a.matched.length>e.routeDepth){if(a.matched.length===e.routeDepth+1&&(s.value=!!a.name,s.value))return;e.onRouteChange(a)}}),{immediate:!0})}return{ns:n,c:e,isPresetView:s,onViewCreated:t=>{e.onViewCreated(t)}}},render(){const{viewModals:t,state:e}=this.c,{currentKey:n,cacheKeys:o,navViewMsgs:a,cache:s}=e;let r=null;if(e.routeOpen){if(this.isPresetView)return P(F,null,null);r=P(w("iBizRouterView"),{manualKey:n,modal:t[n],onCreated:this.onViewCreated},{default:({Component:t})=>{const e=""!==n&&t?P(t,null,null):null;return s?P(w("keepAlive"),{include:o,max:30,isKey:!0},fe(e)?e:{default:()=>[e]}):e}})}else{const t=n?y(w("IBizViewShell"),{context:a[n].context,params:a[n].params,key:n,viewId:a[n].viewId,onCreated:this.onViewCreated}):null;r=s?P(w("keepAlive"),{include:o,max:30,isKey:!0},fe(t)?t:{default:()=>[t]}):t}return P("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass]},[r])}});class ve{constructor(){this.component="IBizNavPos"}async createController(t,e,n){const o=new me(t,e,n);return await o.init(),o}}t("IBizNavPos",Ut(ge,(function(t){t.component(ge.name,ge),at("RAWITEM_NAV_POS",(()=>new ve))})));class ye extends nt{}class we extends ot{constructor(){super(...arguments),this.unitName=void 0}get valueFormat(){return this.model.valueFormat}get dataType(){}get context(){return this.panel.context}get params(){return this.panel.params}get data(){return this.dataParent.data}get value(){return this.data[this.model.id]}createState(){var t;return new ye(null==(t=this.parent)?void 0:t.state)}async onInit(){var t;await super.onInit(),this.state.required=!this.model.allowEmpty,!0!==this.context.srfreadonly&&"true"!==this.context.srfreadonly&&(this.state.readonly=(null==(t=this.model.editor)?void 0:t.readOnly)||!1),this.model.editor&&"HIDDEN"!==this.model.editor.editorType&&(this.editorProvider=await lt(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this)))}async setDataValue(t,e){const{id:n}=this.model;e=e||n,this.dataParent.setDataValue&&await this.dataParent.setDataValue(e,t),this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:ct.CHANGE})}onFocus(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:ct.FOCUS,event:t})}onBlur(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:ct.BLUR,event:t})}onEnter(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:ct.ENTER,event:t})}}t("PanelFieldController",we);const Ce=b({name:"IBizPanelField",props:{modelData:{type:Object,required:!0},controller:{type:we,required:!0}},setup(t){const e=Lt("panel-field"),n=I((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:n,onValueChange:(e,n)=>{t.controller.setDataValue(e,n)}}},render(){let t=null;if(this.controller.data){const e={value:this.controller.value,data:this.controller.data,controller:this.controller.editor,disabled:this.controller.state.disabled,class:this.ns.b("content"),readonly:this.controller.state.readonly,onChange:this.onValueChange,onFocus:t=>this.controller.onFocus(t),onBlur:t=>this.controller.onBlur(t),onEnter:t=>this.controller.onEnter(t),...this.$attrs};if(this.$slots.default)t=this.$slots.default(e);else if(this.controller.editorProvider){const n=w(this.controller.editorProvider.formEditor);t=y(n,{...e})}else t=P(w("not-supported-editor"),{modelData:this.modelData.editor},null)}return P("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[t])}});class be{constructor(){this.component="IBizPanelField"}async createController(t,e,n){const o=new we(t,e,n);return await o.init(),o}}t("IBizPanelField",Ut(Ce,(function(t){t.component(Ce.name,Ce),at("FIELD",(()=>new be))})));class Ie extends ot{get data(){return this.dataParent.data}async onInit(){await super.onInit()}}t("PanelRawItemController",Ie);const Pe=b({name:"IBizPanelRawItem",props:{modelData:{type:Object,required:!0},controller:{type:Ie,required:!0}},setup(t){const e=Lt("panel-rawitem"),n=v(""),{rawItem:o}=t.modelData;o&&o.cssStyle&&(n.value=o.cssStyle);const a=I((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:a,tempStyle:n}},render(){if(this.controller.state.visible)return P("div",{class:this.classArr,style:this.tempStyle,onClick:()=>{this.controller.onClick()}},[P(w("iBizRawItem"),{rawItem:this.modelData},null)])}});class De{constructor(){this.component="IBizPanelRawItem"}async createController(t,e,n){const o=new Ie(t,e,n);return await o.init(),o}}t("IBizPanelRawItem",Ut(Pe,(function(t){t.component(Pe.name,Pe),at("RAWITEM",(()=>new De)),at("RAWITEM_STATIC_IMAGE",(()=>new De)),at("RAWITEM_STATIC_LABEL",(()=>new De)),at("RAWITEM_STATIC_TEXT",(()=>new De))})));class Ee extends nt{constructor(){super(...arguments),this.data={}}}class Ne{constructor(t,e,n,o){this.model=t,this.panel=e,this.parent=n,this.state=new Ee,this.isDataContainer=!0,this.panelItems={},this.state.data=o;const a=ut(this.model).map((t=>t.id));o._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])}))}get data(){return this.state.data}async init(){await this.initChildrenController()}async initChildrenController(t=this.model.panelItems,e=this.panel,n=this){t&&await Promise.all(t.map((async t=>{var o,a;const s=this.parent.providers[t.id];if(!s)return;const r=await s.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!dt(t)?await this.initChildrenController(t.panelItems,e,r):(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initChildrenController(t.panelTabPages,e,r)})))}async dataChangeNotify(t){}async childDataChangeNotify(t){Object.values(this.panelItems).forEach((e=>{e.dataChangeNotify(t)}))}async panelStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setDataValue(t,e){Object.prototype.hasOwnProperty.call(this.state.data,t)&&this.state.data[t]===e||(this.state.data[t]=e,this.childDataChangeNotify([t]))}destroy(){var t,e;null==(e=(t=this.data).destroy)||e.call(t),Object.values(this.panelItems).forEach((t=>{t.destroy()}))}}class Oe extends nt{constructor(){super(...arguments),this.items=[]}}t("MultiDataContainerState",Oe);class Ae extends ot{constructor(){super(...arguments),this.isDataContainer=!0,this.dataItems=[],this.providers={}}get data(){return this.state.items}createState(){var t;return new Oe(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemProviders(),this.initContainerData()}async initPanelItemProviders(t=this.model.panelItems){t&&await Promise.all(t.map((async t=>{var e,n;const o=await pt(t);o&&(this.providers[t.id]=o,(null==(e=t.panelItems)?void 0:e.length)&&!dt(t)&&await this.initPanelItemProviders(t.panelItems),(null==(n=t.panelTabPages)?void 0:n.length)&&await this.initPanelItemProviders(t.panelTabPages))})))}initContainerData(){const{dataSourceType:t,dataName:e}=this.model;switch(t){case"DEACTION":case"DEDATASET":this.setDataByDeMethod();break;case"APPGLOBALPARAM":this.setDataByAppGlobalParam();break;case"DELOGIC":this.setDataByDeLogic();break;case"TOPVIEWSESSIONPARAM":if(!e)throw new M(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new M(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.view,e);break;default:throw new k(this.model,"数据源类型".concat(t,"暂未支持"))}}childrenStateNotify(t){this.dataItems.forEach((e=>{e.panelStateNotify(t)}))}async setData(t){const e=ut(this.model),n=t.map((t=>new ht(e,t)));this.dataItems=n.map((t=>new Ne(this.model,this.panel,this,t))),this.dataItems.length&&await Promise.all(this.dataItems.map((t=>t.init()))),this.state.items=n,this.childrenStateNotify(mt.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new M(this.model,"没有配置实体逻辑");if(!t)throw new M(this.model,"没有配置实体");const n=await ft(e,t,this.panel.context,[],this.panel.params);if(!n)throw new B("实体逻辑".concat(e,"没有返回值"));this.setData(n)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error("全局变量里没有".concat(t,"属性"))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new M(this.model,"没有配置实体行为");if(!e)throw new M(this.model,"没有配置实体");const n=ibiz.hub.getApp(this.panel.context.srfappid),o=await n.deService.exec(e,t,this.panel.context,[],this.panel.params);o.ok&&o.data&&this.setData(o.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error("绑定视图的会话不存在".concat(e));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error("视图state里没有".concat(e,"属性"))};n(),t.evt.on("onDataChange",(()=>{n()}))}setDataValue(t,e){throw new Error("Method not implemented.")}destroy(){super.destroy(),this.dataItems.forEach((t=>{t.destroy()}))}}t("MultiDataContainerController",Ae);const xe=b({name:"IBizMultiDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:Ae,required:!0}},setup(t){const e=Lt("multi-data-container"),{id:n}=t.modelData;i((()=>t.controller.state.items),(()=>{t.controller.dataItems.forEach((t=>{t.state=m(t.state);Object.keys(t.panelItems).forEach((e=>{const n=t.panelItems[e];n.state=m(n.state)}))}))}),{immediate:!0});const o=h("renderPanelItem"),a=I((()=>[e.b(),e.m(n),...t.controller.containerClass]));return{ns:e,classArr:a,renderPanelItem:o}},render(){let t;return t=this.$slots.default?this.$slots.default():this.controller.state.items.map(((t,e)=>{const n=this.controller.dataItems[e];return P(w("iBizRow"),{class:this.ns.b("content"),layout:this.modelData.layout},{default:()=>{var t;return[null==(t=this.modelData.panelItems)?void 0:t.map((t=>{let e;const o=n.panelItems[t.id];return P(w("iBizCol"),{layoutPos:t.layoutPos,state:o.state},"function"==typeof(a=e=this.renderPanelItem(t,{providers:this.controller.providers,panelItems:n.panelItems}))||"[object Object]"===Object.prototype.toString.call(a)&&!N(a)?e:{default:()=>[e]});var a}))]}})})),P("div",{class:this.classArr},[t])}});class Se{constructor(){this.component="IBizMultiDataContainer"}async createController(t,e,n){const o=new Ae(t,e,n);return await o.init(),o}}t("IBizMultiDataContainer",Ut(xe,(function(t){t.component(xe.name,xe),at("CONTAINER_CONTAINER_MULTIDATA",(()=>new Se))})));class Re extends nt{constructor(){super(...arguments),this.data={}}}t("SingleDataContainerState",Re);class ze extends ot{constructor(){super(...arguments),this.isDataContainer=!0,this.panelItems={},this.providers={}}get data(){return this.state.data}createState(){var t;return new Re(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemControllers(),this.initContainerData()}async initPanelItemControllers(t=this.model.panelItems,e=this.panel,n=this){t&&await Promise.all(t.map((async t=>{var o,a;const s=await pt(t);if(!s)return;this.providers[t.id]=s;const r=await s.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!dt(t)&&await this.initPanelItemControllers(t.panelItems,e,r),(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initPanelItemControllers(t.panelTabPages,e,r)})))}initContainerData(){const{dataSourceType:t,dataName:e}=this.model;switch(t){case"DEACTION":case"DEDATASET":this.setDataByDeMethod();break;case"APPGLOBALPARAM":this.setDataByAppGlobalParam();break;case"DELOGIC":this.setDataByDeLogic();break;case"TOPVIEWSESSIONPARAM":if(!e)throw new M(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new M(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.view,e);break;default:throw new k(this.model,"数据源类型".concat(t,"暂未支持"))}}childrenStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setData(t){var e,n;const o=ut(this.model),a=o.map((t=>t.id)),s=new ht(o,t);s._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])})),null==(n=(e=this.data).destroy)||n.call(e),this.state.data=s,this.childrenStateNotify(mt.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new M(this.model,"没有配置实体逻辑");if(!t)throw new M(this.model,"没有配置实体");const n=await ft(e,t,this.panel.context,[],this.panel.params);if(!n)throw new B("实体逻辑".concat(e,"没有返回值"));this.setData(n)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error("全局变量里没有".concat(t,"属性"))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new M(this.model,"没有配置实体行为");if(!e)throw new M(this.model,"没有配置实体");const n=ibiz.hub.getApp(this.panel.context.srfappid),o=await n.deService.exec(e,t,this.panel.context,[],this.panel.params);o.ok&&o.data&&this.setData(o.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error("绑定视图的会话不存在".concat(e));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error("视图state里没有".concat(e,"属性"))};n(),t.evt.on("onDataChange",(()=>{n()}))}childDataChangeNotify(t){Object.values(this.panelItems).forEach((e=>{e.dataChangeNotify(t)}))}async setDataValue(t,e){Object.prototype.hasOwnProperty.call(this.state.data,t)&&this.state.data[t]===e||(this.state.data[t]=e)}destroy(){var t,e;super.destroy(),null==(e=(t=this.data).destroy)||e.call(t),Object.values(this.panelItems).forEach((t=>{t.destroy()}))}}t("SingleDataContainerController",ze);const Te=b({name:"IBizSingleDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:ze,required:!0}},setup(t){const e=Lt("single-data-container"),{id:n}=t.modelData;Object.keys(t.controller.panelItems).forEach((e=>{const n=t.controller.panelItems[e];n.state=m(n.state)}));const o=h("renderPanelItem"),a=I((()=>[e.b(),e.m(n),...t.controller.containerClass]));return{ns:e,classArr:a,renderPanelItem:o}},render(){let t;return t=this.$slots.default?this.$slots.default():P(w("iBizRow"),{class:this.ns.b("content"),layout:this.modelData.layout},{default:()=>{var t;return[null==(t=this.modelData.panelItems)?void 0:t.map((t=>{let e;const n=this.controller.panelItems[t.id];return P(w("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=this.renderPanelItem(t,{providers:this.controller.providers,panelItems:this.controller.panelItems}))||"[object Object]"===Object.prototype.toString.call(o)&&!N(o)?e:{default:()=>[e]});var o}))]}}),P("div",{class:this.classArr},[t])}});class Be{constructor(){this.component="IBizSingleDataContainer"}async createController(t,e,n){const o=new ze(t,e,n);return await o.init(),o}}t("IBizSingleDataContainer",Ut(Te,(function(t){t.component(Te.name,Te),at("CONTAINER_CONTAINER_SINGLEDATA",(()=>new Be))})));class Ve extends nt{}t("GridContainerState",Ve);class je extends ot{createState(){var t;return new Ve(null==(t=this.parent)?void 0:t.state)}}function Le(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}t("GridContainerController",je);const ke=b({name:"IBizGridContainer",props:{modelData:{type:Object,required:!0},controller:{type:je,required:!0}},setup(t){const e=Lt("grid-container"),{id:n}=t.modelData,o=I((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=I((()=>({...t.modelData.layout,layout:"TABLE_12COL"}))),s=v(void 0),r=v(12);return{ns:e,classArr:o,layoutModel:a,convertLayoutPos:(t,e)=>{const n={...t,layout:"TABLE_12COL",colXS:t.grow||e,colSM:t.grow||e,colMD:t.grow||e,colLG:t.grow||e};return delete n.grow,n},adaptGrow:r,adaptCols:s}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[];if(void 0===this.adaptCols){let t=0,e=0;o.forEach((n=>{const o=n.props;o&&o.modelData&&o.modelData.layoutPos&&("number"==typeof o.modelData.layoutPos.grow?t+=o.modelData.layoutPos.grow:void 0===o.modelData.layoutPos.grow&&(e+=1))}));let n=12;e>0&&(n=(12-t)/e),this.adaptCols=e,this.adaptGrow=n}return P(w("iBizRow"),{class:this.classArr,layout:this.layoutModel},Le(n=o.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:this.convertLayoutPos(e.modelData.layoutPos,this.adaptGrow),state:e.controller.state},Le(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]})}});class Me{constructor(){this.component="IBizGridContainer"}async createController(t,e,n){const o=new je(t,e,n);return await o.init(),o}}t("IBizGridContainer",Ut(ke,(function(t){t.component(ke.name,ke),at("CONTAINER_CONTAINER_GRID",(()=>new Me))})));class _e extends nt{}t("PanelContainerImageState",_e);class Ge extends ot{createState(){var t;return new _e(null==(t=this.parent)?void 0:t.state)}}function We(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}t("PanelContainerImageController",Ge);const qe=b({name:"IBizPanelContainerImage",props:{modelData:{type:Object,required:!0},controller:{type:Ge,required:!0}},setup(t){const e=Lt("panel-container-image"),{id:n}=t.modelData,o=I((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=I((()=>{const e=t.controller.model.sysImage,n={};let o="";return(null==e?void 0:e.rawContent)?o=j(e.rawContent)?"url(data:image/svg+xml;base64,".concat(btoa(e.rawContent),")"):"url(".concat(e.rawContent,")"):(null==e?void 0:e.imagePath)&&(o="url(".concat(e.imagePath,")")),o&&Object.assign(n,{backgroundImage:o}),n}));return{ns:e,classArr:o,backgroundStyle:a}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],a=P(w("iBizRow"),{slot:"content",layout:this.modelData.layout},We(n=o.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},We(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});return P("div",{class:this.classArr,onClick:()=>{this.controller.onClick()},style:this.backgroundStyle},[this.controller.model.cssStyle?P("style",{type:"text/css"},[this.controller.model.cssStyle]):null,a])}});class $e{constructor(){this.component="IBizPanelContainerImage"}async createController(t,e,n){const o=new Ge(t,e,n);return await o.init(),o}}t("IBizPanelContainerImage",Ut(qe,(function(t){t.component(qe.name,qe),at("CONTAINER_CONTAINER_IMAGE",(()=>new $e))})));class Ue extends nt{}t("PanelContainerGroupState",Ue);class Fe extends ot{createState(){var t;return new Ue(null==(t=this.parent)?void 0:t.state)}get disableClose(){const{titleBarCloseMode:t}=this.model;return 0===t||void 0===t}get defaultExpansion(){const{titleBarCloseMode:t}=this.model;return this.disableClose||1===t}}t("PanelContainerGroupController",Fe);class Ke{constructor(){this.component="IBizPanelContainerGroup"}async createController(t,e,n){const o=new Fe(t,e,n);return await o.init(),o}}function He(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}const Xe=b({name:"IBizPanelContainerGroup",props:{modelData:{type:Object,required:!0},controller:{type:Fe,required:!0}},setup(t){const e=Lt("panel-container-group"),n=v(!t.controller.defaultExpansion);return{ns:e,captionText:I((()=>{const{captionItemName:e,caption:n,capLanguageRes:o}=t.modelData;if(e)return t.controller.data[e];let a=n;return o&&(a=ibiz.i18n.t(o.lanResTag,n)),a})),changeCollapse:()=>{t.controller.disableClose||(n.value=!n.value)},isCollapse:n}},render(){var t,e;let n;const o=[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass,this.ns.is("hidden",!this.controller.state.visible)];!0===this.modelData.showCaption&&(o.push(this.ns.m("show-header")),o.push(this.ns.b("collapse")),o.push(this.ns.is("collapse",this.isCollapse)),this.controller.disableClose&&o.push(this.ns.bm("collapse","disable-close")));const a=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],s=P(w("iBizRow"),{slot:"content",layout:this.modelData.layout},He(n=a.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},He(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});let r=null;return this.modelData.showCaption&&(r=P("div",{class:[this.ns.b("header")],onClick:this.changeCollapse},[P("div",{class:[this.ns.be("header","left")]},[P("div",{class:[this.ns.e("caption"),...this.controller.labelClass]},[this.captionText])]),P("div",{class:[this.ns.be("header","right")]},[void 0!==this.modelData.titleBarCloseMode&&0!==this.modelData.titleBarCloseMode&&(this.isCollapse?P("ion-icon",{name:"caret-forward-sharp"},null):P("ion-icon",{name:"caret-down-sharp"},null))])])),P("div",{class:o},[r,P("div",{class:[this.ns.b("content")]},[s])])}});t("IBizPanelContainerGroup",Ut(Xe,(function(t){t.component(Xe.name,Xe),at("CONTAINER_CONTAINER_GROUP",(()=>new Ke))})));function Qe(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!N(t)}const Je=b({name:"IBizPanelTabPage",props:{modelData:{type:Object,required:!0},controller:{type:ot,required:!0}},setup(t){const e=Lt("panel-tab-page"),n=I((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:n}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[];return P(w("iBizRow"),{class:[this.ns.b(),this.ns.m(this.modelData.codeName),this.classArr],layout:this.modelData.layout},Qe(n=o.map((t=>{const e=t.props;if(!e||!e.controller)return t;const n=e.controller;return P(w("iBizCol"),{layoutPos:n.model.layoutPos,state:n.state},Qe(t)?t:{default:()=>[t]})})))?n:{default:()=>[n]})}});class Ye{constructor(){this.component="IBizPanelTabPage"}async createController(t,e,n){const o=new ot(t,e,n);return await o.init(),o}}t("IBizPanelTabPage",Ut(Je,(function(t){t.component(Je.name,Je),at("TABPAGE",(()=>new Ye))})));class Ze extends ot{getPanelItemCustomHtml(t,e){if(0===t.length)return;const n=t[0];return n.layoutPanelModel?gt.execScriptFn({data:e||{}},n.layoutPanelModel,{singleRowReturn:!0,isAsync:!1}):void 0}}const tn=b({name:"IBizPanelItemRender",props:{modelData:{type:Object,required:!0},controller:{type:Ze,required:!0}},setup(t){var e;const n=Lt("panel-item-render"),o=Lt("panel-".concat(null==(e=t.modelData.itemType)?void 0:e.toLowerCase())),{id:a}=t.modelData,s=I((()=>[n.b(),n.m(a),o.b(),n.is("hidden",!t.controller.state.visible)])),r=I((()=>t.controller.getPanelItemCustomHtml(t.modelData.controlRenders,t.controller.data)));return{ns:n,classArr:s,htmlCode:r}},render(){return P("div",{class:this.classArr,innerHTML:this.htmlCode},null)}});class en{constructor(){this.component="IBizPanelItemRender"}async createController(t,e,n){const o=new Ze(t,e,n);return await o.init(),o}}t("IBizPanelItemRender",Ut(tn,(function(t){t.component(tn.name,tn),at("PREDEFINE_RENDER",(()=>new en))}))),t("AppRedirectView",b({setup(){var t;const e=L.create((null==(t=ibiz.appData)?void 0:t.context)||{});O((()=>{e.destroy()}));const{href:n}=window.location;A((()=>ibiz.util.hiddenAppLoading())),async function(){await vt(e,n)}()},render:()=>P("div",null,[x("重定向跳转中")])}));class nn{constructor(){this.component="IBizView"}}const on=b({name:"IBizView",props:{context:Object,params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},modal:{type:Object},state:{type:Object},provider:{type:Object}},setup(){const t=Lt("view"),e=Qt(((...t)=>new Y(...t))),n=yt(e.model),{viewType:o,sysCss:a,codeName:s}=e.model,r=o.toLowerCase(),i=null==a?void 0:a.cssName,l=I((()=>[t.b(),t.b(r),t.m(s),i,e.state.viewMessages.TOP?"has-top-message":"",e.state.viewMessages.BOTTOM?"has-bottom-message":""]));return{c:e,controls:n,viewClassNames:l,onLayoutPanelCreated:t=>{e.setLayoutPanel(t)},renderViewMessage:n=>{if(e.state.isCreated){const o=e.state.viewMessages[n];if(null==o?void 0:o.length)return P(w("view-message"),{class:[t.e("".concat(n.toLowerCase(),"-message"))],messages:o},null)}return null}}},render(){var t;let e=null;if(this.c.state.isCreated){const n={...this.$slots};if((null==(t=this.controls)?void 0:t.length)&&this.controls.forEach((t=>{const e=t.name||t.id,o={context:this.c.context,params:this.c.params};this.c.slotProps[e]&&Object.assign(o,this.c.slotProps[e]);const a=n[e];if(a)return void(n[e]=()=>a({modelData:t,...o}));const s=this.c.providers[e];s&&(n[e]=()=>{const e=w(s.component);return y(e,{modelData:t,...o,provider:s})})})),0===this.c.engines.length)e=P("span",{style:"color:red;"},[x("视图类型"),this.modelData.viewType,x("暂未支持")]);else{const t=this.c.model.viewLayoutPanel,o=this.c.providers[t.name];e=y(w(o.component),{modelData:t,context:this.c.context,params:this.c.params,provider:o,container:this.c,onControllerAppear:this.onLayoutPanelCreated},n)}}return D(P("div",{class:this.viewClassNames,id:this.c.id},[this.renderViewMessage("TOP"),e,this.renderViewMessage("BOTTOM")]),[[E("loading"),this.c.state.isLoading]])}});t("IBizView",Ut(on,(function(t){t.component(on.name,on),wt("DEFAULT",(()=>new nn))}))),t("TodoRedirect",b({setup(){const t=U(),{href:e}=window.location,n=e.lastIndexOf("?"),o=decodeURIComponent(e.substring(n+1,e.length));if(!o)throw new Error("重定向参数不足无法跳转");const a=K.parse(o,{delimiter:";"}),{apptype:s,todotype:r,todoid:i}=a,l={srfapptype:"pc",srfapp:""};s||(l.todourltype="RouterUrl"),async function(){let e=(await ibiz.net.post("/systodos/".concat(i,"/getlinkurl"),l)).data.linkurl;s?window.location.href=e:(0!==e.indexOf("/")&&(e="/".concat(e)),e+=";srfwf=".concat(r),t.push("/index".concat(e)))}()},render:()=>P("div",null,[x("待办列表重定向")])}));class an{constructor(){this.component="IBizPortalView"}}const sn=b({name:"IBizPortalView",props:{context:Object,params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},modal:{type:Object},state:{type:Object}},setup(){var t;const e=Lt("view"),n=Qt(((...t)=>new Y(...t))),o=(null==(t=n.model.viewLayoutPanel)?void 0:t.controls)||n.model.controls,{viewType:a,sysCss:s,codeName:r}=n.model,i=a.toLowerCase(),l=null==s?void 0:s.cssName,c=[e.b(),e.b(i),e.m(r),l];return{c:n,ns:e,controls:o,viewClassNames:c}},render(){var t;let e=null;if(this.c.state.isCreated){const n={...this.$slots};(null==(t=this.controls)?void 0:t.length)&&this.controls.forEach((t=>{const e=t.name||t.id,o={context:this.c.context,params:this.c.params};this.c.slotProps[e]&&Object.assign(o,this.c.slotProps[e]);const a=n[e];if(a)return void(n[e]=()=>a({modelData:t,...o}));const s=this.c.providers[e];s&&(n[e]=()=>{const e=w(s.component);return y(e,{modelData:t,...o,provider:s})})})),n.dashboard&&(e=n.dashboard())}return P("div",{class:this.viewClassNames},[e])}}),rn=(t("IBizPortalView",Ut(sn,(function(t){t.component(sn.name,sn),wt(H.APP_PORTAL_VIEW,(()=>new an)),wt(H.DE_PORTAL_VIEW,(()=>new an)),wt(H.DE_PORTAL_VIEW9,(()=>new an))}))),b({name:"IBizDeRedirectView",props:{context:{type:Object,required:!0},params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0}},setup(t){const e=Qt(((...t)=>new Y(...t))),n=v(),o=v(),a=v();return e.evt.on("onCreated",(()=>{Ct(p(t.modelData),p(e.context),p(e.params)).then((async t=>{if("view"!==t.type)throw new B("嵌入重定向视图不支持url跳转");n.value=t.viewId,o.value=t.context,a.value=t.params}))})),{c:e,toViewId:n,toViewContext:o,toViewParams:a}},render(){return this.toViewId?y(w("IBizViewShell"),{context:this.toViewContext,params:this.toViewParams,viewId:this.toViewId,...this.$attrs},this.$slots):D(P("div",{style:"width: 100%; height: 100%;"},null),[[E("loading"),!this.toViewId]])}}));class ln{constructor(){this.component="IBizDeRedirectView"}}t("IBizDeRedirectView",Ut(rn,(function(t){t.component(rn.name,rn);const e=new ln;wt(H.DE_REDIRECT_VIEW,(()=>e))})));function cn(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=gt.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}const un=b({name:"IBizViewLayoutPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:Object},setup(t,{slots:e}){const n=Vt(((...e)=>new bt(...e,t.container))),o=Lt("control-".concat(n.model.controlType.toLowerCase()));i((()=>t.data),(t=>{t&&(n.setInputData(t),n.load())}),{immediate:!0}),n.evt.on("onCreated",(()=>{Object.keys(n.panelItems).forEach((t=>{const e=n.panelItems[t];e.state=m(e.state)}))}));const a=(t,o)=>{var s,r;if(t.hidden)return null;const{providers:i,panelItems:l}=o||n,c=i[t.id];if(!c)return P("div",null,[x("暂未支持的面板项: "),t.id,x(" - "),t.itemType]);const u=w(c.component);let d;"CTRLPOS"===t.itemType&&e[t.id]?d=()=>e[t.id]():"TABPANEL"===t.itemType&&(null==(s=t.panelTabPages)?void 0:s.length)?d=()=>t.panelTabPages.map((t=>a(t,o))):dt(t)?d=void 0:(null==(r=t.panelItems)?void 0:r.length)&&(d=()=>t.panelItems.map((t=>a(t,o))));let p="";t.cssStyle&&(p=t.cssStyle);const h=l[t.id];return y(u,{modelData:t,controller:h,key:t.id,style:p,...cn(t,h)},d)};return C("renderPanelItem",a),{c:n,ns:o,renderPanelItem:a}},render(){const{state:t,model:e}=this.c;return P(w("iBizControlBase"),{controller:this.c},{default:()=>[P(w("iBizRow"),{class:this.ns.b("content"),layout:{layout:"FLEX"}},{default:()=>{var n;return[t.isCreated&&(this.$slots.default?this.$slots.default({panelItems:this.c.panelItems}):null==(n=e.rootPanelItems)?void 0:n.map((t=>{let e;const n=this.c.panelItems[t.id];return t.layoutPos.layout="FLEX",P(w("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=this.renderPanelItem(t))||"[object Object]"===Object.prototype.toString.call(o)&&!N(o)?e:{default:()=>[e]});var o})))]}})]})}});class dn{constructor(){this.component="IBizViewLayoutPanelControl"}}t("IBizViewLayoutPanelControl",Ut(un,(function(t){t.component(un.name,un),It(Pt.VIEW_LAYOUT_PANEL,(()=>new dn))})));function pn(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=gt.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}function hn(t,e,n){var o,a;if(t.hidden)return;const{providers:s,panelItems:r}=e,i=s[t.id];if(!i)return P("div",null,[x("暂未支持的面板项: "),t.id,x(" - "),t.itemType]);const l=w(i.component);let c;"CTRLPOS"===t.itemType&&n.$slots[t.id]?c=()=>n.$slots[t.id]():"TABPANEL"===t.itemType&&(null==(o=t.panelTabPages)?void 0:o.length)?c=()=>t.panelTabPages.map((t=>hn(t,e,n))):(null==(a=t.panelItems)?void 0:a.length)&&(c=()=>t.panelItems.map((t=>hn(t,e,n))));let u="";t.cssStyle&&(u=t.cssStyle);const d=r[t.id];return y(l,{modelData:t,controller:d,key:t.id,style:u,...pn(t,d)},c)}const mn=b({name:"IBizPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:Object,loadDefault:{type:Boolean,default:!0}},setup(t){const e=Vt(((...e)=>new Dt(...e,t.container))),n=Lt("control-".concat(e.model.controlType.toLowerCase()));return i((()=>t.data),(t=>{t&&(e.setInputData(t),e.load())}),{immediate:!0}),e.evt.on("onCreated",(()=>{Object.keys(e.panelItems).forEach((t=>{const n=e.panelItems[t];n.state=m(n.state)}))})),{c:e,ns:n}},render(){const{state:t,model:e}=this.c;return P(w("iBizControlBase"),{controller:this.c},{default:()=>[P(w("iBizRow"),{class:this.ns.b("content"),layout:{layout:"FLEX"}},{default:()=>{var n;return[t.isCreated&&(this.$slots.default?this.$slots.default({panelItems:this.c.panelItems}):null==(n=e.rootPanelItems)?void 0:n.map((t=>{let e;const n=this.c.panelItems[t.id];return t.layoutPos.layout="FLEX",P(w("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=hn(t,this.c,this))||"[object Object]"===Object.prototype.toString.call(o)&&!N(o)?e:{default:()=>[e]});var o})))]}})]})}});class fn{constructor(){this.component="IBizPanelControl"}}t("IBizPanelControl",Ut(mn,(function(t){t.component(mn.name,mn),It(Pt.PANEL,(()=>new fn))})));function gn(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function vn(t){if("string"!=typeof t)throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}function yn(t,e){for(var n,o="",a=0,s=-1,r=0,i=0;i<=t.length;++i){if(i<t.length)n=t.charCodeAt(i);else{if(47===n)break;n=47}if(47===n){if(s===i-1||1===r);else if(s!==i-1&&2===r){if(o.length<2||2!==a||46!==o.charCodeAt(o.length-1)||46!==o.charCodeAt(o.length-2))if(o.length>2){var l=o.lastIndexOf("/");if(l!==o.length-1){-1===l?(o="",a=0):a=(o=o.slice(0,l)).length-1-o.lastIndexOf("/"),s=i,r=0;continue}}else if(2===o.length||1===o.length){o="",a=0,s=i,r=0;continue}e&&(o.length>0?o+="/..":o="..",a=2)}else o.length>0?o+="/"+t.slice(s+1,i):o=t.slice(s+1,i),a=i-s-1;s=i,r=0}else 46===n&&-1!==r?++r:r=-1}return o}var wn={resolve:function(){for(var t,e="",n=!1,o=arguments.length-1;o>=-1&&!n;o--){var a;o>=0?a=arguments[o]:(void 0===t&&(t=process.cwd()),a=t),vn(a),0!==a.length&&(e=a+"/"+e,n=47===a.charCodeAt(0))}return e=yn(e,!n),n?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(t){if(vn(t),0===t.length)return".";var e=47===t.charCodeAt(0),n=47===t.charCodeAt(t.length-1);return 0!==(t=yn(t,!e)).length||e||(t="."),t.length>0&&n&&(t+="/"),e?"/"+t:t},isAbsolute:function(t){return vn(t),t.length>0&&47===t.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var t,e=0;e<arguments.length;++e){var n=arguments[e];vn(n),n.length>0&&(void 0===t?t=n:t+="/"+n)}return void 0===t?".":wn.normalize(t)},relative:function(t,e){if(vn(t),vn(e),t===e)return"";if((t=wn.resolve(t))===(e=wn.resolve(e)))return"";for(var n=1;n<t.length&&47===t.charCodeAt(n);++n);for(var o=t.length,a=o-n,s=1;s<e.length&&47===e.charCodeAt(s);++s);for(var r=e.length-s,i=a<r?a:r,l=-1,c=0;c<=i;++c){if(c===i){if(r>i){if(47===e.charCodeAt(s+c))return e.slice(s+c+1);if(0===c)return e.slice(s+c)}else a>i&&(47===t.charCodeAt(n+c)?l=c:0===c&&(l=0));break}var u=t.charCodeAt(n+c);if(u!==e.charCodeAt(s+c))break;47===u&&(l=c)}var d="";for(c=n+l+1;c<=o;++c)c!==o&&47!==t.charCodeAt(c)||(0===d.length?d+="..":d+="/..");return d.length>0?d+e.slice(s+l):(s+=l,47===e.charCodeAt(s)&&++s,e.slice(s))},_makeLong:function(t){return t},dirname:function(t){if(vn(t),0===t.length)return".";for(var e=t.charCodeAt(0),n=47===e,o=-1,a=!0,s=t.length-1;s>=1;--s)if(47===(e=t.charCodeAt(s))){if(!a){o=s;break}}else a=!1;return-1===o?n?"/":".":n&&1===o?"//":t.slice(0,o)},basename:function(t,e){if(void 0!==e&&"string"!=typeof e)throw new TypeError('"ext" argument must be a string');vn(t);var n,o=0,a=-1,s=!0;if(void 0!==e&&e.length>0&&e.length<=t.length){if(e.length===t.length&&e===t)return"";var r=e.length-1,i=-1;for(n=t.length-1;n>=0;--n){var l=t.charCodeAt(n);if(47===l){if(!s){o=n+1;break}}else-1===i&&(s=!1,i=n+1),r>=0&&(l===e.charCodeAt(r)?-1==--r&&(a=n):(r=-1,a=i))}return o===a?a=i:-1===a&&(a=t.length),t.slice(o,a)}for(n=t.length-1;n>=0;--n)if(47===t.charCodeAt(n)){if(!s){o=n+1;break}}else-1===a&&(s=!1,a=n+1);return-1===a?"":t.slice(o,a)},extname:function(t){vn(t);for(var e=-1,n=0,o=-1,a=!0,s=0,r=t.length-1;r>=0;--r){var i=t.charCodeAt(r);if(47!==i)-1===o&&(a=!1,o=r+1),46===i?-1===e?e=r:1!==s&&(s=1):-1!==e&&(s=-1);else if(!a){n=r+1;break}}return-1===e||-1===o||0===s||1===s&&e===o-1&&e===n+1?"":t.slice(e,o)},format:function(t){if(null===t||"object"!=typeof t)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof t);return function(t,e){var n=e.dir||e.root,o=e.base||(e.name||"")+(e.ext||"");return n?n===e.root?n+o:n+t+o:o}("/",t)},parse:function(t){vn(t);var e={root:"",dir:"",base:"",ext:"",name:""};if(0===t.length)return e;var n,o=t.charCodeAt(0),a=47===o;a?(e.root="/",n=1):n=0;for(var s=-1,r=0,i=-1,l=!0,c=t.length-1,u=0;c>=n;--c)if(47!==(o=t.charCodeAt(c)))-1===i&&(l=!1,i=c+1),46===o?-1===s?s=c:1!==u&&(u=1):-1!==s&&(u=-1);else if(!l){r=c+1;break}return-1===s||-1===i||0===u||1===u&&s===i-1&&s===r+1?-1!==i&&(e.base=e.name=0===r&&a?t.slice(1,i):t.slice(r,i)):(0===r&&a?(e.name=t.slice(1,s),e.base=t.slice(1,i)):(e.name=t.slice(r,s),e.base=t.slice(r,i)),e.ext=t.slice(s,i)),r>0?e.dir=t.slice(0,r-1):a&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};wn.posix=wn;var Cn=wn,bn=gn(Cn);t("PluginFactory",class{constructor(){this.urlReg=/^http[s]?:\/\/[^\s]*/,this.cache=new Map,this.pluginCache=new Map,this.pluginCodes=[],this.predefinedPlugins=new Map,this.ignoreRules=[],this.loadQueue=new Map}isIgnore(t){return this.ignoreRules.some((e=>"string"==typeof e?t===e:e.test(t)))}setDevIgnore(t){this.ignoreRules.push(t)}registerPredefinedPlugin(t){this.predefinedPlugins.set(t.name,t)}register(t){this.pluginCodes.forEach((e=>{t.use(e)}))}async loadPredefinedPlugin(t){if(this.predefinedPlugins.has(t)){const e=this.predefinedPlugins.get(t);e&&await this.loadPluginRef(e.name,e.path)}}setPluginCode(t){this.pluginCodes.push(t),At.useComponent.callSync(null,t)}async loadPlugin(t){if(!0===t.runtimeObject){const e=t;if(e){const t=e.rtobjectName,n=e.rtobjectRepo;if(this.isIgnore(n))return!0;if(this.pluginCache.has(t))return!0;if(this.loadQueue.has(n)){const t=await this.loadQueue.get(n);try{return await t}catch(t){return!1}}try{const t=this.loadPluginRef(e.rtobjectName,e.rtobjectRepo);this.loadQueue.set(n,t);return await t}catch(t){throw new M(e,"配置加载失败")}finally{this.loadQueue.delete(n)}}}return!1}async loadPluginRef(t,e){if(this.isIgnore(e))return!0;if(this.pluginCache.has(t))return!0;let n=null;{const t=e,o=this.urlReg.test(t)?"".concat(t,"/package.json"):"".concat(ibiz.env.pluginBaseUrl,"/").concat(Cn.join(t,"package.json")),a=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:o});if(200!==a.status)throw new Error("配置加载失败");n=a.data}const o=new Et(t,e,n);if(o){await this.loadPluginExternal(o.config);try{return await this.loadScript(o),this.pluginCache.set(t,o),!0}catch(t){ibiz.log.error(t)}}return!1}async loadScript(t){const e=t.repo,{name:n,system:o,styles:a=[]}=t.config;let s="";if(s=Cn.join(e,o),s){if(this.cache.has(s))return;let t=null;const o=this.parseUrl(s),r=("string"==typeof a?[a]:a).map((t=>this.parseUrl(bn.join(e,t))));if(System.addImportMap({imports:{[n]:o},styles:{[n]:r}}),t=await System.import(n),!t)throw new B("远程插件加载失败, 未找到文件或文件内容格式不正确");if(!t.default)throw new B("远程插件加载失败, 远程插件未找到[default]默认导出");this.setPluginCode(t.default),this.cache.set(s,!0)}}parseUrl(t,e=ibiz.env.pluginBaseUrl){if(this.urlReg.test(t))return t;let n="";n=this.urlReg.test(e)?t.startsWith("/")?e+t:"".concat(e,"/").concat(t):"".concat(Cn.join(e,t));const{origin:o,pathname:a}=window.location;return a.endsWith("/")&&n.startsWith("/")&&(n=n.substring(1)),!1===this.urlReg.test(n)&&(n="".concat(o).concat(a).concat(n)),n}async loadPluginExternal(t){if(!t["systemjs-importmap"])return;const e=this.handleSystemImportMap(t["systemjs-importmap"]);if(e.packages){const t=e.packages;for(const e in t){const n=t[e],o=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:n});if(200!==o.status)throw new Error("配置加载失败");await this.loadPluginExternal(o.data)}}System.addImportMap(e)}handleSystemImportMap(t){if(t){if(t.packages){const e=t.packages;for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=e[n];e[n]=this.parseUrl(o,t.baseUrl)}}if(t.imports){const e=t.imports;for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=e[n];e[n]=this.parseUrl(o,t.baseUrl)}}if(t.styles){const e=t.styles;for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=e[n];e[n]="string"==typeof o?this.parseUrl(o,t.baseUrl):o.map((e=>this.parseUrl(e,t.baseUrl)))}}return t}return null}});class In{constructor(t,e,n){this.required=!0,e&&(this.default=e),n&&(this.validator=n),this.type=t}}function Pn(){return{value:String,controller:new In(Object),data:new In(Object),disabled:{type:Boolean},readonly:{type:Boolean,default:!1},autoFocus:{type:Boolean,default:!1},overflowMode:{type:String},controlParams:{type:Object,required:!1}}}function Dn(){return{hasError:{type:Boolean}}}function En(){return{...Pn(),value:[String,Number]}}function Nn(){return{...Pn(),value:Number}}function On(){return{...Pn(),value:String}}function An(){return{...Pn(),value:[String,Number,Object,Array]}}function xn(){return{...Pn(),value:[String,Number]}}function Sn(){return{...Pn(),value:[String,Number]}}function Rn(){return{...Pn(),value:[String,Number]}}function zn(){return{...Pn(),value:[String,Array,Object,Number]}}function Tn(){return{...Pn(),value:[String,Number]}}function Bn(){return{...Pn(),value:[String,Number]}}function Vn(){return{...Pn(),value:[String,Number]}}function jn(){return{...Pn(),value:[String,Number]}}function Ln(){return{...Pn(),value:[String,Number]}}function kn(){return{...Pn(),value:[String,Number]}}function Mn(){return{...Pn(),value:[String,Number,Array]}}function _n(){return{...Pn(),value:[String,Number]}}function Gn(){return{...Pn(),value:[String,Number]}}function Wn(){return{...Pn(),value:[String,Number]}}function qn(){return{...Pn(),value:String}}function $n(){return{...Pn(),value:[String,Number]}}function Un(){return{...Pn(),value:String,language:{type:String},theme:{type:String}}}function Fn(){return{...Pn(),value:String}}function Kn(){return{...Pn(),data:{type:Object,required:!1},controller:{type:Object,required:!1},disabled:{type:Boolean,required:!1}}}function Hn(){return{...Pn(),value:[Array,Array]}}function Xn(){return{...Pn(),value:String}}function Qn(){return{...Pn(),value:String}}t("RequiredProp",In)}}}));
1
+ System.register(["qx-util","vue","@ibiz-template/core","ramda","vue-router","qs","@ibiz-template/runtime","pinia"],(function(t){"use strict";var e,n,o,a,r,s,i,l,c,u,d,p,h,m,f,v,g,y,w,C,b,I,P,D,E,O,N,A,x,S,R,T,z,B,j,V,L,k,M,_,G,W,q,$,U,F,K,H,X,Q,J,Y,Z,tt,et,nt,ot,at,rt,st,it,lt,ct,ut,dt,pt,ht,mt,ft,vt,gt,yt,wt,Ct,bt,It,Pt,Dt,Et,Ot,Nt,At,xt,St;return{setters:[function(t){e=t.SyncSeriesHook,n=t.isFunc,o=t.notNilEmpty,a=t.QXEvent,r=t.clearAll,s=t.createUUID},function(t){i=t.watch,l=t.onBeforeUnmount,c=t.createCommentVNode,u=t.getCurrentInstance,d=t.isReactive,p=t.toRaw,h=t.inject,m=t.reactive,f=t.onActivated,v=t.onDeactivated,g=t.ref,y=t.h,w=t.resolveComponent,C=t.provide,b=t.defineComponent,I=t.computed,P=t.createVNode,D=t.withDirectives,E=t.resolveDirective,O=t.isVNode,N=t.onUnmounted,A=t.onMounted,x=t.createTextVNode,S=t.Teleport,R=t.renderSlot},function(t){T=t.onClickOutside,z=t.NOOP,B=t.listenJSEvent,j=t.Namespace,V=t.RuntimeError,L=t.isBase64Image,k=t.isSvg,M=t.IBizContext,_=t.ModelError,G=t.RuntimeModelError},function(t){W=t.isNil,q=t.isNotNil,$=t.isEmpty,U=t.mergeLeft},function(t){F=t.useRoute,K=t.useRouter,H=t.RouterView},function(t){X=t.default},function(t){Q=t.ViewType,J=t.RouteConst,Y=t.getMatchResPath,Z=t.calcDeCodeNameById,tt=t.ViewController,et=t.getControlProvider,nt=t.calcDynaSysParams,ot=t.getViewProvider,at=t.PanelItemState,rt=t.PanelItemController,st=t.registerPanelItemProvider,it=t.Modal,lt=t.ViewMode,ct=t.OpenAppViewCommand,ut=t.getEditorProvider,dt=t.PanelItemEventName,pt=t.getAllPanelField,ht=t.isDataContainer,mt=t.getPanelItemProvider,ft=t.PanelData,vt=t.PanelNotifyState,gt=t.execDELogicById,yt=t.ScriptFactory,wt=t.toLocalOpenWFRedirectView,Ct=t.getControlsByView,bt=t.getCtrlTeleportTag,It=t.registerViewProvider,Pt=t.getDERedirectToView,Dt=t.ViewLayoutPanelController,Et=t.registerControlProvider,Ot=t.ControlType,Nt=t.PanelController,At=t.RemotePluginItem},function(t){xt=t.defineStore,St=t.createPinia}],execute:function(){t({calcResRoutePath:Ut,createOverlayView:Qt,generateRoutePath:async function(t,e,n,o){const a=Gt(e);let r=n.srfdefaulttoroutedepth||2;n.toRouteDepth?(r=n.toRouteDepth,n.toRouteDepth=void 0):ibiz.env.isMob&&(a.pathNodes[0]={viewName:"home"});if(a.pathNodes.splice(r-1,a.pathNodes.length-r+1),n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}e.fullPath.startsWith("/appredirectview")&&((null==o?void 0:o.srfindexname)?(a.pathNodes[0].viewName=o.srfindexname,delete o.srfindexname):a.pathNodes[0].viewName="index");if(a.pathNodes.push({viewName:t.codeName.toLowerCase(),context:qt(n),params:o}),2===r&&(await Ut(a,n,t.appDataEntityId,t.appId),$t.includes(t.viewType))){const e=Z(t.appDataEntityId);delete a.pathNodes[0].context[e]}return{path:Wt(a)}},generateRoutePathByModal:async function(t,e,n,o){const a=Gt(e),r=a.pathNodes.findIndex((t=>t.viewName===J.ROUTE_MODAL_TAG));-1!==r&&(a.pathNodes=a.pathNodes.slice(0,r));if(n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}return a.pathNodes.push({viewName:"".concat(J.ROUTE_MODAL_TAG,"/").concat(t.codeName.toLowerCase()),context:qt(n),params:o}),{path:Wt(a)}},getArrayProps:eo,getAutoCompleteProps:Jn,getCascaderProps:no,getCheckboxListProps:Ln,getCheckboxProps:kn,getCodeProps:Yn,getColorPickerProps:oo,getDataPickerProps:Mn,getDatePickerProps:_n,getDateRangeProps:Gn,getDrawerPlacement:function(t){return Jt[t]||"right"},getDropdownProps:Vn,getEditorEmits:function(){return{change:(t,e)=>!0,blur:t=>!0,focus:t=>!0,enter:t=>!0,infoTextChange:t=>!0}},getEditorProps:Sn,getGridArrayProps:function(){return{...eo(),...Rn()}},getGridAutoCompleteProps:function(){return{...Jn(),...Rn()}},getGridCascaderProps:function(){return{...no(),...Rn()}},getGridCheckboxListProps:function(){return{...Ln(),...Rn()}},getGridCheckboxProps:function(){return{...kn(),...Rn()}},getGridCodeProps:function(){return{...Yn(),...Rn()}},getGridColorPickerProps:function(){return{...oo(),...Rn()}},getGridDataPickerProps:function(){return{...Mn(),...Rn()}},getGridDatePickerProps:function(){return{..._n(),...Rn()}},getGridDateRangeProps:function(){return{...Gn(),...Rn()}},getGridDropdownProps:function(){return{...Vn(),...Rn()}},getGridEditorCommonProps:Rn,getGridEditorEmits:function(){return{change:(t,e)=>!0,rowSave:()=>!0}},getGridHtmlProps:function(){return{...Zn(),...Rn()}},getGridInputIpProps:function(){return{...Bn(),...Rn()}},getGridInputNumberProps:function(){return{...zn(),...Rn()}},getGridInputProps:function(){return{...Tn(),...Rn()}},getGridListBoxProps:function(){return{...Wn(),...Rn()}},getGridMarkDownProps:function(){return{...to(),...Rn()}},getGridNumberRangeProps:function(){return{...qn(),...Rn()}},getGridRadioProps:function(){return{...$n(),...Rn()}},getGridRateProps:function(){return{...Un(),...Rn()}},getGridRawProps:function(){return{...Fn(),...Rn()}},getGridSliderProps:function(){return{...Kn(),...Rn()}},getGridSpanProps:function(){return{...jn(),...Rn()}},getGridStepperProps:function(){return{...Hn(),...Rn()}},getGridSwitchProps:function(){return{...Xn(),...Rn()}},getGridUploadProps:function(){return{...Qn(),...Rn()}},getHtmlProps:Zn,getInputIpProps:Bn,getInputNumberProps:zn,getInputProps:Tn,getListBoxProps:Wn,getMarkDownProps:to,getNestedRoutePath:Ft,getNumberRangeProps:qn,getOrigin:Bt,getOwnRouteContext:qt,getRadioProps:$n,getRateProps:Un,getRawProps:Fn,getSliderProps:Kn,getSpanProps:jn,getStepperProps:Hn,getSwitchProps:Xn,getUploadProps:Qn,isEmptyVNode:function(t){if(!Array.isArray(t))return t===Vt;return 1===t.length&&t[0]===Vt},onRouteChange:function(t,e){const n=F();if(!n)throw new V("无法正确获取route,可能是依赖问题");i((()=>null==n?void 0:n.path),(()=>{const o=Ft(n,e);t({currentKey:o,fullPath:n.fullPath})}),{immediate:!0})},openViewDrawer:async function(t,e){const n=ibiz.overlay.createDrawer(Qt(t),void 0,e);await n.present();return await n.onWillDismiss()||{ok:!1}},openViewFloatWindow:async function(t,e){const n=ibiz.overlay.createFloatWindow(Qt(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewModal:async function(t,e){const n=ibiz.overlay.createModal(Qt(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewPopover:async function(t,e,n){const o=ibiz.overlay.createPopover(Qt(e),void 0,n);o.present(t.target);return await o.onWillDismiss()||{ok:!1}},parseRouteViewData:async function(t,e,n=!1){var a;const r=Gt(t,n);let s=r.pathNodes[e-1].viewName;if(!s)throw new V("第".concat(e,"级路由不存在视图标识"));s===J.ROUTE_MODAL_TAG&&(s=r.pathNodes[e].viewName);"index"===s&&(s=ibiz.hub.defaultAppIndexViewName);const i=await ibiz.hub.config.view.get(s);if(!i)throw new V("找不到视图".concat(s));const l={};(null==(a=ibiz.appData)?void 0:a.context)&&Object.assign(l,ibiz.appData.context);r.appContext&&Object.assign(l,r.appContext);if(1!==e)for(let t=0;t<e;t++){const e=r.pathNodes[t];o(e.context)&&Object.assign(l,e.context)}const{params:c,srfnav:u}=r.pathNodes[e-1];return{viewConfig:i,context:l,params:c,srfnav:u}},prepareControl:function(t){const e=_t("control"),{controlType:n,sysCss:o,codeName:a}=t.model,r=n.toLowerCase(),s=null==o?void 0:o.cssName,i=_t("control-".concat(r)),l=[e.b(),e.b(r),e.m(a)];s&&l.push(s);return{controlClass:l,ns:i}},renderString:function(t){if(W(t))return"";if("string"==typeof t)return t;if("object"==typeof t)return JSON.stringify(t);try{return t.toString()}catch(e){ibiz.log.error(t,"转换成字符串失败",e)}return""},route2routePath:Gt,routePath2string:Wt,useClickOutside:Tt,useControlController:kt,useController:function(t){t.force=jt()},useCtx:Lt,useEventListener:Mt,useFocusAndBlur:function(t,e){const n=g(),o=g(!1);let a;const r=()=>{o.value||ibiz.log.debug("没有聚焦,不触发失焦"),e(),a.stop(),o.value=!1};return Mt(n,"click",(e=>{o.value||(a=Tt(n,(()=>{r()})),o.value=!0,t())}),{capture:!0}),{componentRef:n,isFocus:o,doBlur:r,pause:()=>{a&&a.pause()},stop:()=>{a&&a.stop()}}},useForce:jt,useForceTogether:function(t,e){const n=e.force,o=jt();e.force=t=>{n(t),o()}},useMobCtx:function(){return h("ctx")},useNamespace:_t,useProps:zt,usePropsWatch:function(t,e,n){const o=zt();Object.prototype.hasOwnProperty.call(o,t)&&(i((()=>o[t]),((t,n)=>{e(Bt(t),Bt(n))}),n),e(Bt(o[t]),void 0))},useRouteKey:function(t,e,n){n||(n=g(""));n.value=t.value;const o=new Kt(e);return i(t,((t,e)=>{t!==e&&o.nextChange((()=>{n.value=t}))})),n},useRouterQuery:function(){const t=F(),{query:e}=t;return e},useViewController:Zt});class Rt{}function Tt(t,e,n={}){let o=z,a=z,r=z;const s=()=>{o(),o=z,a=z,r=z};return i(t,((t,i)=>{if(t!==i)if(W(t))s();else{const s=T((null==t?void 0:t.$el)||t,e,n);o=s.stop,a=s.pause,r=s.proceed}}),{immediate:!0}),l((()=>{o!==z&&s()})),{stop:()=>o(),pause:()=>a(),proceed:()=>r()}}function zt(){return u().proxy.$props}function Bt(t){return d(t)?p(t):t}function jt(){const t=u().proxy;return e=>{t.$forceUpdate(),e&&n(e)&&t.$nextTick((()=>{e()}))}}t("AppHooks",Rt),Rt.createApp=new e,Rt.useComponent=new e;const Vt=t("EmptyVNode",c("EmptyVNode"));function Lt(){return h("ctx")}function kt(t,e){const n=Lt(),o=zt();n.evt.emit("onForecast",o.modelData.name);const a=o.provider;let r;r=(null==a?void 0:a.createController)?a.createController(o.modelData,o.context,o.params,n):t(o.modelData,o.context,o.params,n),function(t,e){i((()=>({context:t.context,params:t.params})),((t,n)=>{if(t===n)return;const o={...t};t.context===n.context&&delete o.context,t.params===n.params&&delete o.params,e.updateContextParams(o),ibiz.log.debug("".concat(e.model.id,"的上下文或视图参数变更:"),t)}))}(o,r),function(t,e,n=[]){const o=["context","params","modelData",...n];i((()=>{const e={};return Object.keys(t).forEach((n=>{o.includes(n)||(e[n]=t[n])})),e}),((t,n)=>{const o={};Object.keys(t).forEach((e=>{t[e]!==(n||{})[e]&&(o[e]=t[e])})),ibiz.log.debug("部件 [".concat(e.model.name,"] state 变更"),o),Object.keys(o).forEach((t=>{void 0!==o[t]&&(e.state[t]=o[t])}))}),{immediate:!0})}(o,r,null==e?void 0:e.excludePropsKeys),r.state=m(r.state),f((()=>r.onActivated())),v((()=>r.onDeactivated())),r.force=jt();const s=u().proxy;return r.evt.onAll(((t,e)=>{s.$emit(t.slice(2),e)})),s.$emit("controllerAppear",r),r.created(),l((()=>r.destroyed())),r}function Mt(t,e,n,o={}){let a=z;return i(t,((t,r)=>{t!==r&&(W(t)?(a(),a=z):a=B((null==t?void 0:t.$el)||t,e,n,o))}),{immediate:!0}),l((()=>{a!==z&&a()})),()=>{a()}}function _t(t){return new j(t,ibiz.env.namespace)}function Gt(t,e=!1){const n=t.matched.length;let o=t.path;e&&(o=o.replace(new RegExp("/".concat(J.ROUTE_MODAL_TAG),"g"),""));const a=o.split("/"),r=[];for(let e=1;e<=n;e++){const n=a[2*e],o=t.params["params".concat(e)];let s,i,l;s=o&&o!==ibiz.env.routePlaceholder?X.parse(o,{strictNullHandling:!0,delimiter:";"}):void 0,s&&(1===e?(i=s,s=void 0):(s.srfnavctx&&(i=JSON.parse(decodeURIComponent(s.srfnavctx)),delete s.srfnavctx),s.srfnav&&(l=s.srfnav,delete s.srfnav))),r.push({viewName:n,context:i,params:s,srfnav:l})}let s;return t.params.appContext&&t.params.appContext!==ibiz.env.routePlaceholder&&(s=X.parse(t.params.appContext,{strictNullHandling:!0,delimiter:";"})),{appContext:s,pathNodes:r}}function Wt(t){let e="";return t.appContext?e+="/".concat(X.stringify(t.appContext,{delimiter:";",strictNullHandling:!0})):e+="/".concat(ibiz.env.routePlaceholder),t.pathNodes.forEach(((t,n)=>{e+="/".concat(t.viewName,"/");let a={};if(0===n)o(t.context)&&(a=t.context);else{if(a=o(t.params)?t.params:{},o(t.context)){const e=JSON.stringify(t.context);"{}"!==e&&(a.srfnavctx=encodeURIComponent(e))}t.srfnav&&(a.srfnav=t.srfnav)}const r=X.stringify(a,{delimiter:";",strictNullHandling:!0,skipNulls:!0});o(r)?e+=r:e+=ibiz.env.routePlaceholder})),e}function qt(t){const e=t.getOwnContext(),n=["srfsessionid","srfappid","currentSrfNav","toRouteDepth"];return Object.keys(e).forEach((t=>{n.includes(t)&&delete e[t]})),e}const $t=t("excludeViewTypes",[Q.DE_GRID_VIEW,Q.DE_GRID_EXP_VIEW,Q.DE_LIST_VIEW,Q.DE_LIST_EXP_VIEW,Q.DE_DATA_VIEW,Q.DE_DATAVIEW_EXP_VIEW,Q.DE_CALENDAR_VIEW,Q.DE_CALENDAR_EXP_VIEW,Q.DE_CHART_VIEW,Q.DE_CHART_EXP_VIEW,Q.DE_KANBAN_VIEW]);async function Ut(t,e,n,o){if(n){const a=await ibiz.hub.getAppDataEntity(n,o);let r=Y(e,a);if(r||(r={path:"",keys:[a.codeName.toLowerCase()]}),r){const n=t.pathNodes[1].context,o={};r.keys.forEach((t=>{e&&Object.prototype.hasOwnProperty.call(e,t)&&(o[t]=e[t],n&&delete n[t])})),t.pathNodes[0].context=o}}else t.pathNodes[0].context=void 0}function Ft(t,e,n=!0){if(t.matched.length<e)return"";if(t.matched.length===e&&t.name)return t.path;const o=Gt(t);return o.pathNodes.length<e?t.path:(o.pathNodes.length>e&&(o.pathNodes=o.pathNodes.slice(0,e)),n&&delete o.pathNodes[e-1].srfnav,Wt(o))}class Kt{constructor(t,e){this.callbacks=[],this.timers=[],this.wait=500,e&&(this.wait=e),i((()=>t.path),((t,e)=>{if(t!==e){if(this.callbacks.length)for(let t=0;t<this.callbacks.length;t++){(0,this.callbacks[t])()}if(this.callbacks=[],this.timers.length)for(let t=0;t<this.timers.length;t++){const e=this.timers[t];clearTimeout(e)}this.timers=[]}}))}nextChange(t){t&&(this.timers.push(setTimeout((()=>{t();const e=this.callbacks.findIndex((e=>e===t));this.callbacks.splice(e,1)}),this.wait)),this.callbacks.push(t))}}t("RouteListener",Kt);const Ht=t("withInstall",((t,e)=>(t.install=t=>{e(t)},t)));class Xt{constructor(t,e,n){this.component=t,this.render=e,this.opts=n,this.evt=new a,this.init()}static createVueApp(t,e){throw new V("没有注入createVueApp方法")}init(){const t=this,{render:e,opts:n}=this,o=document.createElement("div");document.body.appendChild(o);const a=Xt.createVueApp({mounted(){t.modal=this.$refs.root},unmounted(){document.body.removeChild(o),t.evt.emit("dismiss",t.result)},render:()=>y(t.component,{ref:"root",opts:n,onDismiss(e){t.result=e,a.unmount()}},{default:e})});ibiz.plugin.register(a),a.mount(o),this.vm=a}async present(){return this.modal.present()}async dismiss(t){await this.modal.dismiss(t)}async onWillDismiss(){return new Promise((t=>{const e=n=>{t(n),this.evt.off("dismiss",e)};this.evt.on("dismiss",e)}))}}t("OverlayContainer",Xt);function Qt(t){return e=>{const n=w("IBizViewShell");return y(n,{...t,modal:e})}}t("OverlayPopoverContainer",class extends Xt{present(t){return this.modal.present(t)}});const Jt={DRAWER_LEFT:"left",DRAWER_RIGHT:"right",DRAWER_TOP:"top",DRAWER_BOTTOM:"bottom"};class Yt{constructor(t,e){this.from=t,this.to=e,this.isActivated=!1,ibiz.log.debug("openRouter: ",t,e)}onWillDismiss(){return this.promise||(this.promise=new Promise((t=>{this.resolve=t}))),this.promise.then((t=>(ibiz.log.debug("onWillDismiss: ",this.from,this.to,t),t)))}close(t){ibiz.log.debug("closeRouter: ",this.from,this.to,t),this.resolve&&(this.resolve(t),this.resolve=void 0)}active(){ibiz.log.debug("activeRouter: ",this.from,this.to),this.isActivated=!0}destroy(){ibiz.log.debug("destroyRouter: ",this.from,this.to),this.resolve&&(this.resolve({ok:!1}),this.resolve=void 0)}}t("routerCallback",new class{constructor(){this.map=new Map}async open(t,e,n={}){const o=t.currentRoute.value.fullPath;n.replace?t.replace({path:e}):t.push({path:e});const a=e;if(this.map.has(a)){return this.map.get(a).onWillDismiss()}const r=new Yt(o,a);return this.map.set(a,r),this.scheduledDestruction(r),r.onWillDismiss()}close(t,e){const n=this.map.get(t);n&&(n.close(e),this.map.delete(t))}active(t){const e=this.map.get(t);e&&(window.clearTimeout(e.timeout),e.timeout=void 0,e.active())}scheduledDestruction(t){t.timeout=window.setTimeout((()=>{t.timeout=void 0,t.destroy(),this.map.delete(t.to)}),1e4)}}),t("useAppStore",xt("appStore",(()=>({appStore:m({})}))));t("useUIStore",xt("uiStore",(()=>{const t=function(){const t=g(500);return{zIndex:t,increment:function(){return t.value+=1,t.value},decrement:function(){t.value-=1}}}();return{UIStore:m({zIndex:t.zIndex,theme:"light"}),zIndex:t}}))),t("piniaInstance",St());function Zt(t){const e=zt(),n=h("ctx",void 0);null==n||n.evt.emit("onForecast",e.modelData.name);const o=e.provider;let a;a=(null==o?void 0:o.createController)?o.createController(e.modelData,e.context,e.params,n):t(e.modelData,e.context,e.params,n),ibiz.util.viewStack.add(a.id,a),function(t,e){i((()=>({context:t.context,params:t.params})),(t=>{e.context.reset({},t.context),r(e.params),Object.assign(e.params,t.params),e.handleContextParams(),ibiz.log.debug("".concat(e.model.id,"的上下文或视图参数变更:"),t)}))}(e,a),function(t,e){i((()=>t.state?{...t.state}:{}),((t,n)=>{const o={};Object.keys(t).forEach((e=>{t[e]!==(n||{})[e]&&(o[e]=t[e])})),ibiz.log.debug("视图 [".concat(e.model.name,"] state 变更"),o),Object.keys(o).forEach((t=>{e.state[t]=o[t]}))}),{immediate:!0})}(e,a),C("ctx",a.ctx),a.state=m(a.state),a.slotProps=m(a.slotProps),e.modal&&(a.modal=e.modal),f((()=>{a.onActivated(),ibiz.util.viewStack.active(a.id)})),v((()=>{a.onDeactivated(),ibiz.util.viewStack.deactivate(a.id)})),a.force=jt();const s=u().proxy;return a.evt.onAll(((t,e)=>{s.$emit(t.slice(2),e)})),a.created(),l((()=>{a.destroyed(),ibiz.util.viewStack.remove(a.id)})),a}t("IBizIcon",b({name:"IBizIcon",props:{icon:{type:Object},size:{type:String},baseDir:{type:String,default:"images"}},setup(t){const e=_t("icon"),n="".concat(ibiz.env.assetsUrl,"/").concat(t.baseDir,"/");const o=I((()=>function(t){if(t){if(t.htmlStr)return P("span",{class:e.b(),innerHTML:t.htmlStr},null);if(t.cssClass)return-1!==t.cssClass.indexOf("fa-")?P("i",{class:[e.b(),t.cssClass]},null):P("ion-icon",{class:e.b(),name:t.cssClass},null);if(t.imagePath)return L(t.imagePath)?P("img",{class:e.b(),src:t.imagePath},null):k(t.imagePath)?P("div",{class:e.b(),innerHTML:t.imagePath},null):t.imagePath.endsWith("svg")?t.imagePath.startsWith("http")?P("img",{class:e.b(),src:t.imagePath},null):P("ion-icon",{src:n+t.imagePath,class:e.b()},null):t.imagePath.startsWith("http")?P("img",{class:e.b(),src:t.imagePath},null):P("img",{class:e.b(),src:n+t.imagePath},null);if(t.rawContent)return k(t.rawContent)?P("div",{class:e.b(),innerHTML:t.rawContent},null):P("img",{class:e.b(),src:t.rawContent},null)}return null}(t.icon)));return()=>o.value}})),t("IBizRouterView",b({name:"IBizRouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object,manualKey:{type:String}},setup(t,{attrs:e}){const n={};let o=!0;i((()=>t.manualKey),((t,e)=>{q(t)&&t!==e&&(o=!0)}));return{renderComp:(a,r)=>{if(!o)return n.vNode;if(o=!1,a){const o={...a.props};delete o.onVnodeUnmounted,delete o.ref;const r=y(a.type,{...o,...e,key:t.manualKey});return n.vNode=r,r}}}},render(){return P(w("router-view"),{name:this.name,route:this.route},{default:({Component:t,route:e})=>{const n=this.renderComp(t,e);return this.$slots.default?this.$slots.default({Component:n,route:e}):n}})}})),t("IBizControlBase",b({name:"IBizControlBase",props:{controller:{type:Object,required:!0}},setup(t){const e=_t("control"),{controlType:n,sysCss:o,codeName:a}=t.controller.model,r=n.toLowerCase(),s=null==o?void 0:o.cssName,i=t.controller.model,l=t.controller.model.controls,c=m({});return!1===i.controlType.endsWith("EXPBAR")&&(W(i.width)||(i.width>0&&i.width<=1?c.width="".concat(100*i.width,"%"):c.width="".concat(i.width,"px")),W(i.height)||(i.height>0&&i.height<=1?c.width="".concat(100*i.height,"%"):c.height="".concat(i.height,"px"))),{ns:e,typeClass:r,sysCssName:s,inlineStyle:c,codeName:a,controls:l,onLayoutPanelCreated:e=>{t.controller.setLayoutPanel(e)}}},render(){var t,e,n;const{state:o,controlPanel:a,providers:r}=this.controller;let s=null;if(o.isCreated&&a){const e={...this.$slots};(null==(t=this.controls)?void 0:t.length)&&this.controls.forEach((t=>{const n=t.name,o={context:this.controller.context,params:this.controller.params},a=e[n];e[n]=a?()=>a(o):()=>{const e=w("IBizControlShell");return y(e,{modelData:t,...o})}}));const n=r[a.name];s=y(w(n.component),{modelData:a,context:this.controller.context,params:this.controller.params,provider:n,container:this.controller,onControllerAppear:this.onLayoutPanelCreated},e)}return P("div",{class:[this.ns.b(),this.ns.b(this.typeClass),this.ns.m(this.codeName),this.sysCssName],style:this.inlineStyle},[s||(null==(n=(e=this.$slots).default)?void 0:n.call(e))])}})),t("IBizControlShell",b({name:"IBizControlShell",props:{modelData:{type:Object,required:!0}},setup(t){const e=h("ctx");if(e)e.evt.emit("onForecast",t.modelData.name);else{const t={name:"AppView",id:"AppView",viewType:Q.DE_CUSTOM_VIEW,appId:ibiz.env.appId};C("ctx",new tt(t,M.create({})).ctx)}const n=g(!1),o=g(""),a=g();et(t.modelData).then((t=>{t?a.value=t:o.value="未找到对应部件的适配器",n.value=!0})).catch((t=>{ibiz.log.error(t),o.value=t.message,n.value=!0}));return{ns:_t("control-shell"),isComplete:n,errMsg:o,provider:a}},render(){return this.isComplete&&this.provider?y(w(this.provider.component),{provider:this.provider,...this.$props,...this.$attrs},this.$slots):D(P("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[E("loading"),!this.isComplete]])}})),t("IBizViewShell",b({name:"IBizViewShell",props:{context:{type:Object,required:!0},params:{type:Object},modelData:{type:Object},viewId:{type:String}},setup(t){const e=_t("view-shell"),n=g(!1),o=g(""),a=g(),r=g();return(async()=>{let e;if(e=t.modelData?t.modelData:await ibiz.hub.getAppView(t.viewId),!e)throw new V("未找到视图模型");if(1===e.dynaSysMode){const n=e.appDataEntityId;if(!n)throw new V("".concat(e.codeName,"无实体,暂不支持加载动态模型"));const o=t.params||{},a=await nt(n,t.context,{viewParams:o,appId:e.appId});if(o.srfdatatype&&(a.srfdatatype=o.srfdatatype),o.srfwftag)a.srfwftag=o.srfwftag;else if(n&&e.enableWF){const o={...t.context};if(a.srfkey){const r=W(t.context.srfsessionid)||$(t.context.srfsessionid),i=s();if(r){const t=ibiz.uiDomainManager.create(i);o.srfsessionid=t.id}const l=ibiz.hub.getApp(e.appId),c=await l.deService.getService(t.context,n),u=await c.get(o,t.params||{});if(u.ok&&u.data){const{srfwftag:n,processdefinitionkey:o,taskdefinitionkey:r}=u.data;if(n&&(a.srfwftag=n),["DEWFDYNAEDITVIEW3","DEWFDYNAEDITVIEW"].includes(e.viewType)){const e=t.params;W(e.processDefinitionKey)&&(e.processDefinitionKey=o),W(e.taskDefinitionKey)&&(e.taskDefinitionKey=r)}}r&&ibiz.uiDomainManager.destroy(i)}}r.value=await ibiz.hub.loadAppView(e.appId,e.id,a)}else r.value=e;try{a.value=await ot(e)}catch(t){ibiz.log.error(t),o.value=t.message}finally{n.value=!0}})(),{ns:e,isComplete:n,errMsg:o,viewModelData:r,provider:a}},render(){return this.isComplete&&this.provider?y(w(this.provider.component),{context:this.$props.context,params:this.$props.params,modelData:this.viewModelData,...this.$attrs,provider:this.provider},this.$slots):D(P("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[E("loading"),!this.isComplete]])}})),t("IBizCodeList",b({name:"IBizCodeList",props:{codeListItems:{type:Array},codeList:{type:Object,required:!0},value:{type:[String,Number]}},emits:{infoTextChange:t=>!0},setup(t,{emit:e}){var n,o;const a=_t("code-list"),r=g([]),s=(null==(n=t.codeList)?void 0:n.textSeparator)||"、",l=(null==(o=t.codeList)?void 0:o.valueSeparator)||",";i(r,(t=>{let n="";t.length>0&&(n=t.map((t=>t.text)).join(s)),e("infoTextChange",n)}));const c=(t,e)=>{if(t){const n=t.find((t=>t.value==e));if(n)return n;for(let n=0;n<t.length;n++){const o=c(t[n].children,e);if(o)return o}}};i((()=>t.value),((e,n)=>{if(e!==n)if(W(e)||""===e)r.value=[];else{let n;n="string"==typeof e?e.split(l):[e],r.value=n.map((e=>{const n=c(t.codeListItems,e);return{text:(null==n?void 0:n.text)||e,color:null==n?void 0:n.color,textCls:null==n?void 0:n.textCls,sysImage:null==n?void 0:n.sysImage}}))}}),{immediate:!0});const u="未定义"===t.codeList.emptyText?"- - -":t.codeList.emptyText;return{items:r,ns:a,emptyText:u,textSeparator:s}},render(){return P("span",{class:this.ns.b()},[0===this.items.length?this.emptyText:this.items.map(((t,e)=>[0!==e?this.textSeparator:null,P("span",{class:[this.ns.e("item"),t.textCls?t.textCls:null],style:t.color?this.ns.cssVarBlock({"item-color":"".concat(t.color)}):null},[t.sysImage&&P(w("iBizIcon"),{icon:t.sysImage},null),t.text])]))])}})),t("ControlLoadingPlaceholder",b({name:"ControlLoadingPlaceholder",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})}},setup:t=>(h("ctx").evt.emit("onForecast",t.modelData.name),{}),render:()=>null})),t("IBizBadge",b({name:"IBizBadge",props:{value:{type:Number,required:!0},type:{type:String,default:"danger"}},setup:()=>({ns:_t("badge")}),render(){return P("div",{class:[this.ns.b(),this.ns.m(this.type)]},[this.value])}}));class te extends at{}t("PanelContainerState",te);class ee extends rt{createState(){var t;return new te(null==(t=this.parent)?void 0:t.state)}}function ne(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}t("PanelContainerController",ee);const oe=b({name:"IBizPanelContainer",props:{modelData:{type:Object,required:!0},controller:{type:ee,required:!0}},setup(t){const e=_t("panel-container"),{id:n}=t.modelData,o=I((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o}));return{ns:e,classArr:o}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],a=P(w("iBizRow"),{slot:"content",layout:this.modelData.layout},ne(n=o.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},ne(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});return P("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[this.controller.model.cssStyle?P("style",{type:"text/css"},[this.controller.model.cssStyle]):null,a])}});class ae{constructor(){this.component="IBizPanelContainer"}async createController(t,e,n){const o=new ee(t,e,n);return await o.init(),o}}t("IBizPanelContainer",Ht(oe,(function(t){t.component(oe.name,oe),st("CONTAINER",(()=>new ae)),st("CONTAINER_DEFAULT",(()=>new ae))})));const re=b({name:"IBizPanelCtrlPos",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){h("ctx").evt.on("onRegister",((e,n)=>{e===t.modelData.id&&t.controller.bindControl(n)}));return{ns:_t("panel-ctrl-pos")}},render(){const{state:t}=this.controller;let e;return this.$slots.default&&(e=this.$slots.default()),P("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass,this.ns.is("hidden",!t.visible)]},[e||(ibiz.env.dev?"未提供".concat(this.modelData.id,"插槽"):"")])}});class se extends rt{bindControl(t){this.control=t,t.evt.onAll(((t,e)=>{this.panel.evt.emit("onControlEvent",{triggerControlName:this.model.id,triggerEventName:t,triggerEvent:e})}))}}t("PanelCtrlPosController",se);class ie{constructor(){this.component="IBizPanelCtrlPos"}async createController(t,e,n){const o=new se(t,e,n);return await o.init(),o}}t("IBizPanelCtrlPos",Ht(re,(function(t){t.component(re.name,re),st("CTRLPOS",(()=>new ie))})));class le extends rt{}function ce(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}t("ScrollContainerItemController",le);const ue=t("ScrollContainerItem",b({name:"IBizScrollContainerItem",props:{modelData:{type:Object,required:!0},controller:{type:le,required:!0}},setup(t){const e=_t("scroll-container-item"),{id:n}=t.modelData,o=I((()=>[e.b(),e.m(n),e.is("hidden",!t.controller.state.visible)]));return{ns:e,classArr:o}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[];return P(w("iBizRow"),{class:this.classArr,layout:{layout:"FLEX"}},ce(n=o.map((t=>{const e=t.props;return e&&e.controller?(e.modelData.layoutPos.layout="FLEX",P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},ce(t)?t:{default:()=>[t]})):t})))?n:{default:()=>[n]})}}));class de{constructor(){this.component="IBizScrollContainerItem"}async createController(t,e,n){const o=new le(t,e,n);return await o.init(),o}}class pe extends rt{async onInit(){await super.onInit(),this.state.layout.width="100%",this.state.layout.height="100%"}}t("ScrollContainerController",pe);const he=t("ScrollContainer",b({name:"IBizScrollContainer",props:{modelData:{type:Object,required:!0},controller:{type:pe,required:!0}},setup(t){const e=_t("scroll-container"),{id:n}=t.modelData,o=I((()=>[e.b(),e.m(n),...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)]));return{ns:e,classArr:o}},render(){var t,e;let n=null,o=null,a=null,r=null,s=null;const i={};((null==(e=(t=this.$slots).default)?void 0:e.call(t))||[]).forEach((t=>{const e=t.props;if(!e||!e.controller)return;const{width:l,height:c}=e.controller.state.layout;switch(e.modelData.layoutPos.layoutPos){case"WEST":n=t,i.left={width:l};break;case"EAST":a=t,i.right={width:l};break;case"NORTH":o=t,i.top={height:c};break;case"SOUTH":r=t,i.bottom={height:c};break;case"CENTER":s=t;break;default:ibiz.log.debug("未适配的布局占位".concat(e.modelData.layoutPos.layoutPos))}}));for(const t in i)(i[t].width||i[t].height)&&(i[t].flexShrink=0);return P("div",{class:this.classArr},[P("div",{class:[this.ns.e("header")],style:i.top},[o]),P("div",{class:[this.ns.b("content")]},[P("div",{class:this.ns.be("content","left"),style:i.left},[n]),P("div",{class:this.ns.be("content","center")},[s]),P("div",{class:this.ns.be("content","right"),style:i.right},[a])]),P("div",{class:[this.ns.e("footer")],style:i.bottom},[r])])}}));class me{constructor(){this.component="IBizScrollContainer"}async createController(t,e,n){const o=new pe(t,e,n);return await o.init(),o}}t("IBizScrollContainer",Ht(he,(function(t){t.component(he.name,he),t.component(ue.name,ue),st("CONTAINER_CONTAINER_SCROLL",(()=>new me)),st("CONTAINER_CONTAINER_SCROLL_LEFT",(()=>new de)),st("CONTAINER_CONTAINER_SCROLL_HEADER",(()=>new de)),st("CONTAINER_CONTAINER_SCROLL_RIGHT",(()=>new de)),st("CONTAINER_CONTAINER_SCROLL_BOTTOM",(()=>new de)),st("CONTAINER_CONTAINER_SCROLL_MAIN",(()=>new de))})));class fe extends at{constructor(){super(...arguments),this.cache=!0,this.routeOpen=!0,this.currentKey="",this.cacheKeys=["RouterShell"],this.navViewMsgs={}}}t("NavPosState",fe);const ve=["is404","isRoutePushed"];class ge extends rt{constructor(){super(...arguments),this.viewModals={},this.refCtrlKeys=[],this.rawItemParams={}}get route(){return this.router.currentRoute.value}getExpItemIsCache(t){return"CACHE"===this.rawItemParams.expcache||"NO_CACHE"!==this.rawItemParams.expcache&&t.isCache}setRouter(t){this.router=t}async onInit(){var t;await super.onInit(),this.handleRawItemParams(),(null==(t=this.model.rawItem)?void 0:t.rawItemParams)&&this.model.rawItem.rawItemParams.find((t=>!("REFCTRL"!==t.key||!t.value)&&(this.refCtrlKeys=t.value.split(";").map((t=>t.toLowerCase())),!0))),this.panel.evt.on("onControlEvent",(t=>{if((0===this.refCtrlKeys.length||this.refCtrlKeys.includes(t.triggerControlName))&&"onNavViewChange"===t.triggerEventName){const e=t.triggerEvent;this.openView(e.navViewMsg)}}));const e=this.rawItemParams.expmode||this.panel.view.params.expmode;"ROUTE"===e&&this.routeDepth?this.state.routeOpen=!0:this.state.routeOpen="NO_ROUTE"!==e&&!!this.routeDepth,this.panel.view.params.expmode&&delete this.panel.view.params.expmode}createState(){var t;return new fe(null==(t=this.parent)?void 0:t.state)}get routeDepth(){return this.panel.view.modal.routeDepth}calcCacheKey(t){return t?"".concat(t.viewId,"___").concat(t.key):""}onRouteChange(t){if(this.curNavViewMsg){const e=this.calcCacheKey(this.curNavViewMsg);this.state.currentKey=e,this.state.navViewMsgs[e].fullPath=t.fullPath}}setNavViewMsgs(t){t.isRoutePushed=!0===t.isRoutePushed;const e=this.calcCacheKey(t);this.state.navViewMsgs[e]?(U(this.state.navViewMsgs[e],t),ve.forEach((n=>{Object.prototype.hasOwnProperty.call(t,n)&&(this.state.navViewMsgs[e][n]=void 0)}))):(this.state.navViewMsgs[e]=t,this.getExpItemIsCache(t)&&this.state.cacheKeys.push(e),this.viewModals[e]=new it({mode:this.routeDepth?lt.ROUTE:lt.EMBED,routeDepth:this.routeDepth?this.routeDepth+1:void 0,dismiss:()=>{this.dismiss(e)}})),this.curNavViewMsg=this.state.navViewMsgs[e]}dismiss(t){ibiz.log.debug(this.constructor.name,"dismiss",t)}onViewCreated(t){ibiz.log.debug(this.constructor.name,"onViewCreated",t)}toBlankRoute(){const t=Ft(this.route,this.routeDepth);this.router.push(t)}openView(t){if(!t.key)return this.state.currentKey=this.calcCacheKey(t),void(this.routeDepth&&this.state.routeOpen&&this.toBlankRoute());this.routeDepth&&this.state.routeOpen?this.openViewByPath(t):this.openViewByModel(t)}openViewByPath(t){var e,n;const o=this.calcCacheKey(t);this.setNavViewMsgs(t);if(!0===t.isRoutePushed)return this.state.currentKey=o,void(this.state.navViewMsgs[this.calcCacheKey(this.curNavViewMsg)].fullPath=this.route.fullPath);if(t.is404){const n=Ft(this.route,this.routeDepth,!1);(null==(e=t.modalOptions)?void 0:e.replace)?this.router.replace("".concat(n,"/error/404")):this.router.push("".concat(n,"/error/404"))}else if(this.state.navViewMsgs[o].fullPath&&this.getExpItemIsCache(t))(null==(n=t.modalOptions)?void 0:n.replace)?this.router.replace(this.state.navViewMsgs[o].fullPath):this.router.push(this.state.navViewMsgs[o].fullPath);else{const e=Object.assign(t.context.clone(),{toRouteDepth:this.routeDepth+1});this.getExpItemIsCache(t)&&this.state.cacheKeys.push(o),ibiz.commands.execute(ct.TAG,t.viewId,e,t.params,{openMode:"INDEXVIEWTAB",replace:!this.state.currentKey,...t.modalOptions})}}openViewByModel(t){this.setNavViewMsgs(t),this.state.currentKey=this.calcCacheKey(t)}handleRawItemParams(){var t;let e={};const n=null==(t=this.model.rawItem)?void 0:t.rawItemParams;o(n)&&(e=n.reduce(((t,e)=>(t[e.key.toLowerCase()]=e.value,t)),{})),Object.assign(this.rawItemParams,e)}}function ye(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}t("NavPosController",ge);const we=b({name:"IBizNavPos",props:{modelData:{type:Object,required:!0},controller:{type:ge,required:!0}},setup(t){const e=t.controller,n=_t("nav-pos"),o=K(),a=F(),r=g(!1);if(e.setRouter(o),e.routeDepth){const t=Ft(a,e.routeDepth);i((()=>a.fullPath),(()=>{const n=Ft(a,e.routeDepth);if(t===n&&a.matched.length>e.routeDepth){if(a.matched.length===e.routeDepth+1&&(r.value=!!a.name,r.value))return;e.onRouteChange(a)}}),{immediate:!0})}return{ns:n,c:e,isPresetView:r,onViewCreated:t=>{e.onViewCreated(t)}}},render(){const{viewModals:t,state:e}=this.c,{currentKey:n,cacheKeys:o,navViewMsgs:a,cache:r}=e;let s=null;if(e.routeOpen){if(this.isPresetView)return P(H,null,null);s=P(w("iBizRouterView"),{manualKey:n,modal:t[n],onCreated:this.onViewCreated},{default:({Component:t})=>{const e=""!==n&&t?P(t,null,null):null;return r?P(w("keepAlive"),{include:o,max:30,isKey:!0},ye(e)?e:{default:()=>[e]}):e}})}else{const t=n?y(w("IBizViewShell"),{context:a[n].context,params:a[n].params,key:n,viewId:a[n].viewId,onCreated:this.onViewCreated}):null;s=r?P(w("keepAlive"),{include:o,max:30,isKey:!0},ye(t)?t:{default:()=>[t]}):t}return P("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass]},[s])}});class Ce{constructor(){this.component="IBizNavPos"}async createController(t,e,n){const o=new ge(t,e,n);return await o.init(),o}}t("IBizNavPos",Ht(we,(function(t){t.component(we.name,we),st("RAWITEM_NAV_POS",(()=>new Ce))})));class be extends at{}class Ie extends rt{constructor(){super(...arguments),this.unitName=void 0}get valueFormat(){return this.model.valueFormat}get dataType(){}get context(){return this.panel.context}get params(){return this.panel.params}get data(){return this.dataParent.data}get value(){return this.data[this.model.id]}createState(){var t;return new be(null==(t=this.parent)?void 0:t.state)}async onInit(){var t;await super.onInit(),this.state.required=!this.model.allowEmpty,!0!==this.context.srfreadonly&&"true"!==this.context.srfreadonly&&(this.state.readonly=(null==(t=this.model.editor)?void 0:t.readOnly)||!1),this.model.editor&&"HIDDEN"!==this.model.editor.editorType&&(this.editorProvider=await ut(this.model.editor),this.editorProvider&&(this.editor=await this.editorProvider.createController(this.model.editor,this)))}async setDataValue(t,e){const{id:n}=this.model;e=e||n,this.dataParent.setDataValue&&await this.dataParent.setDataValue(e,t),this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:dt.CHANGE})}onFocus(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:dt.FOCUS,event:t})}onBlur(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:dt.BLUR,event:t})}onEnter(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:dt.ENTER,event:t})}}t("PanelFieldController",Ie);const Pe=b({name:"IBizPanelField",props:{modelData:{type:Object,required:!0},controller:{type:Ie,required:!0},attrs:{type:Object,require:!1}},setup(t){const e=_t("panel-field"),n=I((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:n,onValueChange:(e,n)=>{t.controller.setDataValue(e,n)}}},render(){let t=null;if(this.controller.data){const e={value:this.controller.value,data:this.controller.data,controller:this.controller.editor,disabled:this.controller.state.disabled,class:this.ns.b("content"),readonly:this.controller.state.readonly,onChange:this.onValueChange,onFocus:t=>this.controller.onFocus(t),onBlur:t=>this.controller.onBlur(t),onEnter:t=>this.controller.onEnter(t),...this.attrs};if(this.$slots.default)t=this.$slots.default(e);else if(this.controller.editorProvider){const n=w(this.controller.editorProvider.formEditor);t=y(n,{...e})}else t=P(w("not-supported-editor"),{modelData:this.modelData.editor},null)}return P("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[t])}});class De{constructor(){this.component="IBizPanelField"}async createController(t,e,n){const o=new Ie(t,e,n);return await o.init(),o}}t("IBizPanelField",Ht(Pe,(function(t){t.component(Pe.name,Pe),st("FIELD",(()=>new De))})));class Ee extends rt{get data(){return this.dataParent.data}async onInit(){await super.onInit()}}t("PanelRawItemController",Ee);const Oe=b({name:"IBizPanelRawItem",props:{modelData:{type:Object,required:!0},controller:{type:Ee,required:!0}},setup(t){const e=_t("panel-rawitem"),n=g(""),{rawItem:o}=t.modelData;o&&o.cssStyle&&(n.value=o.cssStyle);const a=I((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:a,tempStyle:n}},render(){if(this.controller.state.visible)return P("div",{class:this.classArr,style:this.tempStyle,onClick:()=>{this.controller.onClick()}},[P(w("iBizRawItem"),{rawItem:this.modelData},null)])}});class Ne{constructor(){this.component="IBizPanelRawItem"}async createController(t,e,n){const o=new Ee(t,e,n);return await o.init(),o}}t("IBizPanelRawItem",Ht(Oe,(function(t){t.component(Oe.name,Oe),st("RAWITEM",(()=>new Ne)),st("RAWITEM_STATIC_IMAGE",(()=>new Ne)),st("RAWITEM_STATIC_LABEL",(()=>new Ne)),st("RAWITEM_STATIC_TEXT",(()=>new Ne))})));class Ae extends at{constructor(){super(...arguments),this.data={}}}class xe{constructor(t,e,n,o){this.model=t,this.panel=e,this.parent=n,this.state=new Ae,this.isDataContainer=!0,this.panelItems={},this.state.data=o;const a=pt(this.model).map((t=>t.id));o._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])}))}get data(){return this.state.data}async init(){await this.initChildrenController()}async initChildrenController(t=this.model.panelItems,e=this.panel,n=this){t&&await Promise.all(t.map((async t=>{var o,a;const r=this.parent.providers[t.id];if(!r)return;const s=await r.createController(t,e,n);this.panelItems[t.id]=s,(null==(o=t.panelItems)?void 0:o.length)&&!ht(t)?await this.initChildrenController(t.panelItems,e,s):(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initChildrenController(t.panelTabPages,e,s)})))}async dataChangeNotify(t){}async childDataChangeNotify(t){Object.values(this.panelItems).forEach((e=>{e.dataChangeNotify(t)}))}async panelStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setDataValue(t,e){Object.prototype.hasOwnProperty.call(this.state.data,t)&&this.state.data[t]===e||(this.state.data[t]=e,this.childDataChangeNotify([t]))}destroy(){var t,e;null==(e=(t=this.data).destroy)||e.call(t),Object.values(this.panelItems).forEach((t=>{t.destroy()}))}}class Se extends at{constructor(){super(...arguments),this.items=[]}}t("MultiDataContainerState",Se);class Re extends rt{constructor(){super(...arguments),this.isDataContainer=!0,this.dataItems=[],this.providers={}}get data(){return this.state.items}createState(){var t;return new Se(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemProviders(),this.initContainerData()}async initPanelItemProviders(t=this.model.panelItems){t&&await Promise.all(t.map((async t=>{var e,n;const o=await mt(t);o&&(this.providers[t.id]=o,(null==(e=t.panelItems)?void 0:e.length)&&!ht(t)&&await this.initPanelItemProviders(t.panelItems),(null==(n=t.panelTabPages)?void 0:n.length)&&await this.initPanelItemProviders(t.panelTabPages))})))}initContainerData(){const{dataSourceType:t,dataName:e}=this.model;switch(t){case"DEACTION":case"DEDATASET":this.setDataByDeMethod();break;case"APPGLOBALPARAM":this.setDataByAppGlobalParam();break;case"DELOGIC":this.setDataByDeLogic();break;case"TOPVIEWSESSIONPARAM":if(!e)throw new G(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new G(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.view,e);break;default:throw new _(this.model,"数据源类型".concat(t,"暂未支持"))}}childrenStateNotify(t){this.dataItems.forEach((e=>{e.panelStateNotify(t)}))}async setData(t){const e=pt(this.model),n=t.map((t=>new ft(e,t)));this.dataItems=n.map((t=>new xe(this.model,this.panel,this,t))),this.dataItems.length&&await Promise.all(this.dataItems.map((t=>t.init()))),this.state.items=n,this.childrenStateNotify(vt.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new G(this.model,"没有配置实体逻辑");if(!t)throw new G(this.model,"没有配置实体");const n=await gt(e,t,this.panel.context,[],this.panel.params);if(!n)throw new V("实体逻辑".concat(e,"没有返回值"));this.setData(n)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error("全局变量里没有".concat(t,"属性"))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new G(this.model,"没有配置实体行为");if(!e)throw new G(this.model,"没有配置实体");const n=ibiz.hub.getApp(this.panel.context.srfappid),o=await n.deService.exec(e,t,this.panel.context,[],this.panel.params);o.ok&&o.data&&this.setData(o.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error("绑定视图的会话不存在".concat(e));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error("视图state里没有".concat(e,"属性"))};n(),t.evt.on("onDataChange",(()=>{n()}))}setDataValue(t,e){throw new Error("Method not implemented.")}destroy(){super.destroy(),this.dataItems.forEach((t=>{t.destroy()}))}}t("MultiDataContainerController",Re);const Te=b({name:"IBizMultiDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:Re,required:!0}},setup(t){const e=_t("multi-data-container"),{id:n}=t.modelData;i((()=>t.controller.state.items),(()=>{t.controller.dataItems.forEach((t=>{t.state=m(t.state);Object.keys(t.panelItems).forEach((e=>{const n=t.panelItems[e];n.state=m(n.state)}))}))}),{immediate:!0});const o=h("renderPanelItem"),a=I((()=>[e.b(),e.m(n),...t.controller.containerClass]));return{ns:e,classArr:a,renderPanelItem:o}},render(){let t;return t=this.$slots.default?this.$slots.default():this.controller.state.items.map(((t,e)=>{const n=this.controller.dataItems[e];return P(w("iBizRow"),{class:this.ns.b("content"),layout:this.modelData.layout},{default:()=>{var t;return[null==(t=this.modelData.panelItems)?void 0:t.map((t=>{let e;const o=n.panelItems[t.id];return P(w("iBizCol"),{layoutPos:t.layoutPos,state:o.state},"function"==typeof(a=e=this.renderPanelItem(t,{providers:this.controller.providers,panelItems:n.panelItems}))||"[object Object]"===Object.prototype.toString.call(a)&&!O(a)?e:{default:()=>[e]});var a}))]}})})),P("div",{class:this.classArr},[t])}});class ze{constructor(){this.component="IBizMultiDataContainer"}async createController(t,e,n){const o=new Re(t,e,n);return await o.init(),o}}t("IBizMultiDataContainer",Ht(Te,(function(t){t.component(Te.name,Te),st("CONTAINER_CONTAINER_MULTIDATA",(()=>new ze))})));class Be extends at{constructor(){super(...arguments),this.data={}}}t("SingleDataContainerState",Be);class je extends rt{constructor(){super(...arguments),this.isDataContainer=!0,this.panelItems={},this.providers={}}get data(){return this.state.data}createState(){var t;return new Be(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemControllers(),this.initContainerData()}async initPanelItemControllers(t=this.model.panelItems,e=this.panel,n=this){t&&await Promise.all(t.map((async t=>{var o,a;const r=await mt(t);if(!r)return;this.providers[t.id]=r;const s=await r.createController(t,e,n);this.panelItems[t.id]=s,(null==(o=t.panelItems)?void 0:o.length)&&!ht(t)&&await this.initPanelItemControllers(t.panelItems,e,s),(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initPanelItemControllers(t.panelTabPages,e,s)})))}initContainerData(){const{dataSourceType:t,dataName:e}=this.model;switch(t){case"DEACTION":case"DEDATASET":this.setDataByDeMethod();break;case"APPGLOBALPARAM":this.setDataByAppGlobalParam();break;case"DELOGIC":this.setDataByDeLogic();break;case"TOPVIEWSESSIONPARAM":if(!e)throw new G(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new G(this.model,"没有配置数据对象名称");this.bindViewData(this.panel.view,e);break;default:throw new _(this.model,"数据源类型".concat(t,"暂未支持"))}}childrenStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setData(t){var e,n;const o=pt(this.model),a=o.map((t=>t.id)),r=new ft(o,t);r._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])})),null==(n=(e=this.data).destroy)||n.call(e),this.state.data=r,this.childrenStateNotify(vt.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new G(this.model,"没有配置实体逻辑");if(!t)throw new G(this.model,"没有配置实体");const n=await gt(e,t,this.panel.context,[],this.panel.params);if(!n)throw new V("实体逻辑".concat(e,"没有返回值"));this.setData(n)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error("全局变量里没有".concat(t,"属性"))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new G(this.model,"没有配置实体行为");if(!e)throw new G(this.model,"没有配置实体");const n=ibiz.hub.getApp(this.panel.context.srfappid),o=await n.deService.exec(e,t,this.panel.context,[],this.panel.params);o.ok&&o.data&&this.setData(o.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error("绑定视图的会话不存在".concat(e));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error("视图state里没有".concat(e,"属性"))};n(),t.evt.on("onDataChange",(()=>{n()}))}childDataChangeNotify(t){Object.values(this.panelItems).forEach((e=>{e.dataChangeNotify(t)}))}async setDataValue(t,e){Object.prototype.hasOwnProperty.call(this.state.data,t)&&this.state.data[t]===e||(this.state.data[t]=e)}destroy(){var t,e;super.destroy(),null==(e=(t=this.data).destroy)||e.call(t),Object.values(this.panelItems).forEach((t=>{t.destroy()}))}}t("SingleDataContainerController",je);const Ve=b({name:"IBizSingleDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:je,required:!0}},setup(t){const e=_t("single-data-container"),{id:n}=t.modelData;Object.keys(t.controller.panelItems).forEach((e=>{const n=t.controller.panelItems[e];n.state=m(n.state)}));const o=h("renderPanelItem"),a=I((()=>[e.b(),e.m(n),...t.controller.containerClass]));return{ns:e,classArr:a,renderPanelItem:o}},render(){let t;return t=this.$slots.default?this.$slots.default():P(w("iBizRow"),{class:this.ns.b("content"),layout:this.modelData.layout},{default:()=>{var t;return[null==(t=this.modelData.panelItems)?void 0:t.map((t=>{let e;const n=this.controller.panelItems[t.id];return P(w("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=this.renderPanelItem(t,{providers:this.controller.providers,panelItems:this.controller.panelItems}))||"[object Object]"===Object.prototype.toString.call(o)&&!O(o)?e:{default:()=>[e]});var o}))]}}),P("div",{class:this.classArr},[t])}});class Le{constructor(){this.component="IBizSingleDataContainer"}async createController(t,e,n){const o=new je(t,e,n);return await o.init(),o}}t("IBizSingleDataContainer",Ht(Ve,(function(t){t.component(Ve.name,Ve),st("CONTAINER_CONTAINER_SINGLEDATA",(()=>new Le))})));class ke extends at{}t("GridContainerState",ke);class Me extends rt{createState(){var t;return new ke(null==(t=this.parent)?void 0:t.state)}}function _e(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}t("GridContainerController",Me);const Ge=b({name:"IBizGridContainer",props:{modelData:{type:Object,required:!0},controller:{type:Me,required:!0}},setup(t){const e=_t("grid-container"),{id:n}=t.modelData,o=I((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=I((()=>({...t.modelData.layout,layout:"TABLE_12COL"}))),r=g(void 0),s=g(12);return{ns:e,classArr:o,layoutModel:a,convertLayoutPos:(t,e)=>{const n={...t,layout:"TABLE_12COL",colXS:t.grow||e,colSM:t.grow||e,colMD:t.grow||e,colLG:t.grow||e};return delete n.grow,n},adaptGrow:s,adaptCols:r}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[];if(void 0===this.adaptCols){let t=0,e=0;o.forEach((n=>{const o=n.props;o&&o.modelData&&o.modelData.layoutPos&&("number"==typeof o.modelData.layoutPos.grow?t+=o.modelData.layoutPos.grow:void 0===o.modelData.layoutPos.grow&&(e+=1))}));let n=12;e>0&&(n=(12-t)/e),this.adaptCols=e,this.adaptGrow=n}return P(w("iBizRow"),{class:this.classArr,layout:this.layoutModel},_e(n=o.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:this.convertLayoutPos(e.modelData.layoutPos,this.adaptGrow),state:e.controller.state},_e(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]})}});class We{constructor(){this.component="IBizGridContainer"}async createController(t,e,n){const o=new Me(t,e,n);return await o.init(),o}}t("IBizGridContainer",Ht(Ge,(function(t){t.component(Ge.name,Ge),st("CONTAINER_CONTAINER_GRID",(()=>new We))})));class qe extends at{}t("PanelContainerImageState",qe);class $e extends rt{createState(){var t;return new qe(null==(t=this.parent)?void 0:t.state)}}function Ue(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}t("PanelContainerImageController",$e);const Fe=b({name:"IBizPanelContainerImage",props:{modelData:{type:Object,required:!0},controller:{type:$e,required:!0}},setup(t){const e=_t("panel-container-image"),{id:n}=t.modelData,o=I((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=I((()=>{const e=t.controller.model.sysImage,n={};let o="";return(null==e?void 0:e.rawContent)?o=k(e.rawContent)?"url(data:image/svg+xml;base64,".concat(btoa(e.rawContent),")"):"url(".concat(e.rawContent,")"):(null==e?void 0:e.imagePath)&&(o="url(".concat(e.imagePath,")")),o&&Object.assign(n,{backgroundImage:o}),n}));return{ns:e,classArr:o,backgroundStyle:a}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],a=P(w("iBizRow"),{slot:"content",layout:this.modelData.layout},Ue(n=o.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Ue(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});return P("div",{class:this.classArr,onClick:()=>{this.controller.onClick()},style:this.backgroundStyle},[this.controller.model.cssStyle?P("style",{type:"text/css"},[this.controller.model.cssStyle]):null,a])}});class Ke{constructor(){this.component="IBizPanelContainerImage"}async createController(t,e,n){const o=new $e(t,e,n);return await o.init(),o}}t("IBizPanelContainerImage",Ht(Fe,(function(t){t.component(Fe.name,Fe),st("CONTAINER_CONTAINER_IMAGE",(()=>new Ke))})));class He extends at{}t("PanelContainerGroupState",He);class Xe extends rt{createState(){var t;return new He(null==(t=this.parent)?void 0:t.state)}get disableClose(){const{titleBarCloseMode:t}=this.model;return 0===t||void 0===t}get defaultExpansion(){const{titleBarCloseMode:t}=this.model;return this.disableClose||1===t}}t("PanelContainerGroupController",Xe);class Qe{constructor(){this.component="IBizPanelContainerGroup"}async createController(t,e,n){const o=new Xe(t,e,n);return await o.init(),o}}function Je(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}const Ye=b({name:"IBizPanelContainerGroup",props:{modelData:{type:Object,required:!0},controller:{type:Xe,required:!0}},setup(t){const e=_t("panel-container-group"),n=g(!t.controller.defaultExpansion);return{ns:e,captionText:I((()=>{const{captionItemName:e,caption:n,capLanguageRes:o}=t.modelData;if(e)return t.controller.data[e];let a=n;return o&&(a=ibiz.i18n.t(o.lanResTag,n)),a})),changeCollapse:()=>{t.controller.disableClose||(n.value=!n.value)},isCollapse:n}},render(){var t,e;let n;const o=[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass,this.ns.is("hidden",!this.controller.state.visible)];!0===this.modelData.showCaption&&(o.push(this.ns.m("show-header")),o.push(this.ns.b("collapse")),o.push(this.ns.is("collapse",this.isCollapse)),this.controller.disableClose&&o.push(this.ns.bm("collapse","disable-close")));const a=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],r=P(w("iBizRow"),{slot:"content",layout:this.modelData.layout},Je(n=a.map((t=>{const e=t.props;return e&&e.controller?P(w("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Je(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});let s=null;return this.modelData.showCaption&&(s=P("div",{class:[this.ns.b("header")],onClick:this.changeCollapse},[P("div",{class:[this.ns.be("header","left")]},[P("div",{class:[this.ns.e("caption"),...this.controller.labelClass]},[this.captionText])]),P("div",{class:[this.ns.be("header","right")]},[void 0!==this.modelData.titleBarCloseMode&&0!==this.modelData.titleBarCloseMode&&(this.isCollapse?P("ion-icon",{name:"caret-forward-sharp"},null):P("ion-icon",{name:"caret-down-sharp"},null))])])),P("div",{class:o},[s,P("div",{class:[this.ns.b("content")]},[r])])}});t("IBizPanelContainerGroup",Ht(Ye,(function(t){t.component(Ye.name,Ye),st("CONTAINER_CONTAINER_GROUP",(()=>new Qe))})));function Ze(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!O(t)}const tn=b({name:"IBizPanelTabPage",props:{modelData:{type:Object,required:!0},controller:{type:rt,required:!0}},setup(t){const e=_t("panel-tab-page"),n=I((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:n}},render(){var t,e;let n;const o=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[];return P(w("iBizRow"),{class:[this.ns.b(),this.ns.m(this.modelData.codeName),this.classArr],layout:this.modelData.layout},Ze(n=o.map((t=>{const e=t.props;if(!e||!e.controller)return t;const n=e.controller;return P(w("iBizCol"),{layoutPos:n.model.layoutPos,state:n.state},Ze(t)?t:{default:()=>[t]})})))?n:{default:()=>[n]})}});class en{constructor(){this.component="IBizPanelTabPage"}async createController(t,e,n){const o=new rt(t,e,n);return await o.init(),o}}t("IBizPanelTabPage",Ht(tn,(function(t){t.component(tn.name,tn),st("TABPAGE",(()=>new en))})));class nn extends rt{getPanelItemCustomHtml(t,e){if(0===t.length)return;const n=t[0];return n.layoutPanelModel?yt.execScriptFn({data:e||{}},n.layoutPanelModel,{singleRowReturn:!0,isAsync:!1}):void 0}}const on=b({name:"IBizPanelItemRender",props:{modelData:{type:Object,required:!0},controller:{type:nn,required:!0}},setup(t){var e;const n=_t("panel-item-render"),o=_t("panel-".concat(null==(e=t.modelData.itemType)?void 0:e.toLowerCase())),{id:a}=t.modelData,r=I((()=>[n.b(),n.m(a),o.b(),n.is("hidden",!t.controller.state.visible)])),s=I((()=>t.controller.getPanelItemCustomHtml(t.modelData.controlRenders,t.controller.data)));return{ns:n,classArr:r,htmlCode:s}},render(){return P("div",{class:this.classArr,innerHTML:this.htmlCode},null)}});class an{constructor(){this.component="IBizPanelItemRender"}async createController(t,e,n){const o=new nn(t,e,n);return await o.init(),o}}t("IBizPanelItemRender",Ht(on,(function(t){t.component(on.name,on),st("PREDEFINE_RENDER",(()=>new an))})));const rn=b({name:"IBizTeleportPlaceholder",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){var e,n;const o=_t("teleport-placeholder"),a=g(""),{rawItem:r}=t.modelData;r&&r.cssStyle&&(a.value=r.cssStyle);const s=I((()=>{const{id:e}=t.modelData,n=[o.b(),o.m(e)];return n.push(...t.controller.containerClass),n})),i=t.controller.panel.view.model.codeName;let l="".concat(null==i?void 0:i.toLowerCase(),"-").concat(t.modelData.id);const c=null==(n=null==(e=t.modelData.rawItem)?void 0:e.rawItemParams)?void 0:n.find((t=>"TeleportTag"===t.key));return c&&c.value&&(l=c.value),ibiz.log.debug("视图".concat(i,"的面板成员").concat(t.modelData.id,"的占位标识是:"),l),{ns:o,classArr:s,tempStyle:a,teleportTag:l}},render(){if(this.controller.state.visible)return P("div",{id:this.teleportTag,class:this.classArr,style:this.tempStyle},null)}});class sn{constructor(){this.component="IBizTeleportPlaceholder"}async createController(t,e,n){const o=new Ee(t,e,n);return await o.init(),o}}t("TeleportPlaceholderProvider",sn);t("IBizTeleportPlaceholder",Ht(rn,(function(t){t.component(rn.name,rn),st("RAWITEM_TELEPORT_PLACEHOLDER",(()=>new sn))})));const ln=b({name:"IBizPanelContainerTabs",props:{modelData:{type:Object,required:!0},controller:{type:ee,required:!0}},setup:()=>({ns:_t("panel-container-tabs")}),render(){return y(w("IBizPanelContainer"),{...this.$props,...this.$attrs,class:this.ns.b()},this.$slots)}});class cn{constructor(){this.component="IBizPanelContainerTabs"}async createController(t,e,n){const o=new ee(t,e,n);return await o.init(),o}}t("IBizPanelContainerTabs",Ht(ln,(function(t){t.component(ln.name,ln),st("CONTAINER_TABS",(()=>new cn))}))),t("AppRedirectView",b({setup(){var t;const e=M.create((null==(t=ibiz.appData)?void 0:t.context)||{});N((()=>{e.destroy()}));const{href:n}=window.location;A((()=>ibiz.util.hiddenAppLoading())),async function(){await wt(e,n)}()},render:()=>P("div",null,[x("重定向跳转中")])}));class un{constructor(){this.component="IBizView"}}const dn=b({name:"IBizView",props:{context:Object,params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},modal:{type:Object},state:{type:Object},provider:{type:Object}},setup(t,{slots:e}){const n=_t("view"),o=Zt(((...t)=>new tt(...t))),a=Ct(o.model),r=a.filter((t=>!!bt(t))),s=a.filter((t=>!r.includes(t))),{viewType:i,sysCss:l,codeName:c}=o.model,u=i.toLowerCase(),d=null==l?void 0:l.cssName,p=I((()=>[n.b(),n.b(u),n.m(c),d,o.state.viewMessages.TOP?"has-top-message":"",o.state.viewMessages.BOTTOM?"has-bottom-message":""])),h=t=>{const e=t.name||t.id;return{context:o.context,params:o.params,...o.slotProps[e]||{},modelData:t}};return{c:o,controls:s,teleportControls:r,viewClassNames:p,onLayoutPanelCreated:t=>{o.setLayoutPanel(t)},renderViewMessage:t=>{if(o.state.isCreated){const e=o.state.viewMessages[t];if(null==e?void 0:e.length)return P(w("view-message"),{class:[n.e("".concat(t.toLowerCase(),"-message"))],messages:e},null)}return null},getCtrlProps:h,renderControl:t=>{const n=t.name||t.id,a=h(t);if(e[n])return R(e,n,a);const r=o.providers[n],s=w((null==r?void 0:r.component)||"IBizControlShell");return r&&(a.provider=r),y(s,a)}}},render(){var t,e;let n=null;if(this.c.state.isCreated)if(0===this.c.engines.length)n=P("span",{style:"color:red;"},[x("视图类型"),this.modelData.viewType,x("暂未支持")]);else{const e={...this.$slots};(null==(t=this.controls)?void 0:t.length)&&this.controls.forEach((t=>{const n=t.name||t.id;e[n]=()=>this.renderControl(t)}));const o=this.c.model.viewLayoutPanel,a=this.c.providers[o.name];n=y(w(a.component),{modelData:o,context:this.c.context,params:this.c.params,provider:a,container:this.c,onControllerAppear:this.onLayoutPanelCreated},e)}let o=null;return this.c.state.isCreated&&(null==(e=this.teleportControls)?void 0:e.length)&&(o=this.teleportControls.map((t=>{let e;return P(S,{to:bt(t),disabled:!this.c.state.activated},"function"==typeof(n=e=this.renderControl(t))||"[object Object]"===Object.prototype.toString.call(n)&&!O(n)?e:{default:()=>[e]});var n}))),D(P("div",{class:this.viewClassNames,id:this.c.id},[this.renderViewMessage("TOP"),n,this.renderViewMessage("BOTTOM"),o]),[[E("loading"),this.c.state.isLoading]])}});t("IBizView",Ht(dn,(function(t){t.component(dn.name,dn),It("DEFAULT",(()=>new un))}))),t("TodoRedirect",b({setup(){const t=K(),{href:e}=window.location,n=e.lastIndexOf("?"),o=decodeURIComponent(e.substring(n+1,e.length));if(!o)throw new Error("重定向参数不足无法跳转");const a=X.parse(o,{delimiter:";"}),{apptype:r,todotype:s,todoid:i}=a,l={srfapptype:"pc",srfapp:""};r||(l.todourltype="RouterUrl"),async function(){let e=(await ibiz.net.post("/systodos/".concat(i,"/getlinkurl"),l)).data.linkurl;r?window.location.href=e:(0!==e.indexOf("/")&&(e="/".concat(e)),e+=";srfwf=".concat(s),t.push("/index".concat(e)))}()},render:()=>P("div",null,[x("待办列表重定向")])}));class pn{constructor(){this.component="IBizPortalView"}}const hn=b({name:"IBizPortalView",props:{context:Object,params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},modal:{type:Object},state:{type:Object}},setup(){var t;const e=_t("view"),n=Zt(((...t)=>new tt(...t))),o=(null==(t=n.model.viewLayoutPanel)?void 0:t.controls)||n.model.controls,{viewType:a,sysCss:r,codeName:s}=n.model,i=a.toLowerCase(),l=null==r?void 0:r.cssName,c=[e.b(),e.b(i),e.m(s),l];return{c:n,ns:e,controls:o,viewClassNames:c}},render(){var t;let e=null;if(this.c.state.isCreated){const n={...this.$slots};(null==(t=this.controls)?void 0:t.length)&&this.controls.forEach((t=>{const e=t.name||t.id,o={context:this.c.context,params:this.c.params};this.c.slotProps[e]&&Object.assign(o,this.c.slotProps[e]);const a=n[e];if(a)return void(n[e]=()=>a({modelData:t,...o}));const r=this.c.providers[e];r&&(n[e]=()=>{const e=w(r.component);return y(e,{modelData:t,...o,provider:r})})})),n.dashboard&&(e=n.dashboard())}return P("div",{class:this.viewClassNames},[e])}}),mn=(t("IBizPortalView",Ht(hn,(function(t){t.component(hn.name,hn),It(Q.APP_PORTAL_VIEW,(()=>new pn)),It(Q.DE_PORTAL_VIEW,(()=>new pn)),It(Q.DE_PORTAL_VIEW9,(()=>new pn))}))),b({name:"IBizDeRedirectView",props:{context:{type:Object,required:!0},params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0}},setup(t){const e=Zt(((...t)=>new tt(...t))),n=g(),o=g(),a=g();return e.evt.on("onCreated",(()=>{Pt(p(t.modelData),p(e.context),p(e.params)).then((async t=>{if("view"!==t.type)throw new V("嵌入重定向视图不支持url跳转");n.value=t.viewId,o.value=t.context,a.value=t.params}))})),{c:e,toViewId:n,toViewContext:o,toViewParams:a}},render(){return this.toViewId?y(w("IBizViewShell"),{context:this.toViewContext,params:this.toViewParams,viewId:this.toViewId,...this.$attrs},this.$slots):D(P("div",{style:"width: 100%; height: 100%;"},null),[[E("loading"),!this.toViewId]])}}));class fn{constructor(){this.component="IBizDeRedirectView"}}t("IBizDeRedirectView",Ht(mn,(function(t){t.component(mn.name,mn);const e=new fn;It(Q.DE_REDIRECT_VIEW,(()=>e))})));function vn(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=yt.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}const gn=b({name:"IBizViewLayoutPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:Object},setup(t,{slots:e}){const n=kt(((...e)=>new Dt(...e,t.container))),o=_t("control-".concat(n.model.controlType.toLowerCase()));i((()=>t.data),(t=>{t&&(n.setInputData(t),n.load())}),{immediate:!0}),n.evt.on("onCreated",(()=>{Object.keys(n.panelItems).forEach((t=>{const e=n.panelItems[t];e.state=m(e.state)}))}));const a=(t,o)=>{var r,s;if(t.hidden)return null;const{providers:i,panelItems:l}=o||n,c=i[t.id];if(!c)return P("div",null,[x("暂未支持的面板项: "),t.id,x(" - "),t.itemType]);const u=w(c.component);let d;"CTRLPOS"===t.itemType&&e[t.id]?d=()=>e[t.id]():"TABPANEL"===t.itemType&&(null==(r=t.panelTabPages)?void 0:r.length)?d=()=>t.panelTabPages.map((t=>a(t,o))):ht(t)?d=void 0:(null==(s=t.panelItems)?void 0:s.length)&&(d=()=>t.panelItems.map((t=>a(t,o))));let p="";t.cssStyle&&(p=t.cssStyle);const h=l[t.id];return y(u,{modelData:t,controller:h,key:t.id,style:p,attrs:vn(t,h)},d)};return C("renderPanelItem",a),{c:n,ns:o,renderPanelItem:a}},render(){const{state:t,model:e}=this.c;return P(w("iBizControlBase"),{controller:this.c},{default:()=>[P(w("iBizRow"),{class:this.ns.b("content"),layout:{layout:"FLEX"}},{default:()=>{var n;return[t.isCreated&&(this.$slots.default?this.$slots.default({panelItems:this.c.panelItems}):null==(n=e.rootPanelItems)?void 0:n.map((t=>{let e;const n=this.c.panelItems[t.id];return t.layoutPos.layout="FLEX",P(w("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=this.renderPanelItem(t))||"[object Object]"===Object.prototype.toString.call(o)&&!O(o)?e:{default:()=>[e]});var o})))]}})]})}});class yn{constructor(){this.component="IBizViewLayoutPanelControl"}}t("IBizViewLayoutPanelControl",Ht(gn,(function(t){t.component(gn.name,gn),Et(Ot.VIEW_LAYOUT_PANEL,(()=>new yn))})));function wn(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=yt.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}function Cn(t,e,n){var o,a;if(t.hidden)return;const{providers:r,panelItems:s}=e,i=r[t.id];if(!i)return P("div",null,[x("暂未支持的面板项: "),t.id,x(" - "),t.itemType]);const l=w(i.component);let c;"CTRLPOS"===t.itemType&&n.$slots[t.id]?c=()=>n.$slots[t.id]():"TABPANEL"===t.itemType&&(null==(o=t.panelTabPages)?void 0:o.length)?c=()=>t.panelTabPages.map((t=>Cn(t,e,n))):(null==(a=t.panelItems)?void 0:a.length)&&(c=()=>t.panelItems.map((t=>Cn(t,e,n))));let u="";t.cssStyle&&(u=t.cssStyle);const d=s[t.id];return y(l,{modelData:t,controller:d,key:t.id,style:u,attrs:wn(t,d)},c)}const bn=b({name:"IBizPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:Object,loadDefault:{type:Boolean,default:!0}},setup(t){const e=kt(((...e)=>new Nt(...e,t.container))),n=_t("control-".concat(e.model.controlType.toLowerCase()));return i((()=>t.data),(t=>{t&&(e.setInputData(t),e.load())}),{immediate:!0}),e.evt.on("onCreated",(()=>{Object.keys(e.panelItems).forEach((t=>{const n=e.panelItems[t];n.state=m(n.state)}))})),{c:e,ns:n}},render(){const{state:t,model:e}=this.c;return P(w("iBizControlBase"),{controller:this.c},{default:()=>[P(w("iBizRow"),{class:this.ns.b("content"),layout:{layout:"FLEX"}},{default:()=>{var n;return[t.isCreated&&(this.$slots.default?this.$slots.default({panelItems:this.c.panelItems}):null==(n=e.rootPanelItems)?void 0:n.map((t=>{let e;const n=this.c.panelItems[t.id];return t.layoutPos.layout="FLEX",P(w("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=Cn(t,this.c,this))||"[object Object]"===Object.prototype.toString.call(o)&&!O(o)?e:{default:()=>[e]});var o})))]}})]})}});class In{constructor(){this.component="IBizPanelControl"}}t("IBizPanelControl",Ht(bn,(function(t){t.component(bn.name,bn),Et(Ot.PANEL,(()=>new In))})));function Pn(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Dn(t){if("string"!=typeof t)throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}function En(t,e){for(var n,o="",a=0,r=-1,s=0,i=0;i<=t.length;++i){if(i<t.length)n=t.charCodeAt(i);else{if(47===n)break;n=47}if(47===n){if(r===i-1||1===s);else if(r!==i-1&&2===s){if(o.length<2||2!==a||46!==o.charCodeAt(o.length-1)||46!==o.charCodeAt(o.length-2))if(o.length>2){var l=o.lastIndexOf("/");if(l!==o.length-1){-1===l?(o="",a=0):a=(o=o.slice(0,l)).length-1-o.lastIndexOf("/"),r=i,s=0;continue}}else if(2===o.length||1===o.length){o="",a=0,r=i,s=0;continue}e&&(o.length>0?o+="/..":o="..",a=2)}else o.length>0?o+="/"+t.slice(r+1,i):o=t.slice(r+1,i),a=i-r-1;r=i,s=0}else 46===n&&-1!==s?++s:s=-1}return o}var On={resolve:function(){for(var t,e="",n=!1,o=arguments.length-1;o>=-1&&!n;o--){var a;o>=0?a=arguments[o]:(void 0===t&&(t=process.cwd()),a=t),Dn(a),0!==a.length&&(e=a+"/"+e,n=47===a.charCodeAt(0))}return e=En(e,!n),n?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(t){if(Dn(t),0===t.length)return".";var e=47===t.charCodeAt(0),n=47===t.charCodeAt(t.length-1);return 0!==(t=En(t,!e)).length||e||(t="."),t.length>0&&n&&(t+="/"),e?"/"+t:t},isAbsolute:function(t){return Dn(t),t.length>0&&47===t.charCodeAt(0)},join:function(){if(0===arguments.length)return".";for(var t,e=0;e<arguments.length;++e){var n=arguments[e];Dn(n),n.length>0&&(void 0===t?t=n:t+="/"+n)}return void 0===t?".":On.normalize(t)},relative:function(t,e){if(Dn(t),Dn(e),t===e)return"";if((t=On.resolve(t))===(e=On.resolve(e)))return"";for(var n=1;n<t.length&&47===t.charCodeAt(n);++n);for(var o=t.length,a=o-n,r=1;r<e.length&&47===e.charCodeAt(r);++r);for(var s=e.length-r,i=a<s?a:s,l=-1,c=0;c<=i;++c){if(c===i){if(s>i){if(47===e.charCodeAt(r+c))return e.slice(r+c+1);if(0===c)return e.slice(r+c)}else a>i&&(47===t.charCodeAt(n+c)?l=c:0===c&&(l=0));break}var u=t.charCodeAt(n+c);if(u!==e.charCodeAt(r+c))break;47===u&&(l=c)}var d="";for(c=n+l+1;c<=o;++c)c!==o&&47!==t.charCodeAt(c)||(0===d.length?d+="..":d+="/..");return d.length>0?d+e.slice(r+l):(r+=l,47===e.charCodeAt(r)&&++r,e.slice(r))},_makeLong:function(t){return t},dirname:function(t){if(Dn(t),0===t.length)return".";for(var e=t.charCodeAt(0),n=47===e,o=-1,a=!0,r=t.length-1;r>=1;--r)if(47===(e=t.charCodeAt(r))){if(!a){o=r;break}}else a=!1;return-1===o?n?"/":".":n&&1===o?"//":t.slice(0,o)},basename:function(t,e){if(void 0!==e&&"string"!=typeof e)throw new TypeError('"ext" argument must be a string');Dn(t);var n,o=0,a=-1,r=!0;if(void 0!==e&&e.length>0&&e.length<=t.length){if(e.length===t.length&&e===t)return"";var s=e.length-1,i=-1;for(n=t.length-1;n>=0;--n){var l=t.charCodeAt(n);if(47===l){if(!r){o=n+1;break}}else-1===i&&(r=!1,i=n+1),s>=0&&(l===e.charCodeAt(s)?-1==--s&&(a=n):(s=-1,a=i))}return o===a?a=i:-1===a&&(a=t.length),t.slice(o,a)}for(n=t.length-1;n>=0;--n)if(47===t.charCodeAt(n)){if(!r){o=n+1;break}}else-1===a&&(r=!1,a=n+1);return-1===a?"":t.slice(o,a)},extname:function(t){Dn(t);for(var e=-1,n=0,o=-1,a=!0,r=0,s=t.length-1;s>=0;--s){var i=t.charCodeAt(s);if(47!==i)-1===o&&(a=!1,o=s+1),46===i?-1===e?e=s:1!==r&&(r=1):-1!==e&&(r=-1);else if(!a){n=s+1;break}}return-1===e||-1===o||0===r||1===r&&e===o-1&&e===n+1?"":t.slice(e,o)},format:function(t){if(null===t||"object"!=typeof t)throw new TypeError('The "pathObject" argument must be of type Object. Received type '+typeof t);return function(t,e){var n=e.dir||e.root,o=e.base||(e.name||"")+(e.ext||"");return n?n===e.root?n+o:n+t+o:o}("/",t)},parse:function(t){Dn(t);var e={root:"",dir:"",base:"",ext:"",name:""};if(0===t.length)return e;var n,o=t.charCodeAt(0),a=47===o;a?(e.root="/",n=1):n=0;for(var r=-1,s=0,i=-1,l=!0,c=t.length-1,u=0;c>=n;--c)if(47!==(o=t.charCodeAt(c)))-1===i&&(l=!1,i=c+1),46===o?-1===r?r=c:1!==u&&(u=1):-1!==r&&(u=-1);else if(!l){s=c+1;break}return-1===r||-1===i||0===u||1===u&&r===i-1&&r===s+1?-1!==i&&(e.base=e.name=0===s&&a?t.slice(1,i):t.slice(s,i)):(0===s&&a?(e.name=t.slice(1,r),e.base=t.slice(1,i)):(e.name=t.slice(s,r),e.base=t.slice(s,i)),e.ext=t.slice(r,i)),s>0?e.dir=t.slice(0,s-1):a&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};On.posix=On;var Nn=On,An=Pn(Nn);t("PluginFactory",class{constructor(){this.urlReg=/^http[s]?:\/\/[^\s]*/,this.cache=new Map,this.pluginCache=new Map,this.pluginCodes=[],this.predefinedPlugins=new Map,this.ignoreRules=[],this.loadQueue=new Map}isIgnore(t){return this.ignoreRules.some((e=>"string"==typeof e?t===e:e.test(t)))}setDevIgnore(t){this.ignoreRules.push(t)}registerPredefinedPlugin(t){this.predefinedPlugins.set(t.name,t)}register(t){this.pluginCodes.forEach((e=>{t.use(e)}))}async loadPredefinedPlugin(t){if(this.predefinedPlugins.has(t)){const e=this.predefinedPlugins.get(t);e&&await this.loadPluginRef(e.name,e.path)}}setPluginCode(t){this.pluginCodes.push(t),Rt.useComponent.callSync(null,t)}async loadPlugin(t){if(!0===t.runtimeObject){const e=t;if(e){const t=e.rtobjectName,n=e.rtobjectRepo;if(this.isIgnore(n))return!0;if(this.pluginCache.has(t))return!0;if(this.loadQueue.has(n)){const t=await this.loadQueue.get(n);try{return await t}catch(t){return!1}}try{const t=this.loadPluginRef(e.rtobjectName,e.rtobjectRepo);this.loadQueue.set(n,t);return await t}catch(t){throw new G(e,"配置加载失败")}finally{this.loadQueue.delete(n)}}}return!1}async loadPluginRef(t,e){if(this.isIgnore(e))return!0;if(this.pluginCache.has(t))return!0;let n=null;{const t=e,o=this.urlReg.test(t)?"".concat(t,"/package.json"):"".concat(ibiz.env.pluginBaseUrl,"/").concat(Nn.join(t,"package.json")),a=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:o});if(200!==a.status)throw new Error("配置加载失败");n=a.data}const o=new At(t,e,n);if(o){await this.loadPluginExternal(o.config);try{return await this.loadScript(o),this.pluginCache.set(t,o),!0}catch(t){ibiz.log.error(t)}}return!1}async loadScript(t){const e=t.repo,{name:n,system:o,styles:a=[]}=t.config;let r="";if(r=Nn.join(e,o),r){if(this.cache.has(r))return;let t=null;const o=this.parseUrl(r),s=("string"==typeof a?[a]:a).map((t=>this.parseUrl(An.join(e,t))));if(System.addImportMap({imports:{[n]:o},styles:{[n]:s}}),t=await System.import(n),!t)throw new V("远程插件加载失败, 未找到文件或文件内容格式不正确");if(!t.default)throw new V("远程插件加载失败, 远程插件未找到[default]默认导出");this.setPluginCode(t.default),this.cache.set(r,!0)}}parseUrl(t,e=ibiz.env.pluginBaseUrl){if(this.urlReg.test(t))return t;let n="";n=this.urlReg.test(e)?t.startsWith("/")?e+t:"".concat(e,"/").concat(t):"".concat(Nn.join(e,t));const{origin:o,pathname:a}=window.location;return a.endsWith("/")&&n.startsWith("/")&&(n=n.substring(1)),!1===this.urlReg.test(n)&&(n="".concat(o).concat(a).concat(n)),n}async loadPluginExternal(t){if(!t["systemjs-importmap"])return;const e=this.handleSystemImportMap(t["systemjs-importmap"]);if(e.packages){const t=e.packages;for(const e in t){const n=t[e],o=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:n});if(200!==o.status)throw new Error("配置加载失败");await this.loadPluginExternal(o.data)}}System.addImportMap(e)}handleSystemImportMap(t){if(t){if(t.packages){const e=t.packages;for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=e[n];e[n]=this.parseUrl(o,t.baseUrl)}}if(t.imports){const e=t.imports;for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=e[n];e[n]=this.parseUrl(o,t.baseUrl)}}if(t.styles){const e=t.styles;for(const n in e)if(Object.prototype.hasOwnProperty.call(e,n)){const o=e[n];e[n]="string"==typeof o?this.parseUrl(o,t.baseUrl):o.map((e=>this.parseUrl(e,t.baseUrl)))}}return t}return null}});class xn{constructor(t,e,n){this.required=!0,e&&(this.default=e),n&&(this.validator=n),this.type=t}}function Sn(){return{value:String,controller:new xn(Object),data:new xn(Object),disabled:{type:Boolean},readonly:{type:Boolean,default:!1},autoFocus:{type:Boolean,default:!1},overflowMode:{type:String},controlParams:{type:Object,required:!1}}}function Rn(){return{hasError:{type:Boolean}}}function Tn(){return{...Sn(),value:[String,Number]}}function zn(){return{...Sn(),value:Number}}function Bn(){return{...Sn(),value:String}}function jn(){return{...Sn(),value:[String,Number,Object,Array]}}function Vn(){return{...Sn(),value:[String,Number]}}function Ln(){return{...Sn(),value:[String,Number]}}function kn(){return{...Sn(),value:[String,Number]}}function Mn(){return{...Sn(),value:[String,Array,Object,Number]}}function _n(){return{...Sn(),value:[String,Number]}}function Gn(){return{...Sn(),value:[String,Number]}}function Wn(){return{...Sn(),value:[String,Number]}}function qn(){return{...Sn(),value:[String,Number]}}function $n(){return{...Sn(),value:[String,Number]}}function Un(){return{...Sn(),value:[String,Number]}}function Fn(){return{...Sn(),value:[String,Number,Array]}}function Kn(){return{...Sn(),value:[String,Number]}}function Hn(){return{...Sn(),value:[String,Number]}}function Xn(){return{...Sn(),value:[String,Number]}}function Qn(){return{...Sn(),value:String}}function Jn(){return{...Sn(),value:[String,Number]}}function Yn(){return{...Sn(),value:String,language:{type:String},theme:{type:String}}}function Zn(){return{...Sn(),value:String}}function to(){return{...Sn(),data:{type:Object,required:!1},controller:{type:Object,required:!1},disabled:{type:Boolean,required:!1}}}function eo(){return{...Sn(),value:[Array,Array]}}function no(){return{...Sn(),value:String}}function oo(){return{...Sn(),value:String}}t("RequiredProp",xn)}}}));
@@ -64,7 +64,7 @@ function renderPanelItem(panelItem, c, ins) {
64
64
  controller: panelItemC,
65
65
  key: panelItem.id,
66
66
  style: tempStyle,
67
- ...renderAttrs(panelItem, panelItemC)
67
+ attrs: renderAttrs(panelItem, panelItemC)
68
68
  }, children);
69
69
  }
70
70
  const PanelControl = /* @__PURE__ */ defineComponent({
@@ -109,7 +109,7 @@ const ViewLayoutPanelControl = /* @__PURE__ */ defineComponent({
109
109
  controller: panelItemC,
110
110
  key: panelItem.id,
111
111
  style: tempStyle,
112
- ...renderAttrs(panelItem, panelItemC)
112
+ attrs: renderAttrs(panelItem, panelItemC)
113
113
  }, children);
114
114
  };
115
115
  provide("renderPanelItem", renderPanelItem);
package/es/index.mjs CHANGED
@@ -51,6 +51,9 @@ export { PanelContainerGroupController } from './panel-component/panel-container
51
51
  export { IBizPanelContainerGroup } from './panel-component/panel-container-group/index.mjs';
52
52
  export { IBizPanelTabPage } from './panel-component/panel-tab-page/index.mjs';
53
53
  export { IBizPanelItemRender } from './panel-component/panel-item-render/index.mjs';
54
+ export { TeleportPlaceholderProvider } from './panel-component/teleport-placeholder/teleport-placeholder.provider.mjs';
55
+ export { IBizTeleportPlaceholder } from './panel-component/teleport-placeholder/index.mjs';
56
+ export { IBizPanelContainerTabs } from './panel-component/panel-container-tabs/index.mjs';
54
57
  export { AppRedirectView } from './view/app-redirect-view/app-redirect-view.mjs';
55
58
  export { IBizView } from './view/common/index.mjs';
56
59
  export { TodoRedirect } from './view/todo-redirect/todo-redirect.mjs';
@@ -11,4 +11,6 @@ export * from './panel-container-image';
11
11
  export * from './panel-container-group';
12
12
  export * from './panel-tab-page';
13
13
  export * from './panel-item-render';
14
+ export * from './teleport-placeholder';
15
+ export * from './panel-container-tabs';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/panel-component/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/panel-component/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
@@ -11,6 +11,8 @@ export { IBizPanelContainerImage } from './panel-container-image/index.mjs';
11
11
  export { IBizPanelContainerGroup } from './panel-container-group/index.mjs';
12
12
  export { IBizPanelTabPage } from './panel-tab-page/index.mjs';
13
13
  export { IBizPanelItemRender } from './panel-item-render/index.mjs';
14
+ export { IBizTeleportPlaceholder } from './teleport-placeholder/index.mjs';
15
+ export { IBizPanelContainerTabs } from './panel-container-tabs/index.mjs';
14
16
  export { PanelContainerState } from './panel-container/panel-container.state.mjs';
15
17
  export { PanelContainerController } from './panel-container/panel-container.controller.mjs';
16
18
  export { PanelCtrlPosController } from './panel-ctrl-pos/panel-ctrl-pos.controller.mjs';
@@ -32,5 +34,6 @@ export { PanelContainerImageState } from './panel-container-image/panel-containe
32
34
  export { PanelContainerImageController } from './panel-container-image/panel-container-image.controller.mjs';
33
35
  export { PanelContainerGroupState } from './panel-container-group/panel-container-group.state.mjs';
34
36
  export { PanelContainerGroupController } from './panel-container-group/panel-container-group.controller.mjs';
37
+ export { TeleportPlaceholderProvider } from './teleport-placeholder/teleport-placeholder.provider.mjs';
35
38
 
36
39
  "use strict";
@@ -0,0 +1,23 @@
1
+ export declare const IBizPanelContainerTabs: import("../../util").TypeWithInstall<import("vue").DefineComponent<{
2
+ modelData: {
3
+ type: import("vue").PropType<import("@ibiz/model-core").IPanelContainer>;
4
+ required: true;
5
+ };
6
+ controller: {
7
+ type: typeof import("..").PanelContainerController;
8
+ required: true;
9
+ };
10
+ }, {
11
+ ns: import("@ibiz-template/core").Namespace;
12
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
13
+ modelData: {
14
+ type: import("vue").PropType<import("@ibiz/model-core").IPanelContainer>;
15
+ required: true;
16
+ };
17
+ controller: {
18
+ type: typeof import("..").PanelContainerController;
19
+ required: true;
20
+ };
21
+ }>>, {}, {}>>;
22
+ export default IBizPanelContainerTabs;
23
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/panel-component/panel-container-tabs/index.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;aASlC,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
@@ -0,0 +1,19 @@
1
+ import { registerPanelItemProvider } from '@ibiz-template/runtime';
2
+ import '../../util/index.mjs';
3
+ import { PanelContainerTabs } from './panel-container-tabs.mjs';
4
+ import { PanelContainerTabsProvider } from './panel-container-tabs.provider.mjs';
5
+ import { withInstall } from '../../util/install.mjs';
6
+
7
+ "use strict";
8
+ const IBizPanelContainerTabs = withInstall(
9
+ PanelContainerTabs,
10
+ function(v) {
11
+ v.component(PanelContainerTabs.name, PanelContainerTabs);
12
+ registerPanelItemProvider(
13
+ "CONTAINER_TABS",
14
+ () => new PanelContainerTabsProvider()
15
+ );
16
+ }
17
+ );
18
+
19
+ export { IBizPanelContainerTabs, IBizPanelContainerTabs as default };
@@ -0,0 +1 @@
1
+ .ibiz-panel-container-tabs{position:relative}.ibiz-panel-container-tabs .el-tabs{--el-tabs-header-height:52px}.ibiz-panel-container-tabs .el-tabs__nav-wrap::after{display:none}.ibiz-panel-container-tabs::after{position:absolute;bottom:0;left:0;z-index:var(--el-index-normal);width:100%;height:2px;content:"";background-color:var(--el-border-color-light)}
@@ -0,0 +1,26 @@
1
+ import { IPanelContainer } from '@ibiz/model-core';
2
+ import { PropType } from 'vue';
3
+ import './panel-container-tabs.scss';
4
+ import { PanelContainerController } from '../panel-container/panel-container.controller';
5
+ export declare const PanelContainerTabs: import("vue").DefineComponent<{
6
+ modelData: {
7
+ type: PropType<IPanelContainer>;
8
+ required: true;
9
+ };
10
+ controller: {
11
+ type: typeof PanelContainerController;
12
+ required: true;
13
+ };
14
+ }, {
15
+ ns: import("@ibiz-template/core").Namespace;
16
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
17
+ modelData: {
18
+ type: PropType<IPanelContainer>;
19
+ required: true;
20
+ };
21
+ controller: {
22
+ type: typeof PanelContainerController;
23
+ required: true;
24
+ };
25
+ }>>, {}, {}>;
26
+ //# sourceMappingURL=panel-container-tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panel-container-tabs.d.ts","sourceRoot":"","sources":["../../../src/panel-component/panel-container-tabs/panel-container-tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAsB,QAAQ,EAAoB,MAAM,KAAK,CAAC;AAErE,OAAO,6BAA6B,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAEzF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;YA6B7B,CAAC"}