@ibiz-template/vue3-util 0.7.41-alpha.17 → 0.7.41-alpha.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.min.css +1 -1
- package/dist/index.system.min.js +1 -1
- package/es/common/badge/badge.css +1 -1
- package/es/common/view-shell/view-shell.d.ts +8 -1
- package/es/common/view-shell/view-shell.d.ts.map +1 -1
- package/es/common/view-shell/view-shell.mjs +12 -2
- package/es/control/panel/view-layout-panel/view-layout-panel.d.ts +1 -1
- package/es/control/panel/view-layout-panel/view-layout-panel.d.ts.map +1 -1
- package/es/panel-component/multi-data-container/multi-data-container.d.ts +1 -1
- package/es/panel-component/multi-data-container/multi-data-container.d.ts.map +1 -1
- package/es/panel-component/multi-data-container-raw/multi-data-container-raw.d.ts +1 -1
- package/es/panel-component/multi-data-container-raw/multi-data-container-raw.d.ts.map +1 -1
- package/es/panel-component/single-data-container/single-data-container.d.ts +1 -1
- package/es/panel-component/single-data-container/single-data-container.d.ts.map +1 -1
- package/es/util/install.d.ts.map +1 -1
- package/es/util/overlay-container/overlay-container.d.ts +1 -1
- package/es/util/overlay-container/overlay-container.d.ts.map +1 -1
- package/es/util/overlay-container/overlay-container.mjs +7 -2
- package/es/util/overlay-view-util/overlay-view-util.d.ts +2 -2
- package/es/util/overlay-view-util/overlay-view-util.d.ts.map +1 -1
- package/es/util/overlay-view-util/overlay-view-util.mjs +2 -1
- package/es/util/route/route.d.ts.map +1 -1
- package/es/util/route/route.mjs +9 -0
- package/lib/common/badge/badge.css +1 -1
- package/lib/common/view-shell/view-shell.cjs +12 -2
- package/lib/util/overlay-container/overlay-container.cjs +7 -2
- package/lib/util/overlay-view-util/overlay-view-util.cjs +2 -1
- package/lib/util/route/route.cjs +9 -0
- package/package.json +4 -4
package/dist/index.min.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-
|
|
1
|
+
.ibiz-control-shell{position:relative;width:100%;height:100%}.ibiz-control{--ibiz-control-base-scrollbar-width:0px;--ibiz-control-base-mask-text-color:var(--ibiz-color-primary-text);--ibiz-control-base-mask-background-color-blank:transparent;--ibiz-control-base-mask-background-color-mask:rgba(0, 0, 0, 0.5);width:100%;height:100%}.ibiz-control__control-render{width:100%;height:100%}.ibiz-control.is-disabled{position:relative}.ibiz-control__mask-container{position:absolute;top:0;left:0;z-index:10;width:calc(100% - var(--ibiz-control-base-scrollbar-width));height:100%}.ibiz-control--blank{background-color:var(--ibiz-control-base-mask-background-color-blank)}.ibiz-control--mask{color:var(--ibiz-control-base-mask-text-color);background-color:var(--ibiz-control-base-mask-background-color-mask);display:flex;align-items:center;justify-content:center}.ibiz-badge{--ibiz-badge-bg-color:var(--ibiz-color-danger);--ibiz-badge-height:18px;--ibiz-badge-border-radius:10px;display:inline-flex;align-items:center;justify-content:center;width:auto;height:var(--ibiz-badge-height);padding:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-small);line-height:normal;color:var(--ibiz-color-danger-text);white-space:nowrap;background-color:var(--ibiz-badge-bg-color);border:1px solid rgba(0,0,0,0);border-radius:var(--ibiz-badge-border-radius)}.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-custom-render{width:100%;height:100%}.ibiz-view-shell{position:relative;width:100%;height:100%}.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-icon{--ibiz-icon-emoji-space:-3px}.ibiz-icon__emoji{position:relative;left:var(--ibiz-icon-emoji-space)}.ibiz-panel-container{--ibiz-panel-scroll:auto;width:100%;height:100%}.ibiz-panel-container>.ibiz-row{height:100%;overflow:hidden var(--ibiz-panel-scroll)}.ibiz-panel-container.is-hidden{display:none}.ibiz-panel-ctrl-pos{width:100%;height:100%}.ibiz-panel-ctrl-pos.is-hidden{display:none}.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__center>.ibiz-scroll-container-item>.ibiz-col{flex:none}.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-multi-data-container-raw{width:100%;height:100%}.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-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-single-data-container{width:100%;height:100%}.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%;position:relative}.ibiz-panel-field__error{left:0;top:100%;line-height:1;font-size:var(--ibiz-font-size-small);padding-top:var(--ibiz-spacing-super-tight);position:absolute;color:var(--ibiz-color-danger)}.ibiz-panel-field.is-error .el-input__wrapper{box-shadow:0 0 0 1px var(--ibiz-color-danger) inset}.ibiz-panel-field .ibiz-panel-field-content{line-height:inherit}.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__caption--icon{padding-right:var(--ibiz-spacing-tight)}.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-auth-wxmp-qrcode{width:100%;height:100%}.ibiz-auth-wxmp-qrcode__content{position:relative;width:100%;height:100%}.ibiz-auth-wxmp-qrcode__qrcode{width:100%;height:100%;object-fit:contain}.ibiz-auth-wxmp-qrcode__caption{font-size:var(--ibiz-font-size-small);text-align:center}.ibiz-auth-wxmp-qrcode__mask{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--ibiz-color-primary);background-color:rgba(255,255,255,.9)}.ibiz-auth-wxmp-qrcode__mask--icon{font-size:var(--ibiz-font-size-header-1);cursor:pointer}.ibiz-auth-wxmp-qrcode__mask--icon:hover{color:var(--ibiz-color-primary-hover)}.ibiz-teleport-placeholder{width:auto;height:auto}.ibiz-teleport-placeholder>div:not(:last-child){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:"--ibiz-spacing-super-tight";content:"";background-color:var(--el-border-color-light)}.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-view-dehtmlview>iframe{width:100%;height:100%;border:0}.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%}
|
package/dist/index.system.min.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
System.register(["qx-util","vue","@ibiz-template/core","ramda","@ibiz-template/runtime","vue-router","qs","pinia","lodash-es"],(function(t){"use strict";var e,n,o,a,i,r,s,l,c,d,u,p,h,m,v,f,g,y,w,b,C,I,P,D,E,N,O,A,x,T,S,z,R,L,B,j,V,k,M,U,_,F,q,G,W,$,K,H,Q,X,Y,J,Z,tt,et,nt,ot,at,it,rt,st,lt,ct,dt,ut,pt,ht,mt,vt,ft,gt,yt,wt,bt,Ct,It,Pt,Dt,Et,Nt,Ot,At,xt,Tt,St,zt,Rt,Lt,Bt,jt,Vt,kt,Mt,Ut,_t,Ft,qt,Gt,Wt,$t,Kt,Ht,Qt,Xt,Yt,Jt,Zt,te;return{setters:[function(t){e=t.SyncSeriesHook,n=t.AsyncSeriesHook,o=t.isFunc,a=t.notNilEmpty,i=t.QXEvent,r=t.clearAll,s=t.createUUID},function(t){l=t.watch,c=t.onBeforeUnmount,d=t.createCommentVNode,u=t.getCurrentInstance,p=t.isReactive,h=t.toRaw,m=t.inject,v=t.reactive,f=t.onActivated,g=t.onDeactivated,y=t.ref,w=t.h,b=t.resolveComponent,C=t.provide,I=t.onMounted,P=t.onUnmounted,D=t.isRef,E=t.shallowRef,N=t.watchEffect,O=t.computed,A=t.defineComponent,x=t.createVNode,T=t.withDirectives,S=t.resolveDirective,z=t.mergeProps,R=t.isVNode,L=t.Teleport,B=t.renderSlot,j=t.onBeforeMount},function(t){V=t.onClickOutside,k=t.NOOP,M=t.listenJSEvent,U=t.Namespace,_=t.RuntimeError,F=t.isBase64Image,q=t.isBase64,G=t.base64ToStr,W=t.isSvg,$=t.fixJsonString,K=t.IBizContext,H=t.ModelError,Q=t.RuntimeModelError,X=t.setAppCookie,Y=t.CoreConst,J=t.clearAppCookie,Z=t.StringUtil},function(t){tt=t.isNil,et=t.isNotNil,nt=t.clone,ot=t.isEmpty,at=t.mergeLeft},function(t){it=t.MDControlTypes,rt=t.ViewType,st=t.RouteConst,lt=t.getMatchResPath,ct=t.calcDeCodeNameById,dt=t.PredefinedControlRender,ut=t.ScriptFactory,pt=t.ViewController,ht=t.getControlProvider,mt=t.getErrorViewProvider,vt=t.calcDynaSysParams,ft=t.getViewProvider,gt=t.useCalcOrMode,yt=t.calcThresholdRange,wt=t.PanelItemState,bt=t.PanelItemController,Ct=t.registerPanelItemProvider,It=t.Modal,Pt=t.ViewMode,Dt=t.OpenAppViewCommand,Et=t.getEditorProvider,Nt=t.PanelItemEventName,Ot=t.calcDynaClass,At=t.getAllPanelField,xt=t.isDataContainer,Tt=t.PanelNotifyState,St=t.getPanelItemProvider,zt=t.convertNavData,Rt=t.PanelData,Lt=t.execDELogicById,Bt=t.toLocalOpenWFRedirectView,jt=t.getControlsByView,Vt=t.getCtrlTeleportParams,kt=t.AppDataUploadViewController,Mt=t.MDCustomViewController,Ut=t.registerViewProvider,_t=t.getDERedirectToView,Ft=t.ViewLayoutPanelController,qt=t.isSimpleDataContainer,Gt=t.registerControlProvider,Wt=t.ControlType,$t=t.PanelController,Kt=t.RemotePluginItem},function(t){Ht=t.useRoute,Qt=t.useRouter,Xt=t.RouterView},function(t){Yt=t.default},function(t){Jt=t.defineStore,Zt=t.createPinia},function(t){te=t.isNumber}],execute:function(){t({calcResRoutePath:fe,computedAsync:function(t,e,n){let o;o=D(n)?{evaluating:n}:n||{};const{lazy:a=!1,flush:i="pre",evaluating:r,shallow:s=!0,onError:l=k}=o,c=E(!a),d=s?E(e):y(e);let u=0;if(N((async e=>{if(!c.value)return;u++;const n=u;let o=!1;r&&Promise.resolve().then((()=>{r.value=!0}));try{const a=await t((t=>{e((()=>{r&&(r.value=!1),o||t()}))}));n===u&&(d.value=a)}catch(t){l(t)}finally{r&&n===u&&(r.value=!1),o=!0}}),{flush:i}),a)return O((()=>(c.value=!0,d.value)));return d},createOverlayView:Ce,generateRoutePath:async function(t,e,n,o){const a=ue(e);let i=n.srfdefaulttoroutedepth||2;n.toRouteDepth?(i=n.toRouteDepth,n.toRouteDepth=void 0):ibiz.env.isMob&&"DEFAULT"===ibiz.env.mobMenuShowMode&&(a.pathNodes[0]={viewName:"home"});if(a.pathNodes.splice(i-1,a.pathNodes.length-i+1),n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}me(n,a.pathNodes),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:he(n),params:o}),2===i&&(await fe(a,n,t.appDataEntityId,t.appId),ve.includes(t.viewType))){const e=ct(t.appDataEntityId);delete a.pathNodes[0].context[e]}return{path:pe(a)}},generateRoutePathByModal:async function(t,e,n,o){const a=ue(e),i=a.pathNodes.findIndex((t=>t.viewName===st.ROUTE_MODAL_TAG));-1!==i&&(a.pathNodes=a.pathNodes.slice(0,i));if(n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}return me(n,a.pathNodes),a.pathNodes.push({viewName:"".concat(st.ROUTE_MODAL_TAG,"/").concat(t.codeName.toLowerCase()),context:he(n),params:o}),{path:pe(a)}},getArrayProps:$o,getAutoCompleteProps:Fo,getCascaderProps:Ko,getCheckboxListProps:Oo,getCheckboxProps:Ao,getCodeProps:qo,getColorPickerProps:Ho,getDataPickerProps:xo,getDatePickerProps:To,getDateRangeProps:So,getDateRangeSelectEmits:function(){return{change:(t,e,n)=>!0,blur:t=>!0,focus:t=>!0,enter:t=>!0,infoTextChange:t=>!0,change:(t,e,n)=>!0}},getDateRangeSelectProps:zo,getDrawerPlacement:function(t){return Ie[t]||"right"},getDropdownProps:No,getEditorEmits:Io,getEditorProps:Co,getGridArrayProps:function(){return{...$o(),...Po()}},getGridAutoCompleteProps:function(){return{...Fo(),...Po()}},getGridCascaderProps:function(){return{...Ko(),...Po()}},getGridCheckboxListProps:function(){return{...Oo(),...Po()}},getGridCheckboxProps:function(){return{...Ao(),...Po()}},getGridCodeProps:function(){return{...qo(),...Po()}},getGridColorPickerProps:function(){return{...Ho(),...Po()}},getGridDataPickerProps:function(){return{...xo(),...Po()}},getGridDatePickerProps:function(){return{...To(),...Po()}},getGridDateRangeProps:function(){return{...So(),...Po()}},getGridDateRangeSelectProps:function(){return{...Po(),...zo()}},getGridDropdownProps:function(){return{...No(),...Po()}},getGridEditorCommonProps:Po,getGridEditorEmits:function(){return{change:(t,e,n)=>!0,rowSave:()=>!0}},getGridHtmlProps:function(){return{...Go(),...Po()}},getGridInputIpProps:function(){return{...Qo(),...Po()}},getGridInputNumberProps:function(){return{...Xo(),...Po()}},getGridInputProps:function(){return{...Do(),...Po()}},getGridListBoxProps:function(){return{...Ro(),...Po()}},getGridMapPickerProps:function(){return{...Yo(),...Po()}},getGridMarkDownProps:function(){return{...Wo(),...Po()}},getGridNumberRangeProps:function(){return{...Lo(),...Po()}},getGridRadioProps:function(){return{...Bo(),...Po()}},getGridRateProps:function(){return{...jo(),...Po()}},getGridRawProps:function(){return{...Vo(),...Po()}},getGridSliderProps:function(){return{...ko(),...Po()}},getGridSpanProps:function(){return{...Eo(),...Po()}},getGridStepperProps:function(){return{...Mo(),...Po()}},getGridSwitchProps:function(){return{...Uo(),...Po()}},getGridUploadProps:function(){return{..._o(),...Po()}},getHtmlProps:Go,getInputIpProps:Qo,getInputNumberProps:Xo,getInputProps:Do,getListBoxProps:Ro,getMapPickerProps:Yo,getMarkDownProps:Wo,getNestedRoutePath:ge,getNumberRangeProps:Lo,getOrigin:ae,getOwnRouteContext:he,getRadioProps:Bo,getRateProps:jo,getRawProps:Vo,getSliderProps:ko,getSpanProps:Eo,getStepperProps:Mo,getSwitchProps:Uo,getUploadProps:_o,isEmptyVNode:function(t){if(!Array.isArray(t))return t===re;return 1===t.length&&t[0]===re},onRouteChange:function(t,e){const n=Ht();if(!n)throw new _(ibiz.i18n.t("vue3Util.util.routeCorrectly"));l((()=>null==n?void 0:n.fullPath),(()=>{const o=ge(n,e);t({currentKey:o,fullPath:n.fullPath})}),{immediate:!0})},openViewDrawer:async function(t,e){const n=ibiz.overlay.createDrawer(Ce(t),void 0,e);await n.present();return await n.onWillDismiss()||{ok:!1}},openViewFloatWindow:async function(t,e){const n=ibiz.overlay.createFloatWindow(Ce(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewModal:async function(t,e){const n=ibiz.overlay.createModal(Ce(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewPopover:async function(t,e,n){const o=ibiz.overlay.createPopover(Ce(e),void 0,n);o.present(t.target);return await o.onWillDismiss()||{ok:!1}},parseRouteViewData:async function(t,e,n=!1){var o;const i=ue(t,n);let r=i.pathNodes[e-1].viewName;if(!r)throw new _(ibiz.i18n.t("vue3Util.util.viewIdentifiers",{depth:e}));r===st.ROUTE_MODAL_TAG&&(r=i.pathNodes[e].viewName);"index"===r&&(r=ibiz.hub.defaultAppIndexViewName);const s=await ibiz.hub.config.view.get(r);if(!s)throw new _(ibiz.i18n.t("vue3Util.util.noFoundView",{viewCodeName:r}));const l={};(null==(o=ibiz.appData)?void 0:o.context)&&Object.assign(l,ibiz.appData.context);i.appContext&&Object.assign(l,i.appContext);if(1!==e)for(let t=0;t<e;t++){const n=i.pathNodes[t];a(n.context)&&Object.assign(l,n.context),t!==e-1||n.context&&!tt(n.context.srfnavctrlid)||delete l.srfnavctrlid}const{params:c,srfnav:d}=i.pathNodes[e-1];return{viewConfig:s,context:l,params:c,srfnav:d}},prepareControl:function(t){const e=de("control"),{controlType:n,sysCss:o,codeName:a}=t.model,i=n.toLowerCase(),r=null==o?void 0:o.cssName,s=de("control-".concat(i)),l=[e.b(),e.b(i),e.m(a)];r&&l.push(r);return{controlClass:l,ns:s}},renderString:function(t){if(tt(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,ibiz.i18n.t("vue3Util.util.convertString"),e)}return""},route2routePath:ue,routePath2string:pe,shareCommonAncestor:Oe,useAutoFocusBlur:function(t,e){return{useInFocusAndBlur:()=>{t.autoFocus||e("blur")},useInValueChange:()=>{t.autoFocus&&e("blur")}}},useClickOutside:ne,useCodeListListen:function(t,e,n){let o;I((async()=>{if(t){const a=await ibiz.hub.getApp(e);o=await a.codeList.getCodeListInstance(t),o&&o.onChange(n)}})),P((()=>{o&&o.offChange(n)}))},useControlController:le,useController:function(t){t.force=ie()},useCtx:se,useEventListener:ce,useFocusAndBlur:function(t,e){const n=y(),o=y(!1);let a;const i=()=>{o.value||ibiz.log.debug(ibiz.i18n.t("vue3Util.use.focusBlur.noFocus")),e(),a.stop(),o.value=!1};return ce(n,"click",(e=>{o.value||(a=ne(n,(()=>{i()})),o.value=!0,t())}),{capture:!0}),{componentRef:n,isFocus:o,doBlur:i,pause:()=>{a&&a.pause()},stop:()=>{a&&a.stop()}}},useForce:ie,useForceTogether:function(t,e){const n=e.force,o=ie();e.force=t=>{n(t),o()}},useLocalCacheKey:function(t,e,n,o="@",a=""){const i=Qt();return()=>{if(!i)return;const r=t.srfuserid;if(n=t.srfdefaulttoroutedepth||n){const t=ue(i.currentRoute.value);if(r&&t.pathNodes[n-2]){t.pathNodes=t.pathNodes.slice(0,n-1),t.pathNodes.forEach((t=>{t.context&&delete t.context.srfnavctrlid}));const a=pe(t);return"".concat(e).concat(o).concat(r).concat(o).concat(a)}}return a?"".concat(e).concat(o).concat(r).concat(o).concat(a):void 0}},useMobCtx:function(){return m("ctx")},useNamespace:de,usePopoverVisible:function(t,e){let n;const o=y(!1);return l((()=>t.value),(a=>{a&&!n&&(n=M(window,"click",(n=>{if(o.value&&t.value){Oe(e(t.value),n.target)&&(o.value=!1)}}),{capture:!0}))}),{immediate:!0}),P((()=>{null==n||n()})),{popoverVisible:o,setPopoverVisible:t=>{o.value=t}}},usePopoverzIndex:function(){const t="popover_".concat(s());return{popoverid:t,setPopoverZIndex:e=>{const{zIndex:n}=De(),o=document.getElementsByClassName(t),a=n.increment();if(o&&o.length>0&&e)for(let t=0;t<o.length;t++)o[t].style.setProperty(e,"".concat(a))}}},useProps:oe,usePropsWatch:function(t,e,n){const o=oe();Object.prototype.hasOwnProperty.call(o,t)&&(l((()=>o[t]),((t,n)=>{e(ae(t),ae(n))}),n),e(ae(o[t]),void 0))},useRouteKey:function(t,e,n){n||(n=y(""));n.value=t.value;const o=new ye(e);return l(t,((t,e)=>{t!==e&&o.nextChange((()=>{n.value=t}))})),n},useRouterQuery:function(){const t=Ht(),{query:e}=t;return e},useViewController:Ee,useViewOperation:Ne});class ee{}function ne(t,e,n={}){let o=k,a=k,i=k;const r=()=>{o(),o=k,a=k,i=k};return l(t,((t,s)=>{if(t!==s)if(tt(t))r();else{const r=V((null==t?void 0:t.$el)||t,e,n);o=r.stop,a=r.pause,i=r.proceed}}),{immediate:!0}),c((()=>{o!==k&&r()})),{stop:()=>o(),pause:()=>a(),proceed:()=>i()}}function oe(){return u().proxy.$props}function ae(t){return p(t)?h(t):t}function ie(){const t=u().proxy;return e=>{t.$forceUpdate(),e&&o(e)&&t.$nextTick((()=>{e()}))}}t("AppHooks",ee),ee.createApp=new e,ee.useComponent=new e,ee.appResorceInited=new n,ee.beforeInitApp=new n,ee.authedApp=new n,ee.initedApp=new n,ee.destoryApp=new n;const re=t("EmptyVNode",d("EmptyVNode"));function se(){return m("ctx")}function le(t,e){const n=se(),o=oe();n.evt.emit("onForecast",o.modelData.name);const a=o.provider;let i;i=(null==a?void 0:a.createController)?a.createController(o.modelData,o.context,o.params,n):t(o.modelData,o.context,o.params,n),-1!==it.indexOf(i.model.controlType)&&ibiz.util.record.add(i.ctrlId,i),function(t,e){l((()=>({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(ibiz.i18n.t("vue3Util.use.control.parameterChanges",{id:e.model.id}),t)}))}(o,i),function(t,e,n=[]){const o=["context","params","modelData",...n];l((()=>{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(ibiz.i18n.t("vue3Util.use.control.stateChange",{name:e.model.name}),o),Object.keys(o).forEach((t=>{void 0!==o[t]&&(e.state[t]=o[t])}))}),{immediate:!0})}(o,i,null==e?void 0:e.excludePropsKeys),i.state=v(i.state),f((()=>i.onActivated())),g((()=>i.onDeactivated())),i.force=ie();const r=u().proxy;return i.evt.onAll(((t,e)=>{r.$emit(t.slice(2),e)})),r.$emit("controllerAppear",i),i.created(),c((()=>{i.destroyed(),-1!==it.indexOf(i.model.controlType)&&ibiz.util.record.remove(i.ctrlId)})),i}function ce(t,e,n,o={}){let a=k;return l(t,((t,i)=>{t!==i&&(tt(t)?(a(),a=k):a=M((null==t?void 0:t.$el)||t,e,n,o))}),{immediate:!0}),c((()=>{a!==k&&a()})),()=>{a()}}function de(t){return new U(t,ibiz.env.namespace)}function ue(t,e=!1){const n=t.matched.length;let o=t.path;e&&(o=o.replace(new RegExp("/".concat(st.ROUTE_MODAL_TAG),"g"),""));const a=o.split("/"),i=[];for(let e=1;e<=n;e++){const n=a[2*e],o=t.params["params".concat(e)];let r,s,l;r=o&&o!==ibiz.env.routePlaceholder?Yt.parse(o,{strictNullHandling:!0,delimiter:";",depth:8}):void 0,r&&(1===e?(s=r,r=void 0):(r.srfnavctx&&(s=JSON.parse(r.srfnavctx),delete r.srfnavctx),r.srfnav&&(l=r.srfnav,delete r.srfnav))),i.push({viewName:n,context:s,params:r,srfnav:l})}let r;return t.params.appContext&&t.params.appContext!==ibiz.env.routePlaceholder&&(r=Yt.parse(t.params.appContext,{strictNullHandling:!0,delimiter:";"})),{appContext:r,pathNodes:i}}function pe(t){let e="";return t.appContext?e+="/".concat(Yt.stringify(t.appContext,{delimiter:";",strictNullHandling:!0})):e+="/".concat(ibiz.env.routePlaceholder),t.pathNodes.forEach(((t,n)=>{e+="/".concat(t.viewName,"/");let o={};if(0===n)a(t.context)&&(o=t.context);else{if(o=a(t.params)?t.params:{},a(t.context)){const e=JSON.stringify(t.context);"{}"!==e&&(o.srfnavctx=encodeURIComponent(e))}t.srfnav&&(o.srfnav=t.srfnav)}const i=Yt.stringify(o,{delimiter:";",strictNullHandling:!0,skipNulls:!0});a(i)?e+=i:e+=ibiz.env.routePlaceholder})),e}function he(t){const e=t.getOwnContext(),n=["srfsessionid","srfappid","currentSrfNav","toRouteDepth"];if(e.attributekeys){const n=e.attributekeys.split("|");n&&n.length>0&&n.forEach((n=>{et(t[n])&&(e[n]=t[n])})),delete e.attributekeys}let o=!1;return Object.prototype.hasOwnProperty.call(e,"srfkeepnull")&&(o=!0===e.srfkeepnull||"true"===e.srfkeepnull,delete e.srfkeepnull),Object.keys(e).forEach((t=>{(n.includes(t)||!o&&tt(e[t]))&&delete e[t]})),e}function me(t,e){let n=-1;e&&e.length>0&&(n=e.findIndex((t=>{var e;return!0===(null==(e=t.context)?void 0:e.srfreadonly)}))),t.srfreadonly&&!t.getOwnContext().srfreadonly&&-1===n&&(t.srfreadonly=!0)}const ve=t("excludeViewTypes",[rt.DE_GRID_VIEW,rt.DE_GRID_EXP_VIEW,rt.DE_LIST_VIEW,rt.DE_LIST_EXP_VIEW,rt.DE_DATA_VIEW,rt.DE_DATAVIEW_EXP_VIEW,rt.DE_CALENDAR_VIEW,rt.DE_CALENDAR_EXP_VIEW,rt.DE_CHART_VIEW,rt.DE_CHART_EXP_VIEW,rt.DE_KANBAN_VIEW]);async function fe(t,e,n,o){if(n){const a=await ibiz.hub.getAppDataEntity(n,o);let i=lt(e,a);if(i||(i={path:"",keys:[a.codeName.toLowerCase()]}),i){const n=t.pathNodes[1].context,o={};i.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 ge(t,e,n=!0){if(t.matched.length<e)return"";if(t.matched.length===e&&t.name)return t.path;const o=ue(t);if(o.pathNodes.length<e)return t.path;o.pathNodes.length>e&&(o.pathNodes=o.pathNodes.slice(0,e));const a=o.pathNodes[e-1];return n&&delete a.srfnav,a.context&&delete a.context.srfnavctrlid,pe(o)}class ye{constructor(t,e){this.callbacks=[],this.timers=[],this.wait=500,e&&(this.wait=e),l((()=>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",ye);const we=t("withInstall",((t,e)=>(t.install=t=>{e(t)},t)));t("hasEmptyPanelRenderer",(t=>{const e=null==t?void 0:t.model.controlRenders;return!(!e||0===e.length)&&!!e.find((t=>t.id===dt.EMPTYPANEL))}));class be{constructor(t,e,n){this.component=t,this.render=e,this.opts=n,this.evt=new i,this.init()}static createVueApp(t,e){throw new _(ibiz.i18n.t("vue3Util.util.noInjected"))}init(){const t=this,{render:e,opts:n}=this,o=document.createElement("div");document.body.appendChild(o);const a=be.createVueApp({mounted(){t.modal=this.$refs.root},unmounted(){document.body.removeChild(o),t.evt.emit("dismiss",t.result)},render:()=>w(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",be);function Ce(t){return e=>{const n=b("IBizViewShell");return w(n,{...t,modal:e})}}t("OverlayPopoverContainer",class extends be{present(t){return this.modal.present(t)}});const Ie={DRAWER_LEFT:"left",DRAWER_RIGHT:"right",DRAWER_TOP:"top",DRAWER_BOTTOM:"bottom"};class Pe{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 i=new Pe(o,a);return this.map.set(a,i),this.scheduledDestruction(i),i.onWillDismiss()}close(t,e){const n=this.map.get(t);n&&(window.clearTimeout(n.timeout),n.timeout=void 0,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)}),6e5)}}),t("useAppStore",Jt("appStore",(()=>({appStore:v({})}))));const De=t("useUIStore",Jt("uiStore",(()=>{const t=function(){const t=y(500);return{zIndex:t,increment:function(){return t.value+=1,t.value},decrement:function(){t.value-=1}}}(),e=()=>ibiz.util.theme.getTheme().includes("dark")?"dark":"light",n=v({zIndex:t.zIndex,theme:e()});return ibiz.util.theme.evt.on("onChange",(()=>{n.theme=e()})),{UIStore:n,zIndex:t}})));t("piniaInstance",Zt());function Ee(t){const e=oe(),n=m("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){l((()=>({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(ibiz.i18n.t("vue3Util.use.control.parameterChanges",{id:e.model.id}),t)}))}(e,a),function(t,e){l((()=>t.state?{...t.state}:{}),((t,n)=>{const o={};Object.keys(t).forEach((e=>{t[e]!==(n||{})[e]&&(o[e]=t[e])})),ibiz.log.debug(ibiz.i18n.t("vue3Util.use.view.stateChange",{name:e.model.name}),o),Object.keys(o).forEach((t=>{e.state[t]=o[t]}))}),{immediate:!0})}(e,a),C("ctx",a.ctx),a.state=v(a.state),a.slotProps=v(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=ie();const i=u().proxy;return a.evt.onAll(((t,e)=>{i.$emit(t.slice(2),e)})),a.created(),c((()=>{a.destroyed(),ibiz.util.viewStack.remove(a.id)})),a}function Ne(t){let e=[];I((()=>{const n=document.getElementById(t.id);n&&(e=["keydown","click"].map((e=>M(n,e,(e=>{t.setOperateState("MANUAL")}),{once:!0,capture:!0}))))})),P((()=>{e&&e.length>0&&e.forEach((t=>{t()}))}))}function Oe(t,e){if(!t||!e)return!1;if(t===e)return!0;const n=new Set;let o=t;for(;o;){n.add(o);const t=o.parentNode;o=!t||"BODY"!==t.nodeName&&"HTML"!==t.nodeName?t:null}for(o=e;o;){if(n.has(o))return!0;o=o.parentNode}return!1}const Ae=t("IBizIcon",A({name:"IBizIcon",props:{icon:{type:Object},size:{type:String},baseDir:{type:String,default:"images"}},setup(t){const e=de("icon"),n="".concat(ibiz.env.assetsUrl,"/").concat(t.baseDir,"/");const o=O((()=>function(t){if(t){if(t.htmlStr)return x("span",{class:e.b(),innerHTML:t.htmlStr},null);if(t.cssClass)return-1!==t.cssClass.indexOf("fa-")||-1!==t.cssClass.indexOf("theme-icon")?x("i",{class:[e.b(),t.cssClass]},null):x("ion-icon",{class:e.b(),name:t.cssClass},null);if(t.imagePath)return F(t.imagePath)?x("img",{class:e.b(),src:t.imagePath},null):q(t.imagePath)?x("div",{class:[e.b(),e.e("emoji")]},[G(t.imagePath)]):W(t.imagePath)?x("div",{class:e.b(),innerHTML:t.imagePath},null):t.imagePath.endsWith("svg")?t.imagePath.startsWith("http")?x("img",{class:e.b(),src:t.imagePath},null):x("ion-icon",{src:n+t.imagePath,class:e.b()},null):t.imagePath.startsWith("http")?x("img",{class:e.b(),src:t.imagePath},null):x("img",{class:e.b(),src:n+t.imagePath},null);if(t.rawContent)return W(t.rawContent)?x("div",{class:e.b(),innerHTML:t.rawContent},null):x("img",{class:e.b(),src:t.rawContent},null)}return null}(t.icon)));return()=>o.value}}));t("IBizRouterView",A({name:"IBizRouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object,manualKey:{type:String}},setup(t,{attrs:e}){const n={};let o=!0;l((()=>t.manualKey),((t,e)=>{et(t)&&t!==e&&(o=!0)}));return{renderComp:(a,i)=>{if(!o)return n.vNode;if(o=!1,a){const o={...a.props};delete o.onVnodeUnmounted,delete o.ref;const i=w(a.type,{...o,...e,key:t.manualKey});return n.vNode=i,i}}}},render(){return x(b("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",A({name:"IBizControlBase",props:{controller:{type:Object,required:!0}},setup(t){const e=de("control"),{controlType:n,sysCss:o,codeName:a}=t.controller.model,i=n.toLowerCase(),r=null==o?void 0:o.cssName,s=t.controller.model,l=t.controller.model.controls,c=v({});!1===s.controlType.endsWith("EXPBAR")&&(tt(s.width)||(s.width>0&&s.width<=1?c.width="".concat(100*s.width,"%"):c.width="".concat(s.width,"px")),tt(s.height)||(s.height>0&&s.height<=1?c.width="".concat(100*s.height,"%"):c.height="".concat(s.height,"px")));const d=async(e,n)=>{e.stopPropagation();const o=e.target.getAttribute(n),a=e.target.getAttribute("data"),i=t.controller.context.clone(),r=e.target.getAttribute("context");r&&Object.assign(i,$(r));const s={...t.controller.params},l=e.target.getAttribute("params");l&&Object.assign(s,$(l)),o&&await ut.asyncExecScriptFn({...t.controller.getEventArgs(),context:i,params:s,data:a?$(a):null},o)},u=O((()=>(n=>{var o,a;const i=s.controlRenders?s.controlRenders.filter((t=>!Object.values(dt).includes(t.id))):void 0;if(!i||0===i.length)return;const r=i[0];if("LAYOUTPANEL_MODEL"===r.renderType&&r.layoutPanelModel){const a=ut.execScriptFn({...t.controller.getEventArgs(),data:n},r.layoutPanelModel,{isAsync:!1});return x("div",{innerHTML:a,onClick:t=>d(t,"click"),onDblclick:t=>d(t,"dbclick"),class:[e.e("control-render"),e.e(null==(o=r.renderName)?void 0:o.toLowerCase())]},null)}return"LAYOUTPANEL"===r.renderType&&r.layoutPanel?x(b("iBizControlShell"),{class:[e.e("control-render"),e.e(null==(a=r.renderName)?void 0:a.toLowerCase())],data:n,params:t.controller.params,context:t.controller.context,modelData:r.layoutPanel},null):void 0})(t.controller.data||t.controller.items)));return{ns:e,typeClass:i,sysCssName:r,inlineStyle:c,codeName:a,controls:l,customRender:u,disableMaskInfoRender:()=>{const n=s.controlRenders?s.controlRenders.find((t=>t.id===dt.DISABLEPANEL)):void 0;if(!n)return x("div",{innerHTML:t.controller.state.maskOption.maskInfo||"",class:[e.e("disable-mask-text")]},null);if("LAYOUTPANEL_MODEL"===n.renderType&&n.layoutPanelModel){const o=ut.execScriptFn({...t.controller.getEventArgs()},n.layoutPanelModel,{isAsync:!1,singleRowReturn:!0});return x("div",{innerHTML:o,class:[e.e("disable-mask-text")]},null)}return"LAYOUTPANEL"===n.renderType&&n.layoutPanel?x(b("iBizControlShell"),{class:[e.e("disable-mask-text")],data:{},params:t.controller.params,context:t.controller.context,modelData:n.layoutPanel},null):void 0},onLayoutPanelCreated:e=>{t.controller.setLayoutPanel(e)}}},render(){var t,e,n;const{state:o,controlPanel:a,providers:i}=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=b("IBizControlShell");return w(e,{modelData:t,...o})}}));const n=i[a.name];r=w(b(n.component),{modelData:a,context:this.controller.context,params:this.controller.params,provider:n,container:this.controller,onControllerAppear:this.onLayoutPanelCreated},e)}return x("div",{class:[this.ns.b(),this.ns.b(this.typeClass),this.ns.m(this.codeName),this.sysCssName,this.ns.is("disabled",o.disabled)],style:this.inlineStyle},[r||this.customRender||(null==(n=(e=this.$slots).default)?void 0:n.call(e)),o.disabled&&x("div",{class:[this.ns.e("mask-container"),this.ns.m(o.maskOption.mode.toLowerCase())]},["MASK"===o.maskOption.mode&&this.disableMaskInfoRender()])])}})),t("IBizControlShell",A({name:"IBizControlShell",props:{modelData:{type:Object,required:!0}},setup(t){const e=m("ctx");if(e)e.evt.emit("onForecast",t.modelData.name);else{const t={name:"AppView",id:"AppView",viewType:rt.DE_CUSTOM_VIEW,appId:ibiz.env.appId};C("ctx",new pt(t,K.create({})).ctx)}const n=y(!1),o=y(""),a=y();ht(t.modelData).then((t=>{t?a.value=t:o.value=ibiz.i18n.t("vue3Util.common.onFoundCorrespondingPart"),n.value=!0})).catch((t=>{ibiz.log.error(t),o.value=t.message,n.value=!0}));return{ns:de("control-shell"),isComplete:n,errMsg:o,provider:a}},render(){return this.isComplete&&this.provider?w(b(this.provider.component),{provider:this.provider,...this.$props,...this.$attrs},this.$slots):T(x("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[S("loading"),!this.isComplete]])}})),t("IBizViewShell",A({name:"IBizViewShell",props:{context:{type:Object,required:!0},params:{type:Object},modelData:{type:Object},viewId:{type:String},ctx:{type:Object}},setup(t,{attrs:e}){const n=de("view-shell"),o=y(!1),a=y(""),i=y(),r=y(),c=y(!0);t.ctx&&C("ctx",t.ctx);const d=y(t.context),u=y(t.params||{});let p="";l((()=>({context:t.context,params:t.params})),(t=>{d.value=t.context,u.value=t.params?t.params:{}}));let h;const m=t=>{const e=nt(t);return e.srfdatatype&&delete e.srfdatatype,JSON.stringify(e)},v=async()=>{try{if(await(async()=>{h=t.modelData?t.modelData:await ibiz.hub.getAppView(t.viewId)})(),!h)throw new _(ibiz.i18n.t("vue3Util.common.noFoundViewModel"));if(c.value=await(async t=>{let e=!0;const{accUserMode:n,accessKey:o}=t,a=ibiz.auth.getAuthInfo();if(void 0!==n)switch(n){case 1:a&&(e=!1);break;case 2:a||(e=!1);break;case 4:o&&((await ibiz.hub.getApp(d.value.srfappid)).authority.calcByResCode(o)||(e=!1))}return e})(h),!c.value)return;if(1===h.dynaSysMode){const t=h.appDataEntityId;if(!t)throw new _(ibiz.i18n.t("vue3Util.common.noSupportLoadingDynamic",{codeName:h.codeName}));const e=await vt(t,d.value,{viewParams:u.value,appId:h.appId});if(u.value.srfdatatype&&(e.srfdatatype=u.value.srfdatatype),u.value.srfwftag)e.srfwftag=u.value.srfwftag;else if(t&&h.enableWF&&e.srfkey){const n=tt(d.value.srfsessionid)||ot(d.value.srfsessionid),o=s();if(n){const t=ibiz.uiDomainManager.create(o);d.value.srfsessionid=t.id}const a=ibiz.hub.getApp(h.appId);d.value.srfappid||(d.value.srfappid=h.appId);const i=await a.deService.getService(d.value,t),r=await i.get(d.value,u.value||{});if(r.ok&&r.data){const{srfwftag:t,processdefinitionkey:n,taskdefinitionkey:o}=r.data;t&&(e.srfwftag=t),["DEWFDYNAEDITVIEW3","DEWFDYNAEDITVIEW"].includes(h.viewType)&&(tt(u.value.processDefinitionKey)&&(u.value.processDefinitionKey=n),tt(u.value.taskDefinitionKey)&&(u.value.taskDefinitionKey=o))}n&&(ibiz.uiDomainManager.destroy(o),d.value.srfsessionid="")}if(m(e)===p)return void setTimeout((()=>{o.value=!0}));r.value=await ibiz.hub.loadAppView(h.appId,h.id,e),p=m(e)}else r.value=h;i.value=await ft(h)}catch(t){ibiz.log.error(t),a.value=t.message}finally{o.value=!0}};v();return{ns:n,errMsg:a,provider:i,isComplete:o,hasAuthority:c,viewModelData:r,redrawView:async t=>{o.value=!1;const{redrawData:n}=t,{isReloadModel:a}=n;Object.assign(d.value,n.context),Object.assign(u.value,n.params);const i=e.modal;i&&(i.hooks.preDismiss.clear(),i.hooks.shouldDismiss.clear(),i.hooks.beforeDismiss.clear()),a?await v():setTimeout((()=>{o.value=!0}))},curContext:d,curParams:u}},render(){if(this.isComplete&&this.provider&&this.hasAuthority)return w(b(this.provider.component),{context:this.curContext,params:this.curParams,modelData:nt(this.viewModelData),...this.$attrs,provider:this.provider,onRedrawView:this.redrawView},this.$slots);if(!this.hasAuthority){const t=mt("403");if(t)return"string"==typeof t.component?w(b(t.component)):w(t.component)}return T(x("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[S("loading"),!this.isComplete]])}})),t("IBizCodeList",A({name:"IBizCodeList",props:{codeListItems:{type:Array},codeList:{type:Object,required:!0},value:{type:[String,Number]},convertToCodeItemText:{type:Boolean,default:!0},valueFormat:{type:String},unitName:{type:String},showMode:{type:String,default:"DEFAULT"}},emits:{infoTextChange:t=>!0},setup(t,{emit:e}){var n,o;const a=de("code-list"),i=y([]),r=(null==(n=t.codeList)?void 0:n.textSeparator)||"、",s=(null==(o=t.codeList)?void 0:o.valueSeparator)||",",c=O((()=>t.codeList&&t.codeList.orMode?t.codeList.orMode:"STR")),d=gt(c.value);l(i,(t=>{let n="";t.length>0&&(n=t.map((t=>t.text)).join(r)),e("infoTextChange",n)}));const u=(e,n)=>{if(e){const{thresholdGroup:o}=t.codeList;if(o&&te(Number(n))){const t=yt(e,Number(n));if(t)return t}const a=e.find((t=>t.value==n));if(a)return a;for(let t=0;t<e.length;t++){const o=u(e[t].children,n);if(o)return o}}};l([()=>t.codeListItems,()=>t.value],(([e,n],[o,a])=>{if(tt(n)||""===n)i.value=[];else{let o=[];const{getSelectArray:a}=d,r=a(n,t.codeList,e,s,t.codeList.codeItemValueNumber);r&&(o=r),i.value=o.map((n=>{const o=u(e,n);let a=n;if(t.convertToCodeItemText&&(null==o?void 0:o.text))a=o.text;else{const{valueFormat:e,unitName:n}=t;e&&(a=ibiz.util.text.format("".concat(a),e)),n&&(a+=n)}return{text:a,color:null==o?void 0:o.color,textCls:null==o?void 0:o.textCls,sysImage:null==o?void 0:o.sysImage}}))}}),{immediate:!0});const p=t.codeList.emptyText!==ibiz.i18n.t("vue3Util.common.undefined")&&t.codeList.emptyText?t.codeList.emptyText:ibiz.config.common.emptyText;return{items:i,ns:a,emptyText:p,textSeparator:r}},render(){return x("span",{class:this.ns.b()},[0===this.items.length?this.emptyText:this.items.map(((t,e)=>[0!==e?this.textSeparator:null,x("span",{class:[this.ns.e("item"),t.textCls?t.textCls:null],style:t.color?this.ns.cssVarBlock({"item-color":"".concat(t.color)}):null},["TEXT"!==this.showMode&&t.sysImage&&x(b("iBizIcon"),{icon:t.sysImage},null),"ICON"!==this.showMode&&t.text])]))])}})),t("ControlLoadingPlaceholder",A({name:"ControlLoadingPlaceholder",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})}},setup:t=>(m("ctx").evt.emit("onForecast",t.modelData.name),{}),render:()=>null})),t("IBizBadge",A({name:"IBizBadge",props:{value:{type:Number,required:!0},type:{type:String,default:"danger"},max:{type:Number,default:99},counterMode:{type:Number}},setup:()=>({ns:de("badge")}),render(){if((this.value||0===this.value)&&!(1===this.counterMode&&this.value<=0))return x("div",{class:[this.ns.b(),this.ns.m(this.type)]},[this.value>this.max?"".concat(this.max,"+"):this.value])}})),t("IBizCustomRender",A({name:"IBizCustomRender",props:{controller:{type:Object,required:!0}},setup(t){const e=de("custom-render"),n=async(e,n)=>{e.stopPropagation();const o=e.target.getAttribute(n),a=e.target.getAttribute("data"),i=t.controller.context.clone(),r=e.target.getAttribute("context");r&&Object.assign(i,$(r));const s={...t.controller.params},l=e.target.getAttribute("params");l&&Object.assign(s,$(l)),o&&await ut.asyncExecScriptFn({...t.controller.getEventArgs(),context:i,params:s,data:a?$(a):null},o)};return{ns:e,getControlRender:()=>{var o,a,i;const r=null==(o=t.controller)?void 0:o.model.controlRenders;if(!r||0===r.length)return;const s=r.find((t=>t.id===dt.EMPTYPANEL));if(s){if("LAYOUTPANEL_MODEL"===s.renderType&&s.layoutPanelModel){const o=ut.execScriptFn({...t.controller.getEventArgs()},s.layoutPanelModel,{isAsync:!1});return x("div",{innerHTML:o,onClick:t=>n(t,"click"),onDblclick:t=>n(t,"dbclick"),class:[e.b(),e.e(null==(a=s.renderName)?void 0:a.toLowerCase())]},null)}return"LAYOUTPANEL"===s.renderType&&s.layoutPanel?x(b("iBizControlShell"),{class:[e.b(),e.e(null==(i=s.renderName)?void 0:i.toLowerCase())],params:t.controller.params,context:t.controller.context,modelData:s.layoutPanel},null):void 0}}}},render(){return this.getControlRender()}}));class xe extends wt{}t("PanelContainerState",xe);class Te extends bt{createState(){var t;return new xe(null==(t=this.parent)?void 0:t.state)}}function Se(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("PanelContainerController",Te);const ze=A({name:"IBizPanelContainer",props:{modelData:{type:Object,required:!0},controller:{type:Te,required:!0}},setup(t){const e=de("panel-container"),{id:n}=t.modelData,o=O((()=>{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,n;let o;const a=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],i=x(b("iBizRow"),{slot:"content",layout:this.modelData.layout},Se(o=a.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Se(t)?t:{default:()=>[t]}):t})))?o:{default:()=>[o]}),r=null==(n=this.$attrs)?void 0:n.attrs;return r&&r.dynamictooltip?x(b("el-tooltip"),{placement:"right","popper-class":this.ns.e("dynamic-tooltip")},{default:()=>x("div",z({class:this.classArr,onClick:()=>{this.controller.onClick()}},this.$attrs),[this.controller.model.cssStyle?x("style",{type:"text/css"},[this.controller.model.cssStyle]):null,i]),content:()=>x("div",{class:this.ns.e("dynamic-tooltip-content"),innerHTML:r.dynamictooltip},null)}):x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[this.controller.model.cssStyle?x("style",{type:"text/css"},[this.controller.model.cssStyle]):null,i])}});class Re{constructor(){this.component="IBizPanelContainer"}async createController(t,e,n){const o=new Te(t,e,n);return await o.init(),o}}t("IBizPanelContainer",we(ze,(function(t){t.component(ze.name,ze),Ct("CONTAINER",(()=>new Re)),Ct("CONTAINER_DEFAULT",(()=>new Re))})));const Le=A({name:"IBizPanelCtrlPos",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){m("ctx").evt.on("onRegister",((e,n)=>{e===t.modelData.id&&t.controller.bindControl(n)}));return{ns:de("panel-ctrl-pos")}},render(){const{state:t}=this.controller;let e;return this.$slots.default&&(e=this.$slots.default()),x("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass,this.ns.is("hidden",!t.visible)]},[e||(ibiz.env.dev?ibiz.i18n.t("vue3Util.panelComponent.noProvidedSlot",{id:this.modelData.id}):"")])}});class Be extends bt{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",Be);class je{constructor(){this.component="IBizPanelCtrlPos"}async createController(t,e,n){const o=new Be(t,e,n);return await o.init(),o}}t("IBizPanelCtrlPos",we(Le,(function(t){t.component(Le.name,Le),Ct("CTRLPOS",(()=>new je))})));class Ve extends bt{}function ke(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("ScrollContainerItemController",Ve);const Me=t("ScrollContainerItem",A({name:"IBizScrollContainerItem",props:{modelData:{type:Object,required:!0},controller:{type:Ve,required:!0}},setup(t){const e=de("scroll-container-item"),{id:n}=t.modelData,o=O((()=>[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 x(b("iBizRow"),{class:this.classArr,layout:{layout:"FLEX"}},ke(n=o.map((t=>{const e=t.props;return e&&e.controller?(e.modelData.layoutPos.layout="FLEX",x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},ke(t)?t:{default:()=>[t]})):t})))?n:{default:()=>[n]})}}));class Ue{constructor(){this.component="IBizScrollContainerItem"}async createController(t,e,n){const o=new Ve(t,e,n);return await o.init(),o}}class _e extends bt{async onInit(){await super.onInit(),this.state.layout.width="100%",this.state.layout.height="100%"}}t("ScrollContainerController",_e);const Fe=t("ScrollContainer",A({name:"IBizScrollContainer",props:{modelData:{type:Object,required:!0},controller:{type:_e,required:!0}},setup(t){const e=de("scroll-container"),{id:n}=t.modelData,o=O((()=>[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,i=null,r=null;const s={};((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,s.left={width:l};break;case"EAST":a=t,s.right={width:l};break;case"NORTH":o=t,s.top={height:c};break;case"SOUTH":i=t,s.bottom={height:c};break;case"CENTER":r=t;break;default:ibiz.log.debug(ibiz.i18n.t("vue3Util.panelComponent.unadaptedLayout",{layoutPos:e.modelData.layoutPos.layoutPos}))}}));for(const t in s)(s[t].width||s[t].height)&&(s[t].flexShrink=0);return x("div",{class:this.classArr},[x("div",{class:[this.ns.e("header")],style:s.top},[o]),x("div",{class:[this.ns.b("content")]},[x("div",{class:this.ns.be("content","left"),style:s.left},[n]),x("div",{class:this.ns.be("content","center")},[r]),x("div",{class:this.ns.be("content","right"),style:s.right},[a])]),x("div",{class:[this.ns.e("footer")],style:s.bottom},[i])])}}));class qe{constructor(){this.component="IBizScrollContainer"}async createController(t,e,n){const o=new _e(t,e,n);return await o.init(),o}}t("IBizScrollContainer",we(Fe,(function(t){t.component(Fe.name,Fe),t.component(Me.name,Me),Ct("CONTAINER_CONTAINER_SCROLL",(()=>new qe)),Ct("CONTAINER_CONTAINER_SCROLL_LEFT",(()=>new Ue)),Ct("CONTAINER_CONTAINER_SCROLL_HEADER",(()=>new Ue)),Ct("CONTAINER_CONTAINER_SCROLL_RIGHT",(()=>new Ue)),Ct("CONTAINER_CONTAINER_SCROLL_BOTTOM",(()=>new Ue)),Ct("CONTAINER_CONTAINER_SCROLL_MAIN",(()=>new Ue))})));class Ge extends wt{constructor(){super(...arguments),this.cache=!0,this.routeOpen=!0,this.currentKey="",this.cacheKeys=["RouterShell"],this.navViewMsgs={},this.isLoading=!1}}t("NavPosState",Ge);const We=["is404","isRoutePushed"];class $e extends bt{constructor(){super(...arguments),this.viewModals={},this.refCtrlKeys=[],this.rawItemParams={},this.ignoreEmbedKey=!1}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,n=this.rawItemParams.ignoreembedkey||this.panel.view.params.ignoreembedkey||"";this.ignoreEmbedKey=Object.is(n.toLowerCase(),"true"),"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 Ge(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]?(at(this.state.navViewMsgs[e],t),We.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?Pt.ROUTE:Pt.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){this.panel.evt.emit("onPresetPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:"onViewCreated",presetParams:t}),ibiz.log.debug(this.constructor.name,"onViewCreated",t)}toBlankRoute(){const t=ge(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)}async openViewByPath(t){var e,n,o,a;const i=this.calcCacheKey(t);this.setNavViewMsgs(t);if(!0===t.isRoutePushed)return this.state.currentKey=i,void(this.state.navViewMsgs[this.calcCacheKey(this.curNavViewMsg)].fullPath=this.route.fullPath);if(t.is404){const n=ge(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(i===this.state.currentKey&&this.state.navViewMsgs[i].fullPath)(null==(n=t.modalOptions)?void 0:n.replace)?this.router.replace(this.state.navViewMsgs[i].fullPath):this.router.push(this.state.navViewMsgs[i].fullPath);else if(this.state.navViewMsgs[i].fullPath&&this.getExpItemIsCache(t))(null==(o=t.modalOptions)?void 0:o.replace)?this.router.replace(this.state.navViewMsgs[i].fullPath):this.router.push(this.state.navViewMsgs[i].fullPath);else{const e=Object.assign(t.context.clone(),{toRouteDepth:this.routeDepth+1});(null==(a=this.rawItemParams)?void 0:a.routeattributekeys)&&(e.attributekeys=this.rawItemParams.routeattributekeys),this.getExpItemIsCache(t)&&this.state.cacheKeys.push(i),t.viewId&&(this.state.isLoading=!0,await ibiz.commands.execute(Dt.TAG,t.viewId,e,t.params,{openMode:"INDEXVIEWTAB",modalOption:{replace:!this.state.currentKey,...t.modalOptions}}),this.state.isLoading=!1)}}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;a(n)&&(e=n.reduce(((t,e)=>(t[e.key.toLowerCase()]=e.value,t)),{})),Object.assign(this.rawItemParams,e)}}function Ke(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("NavPosController",$e);const He=A({name:"IBizNavPos",props:{modelData:{type:Object,required:!0},controller:{type:$e,required:!0}},setup(t){const e=t.controller,n=de("nav-pos"),o=Qt(),a=Ht(),i=y(!1);if(e.setRouter(o),e.routeDepth){const t=ge(a,e.routeDepth);l((()=>a.fullPath),(()=>{const n=ge(a,e.routeDepth);if(t===n&&a.matched.length>e.routeDepth){if(a.matched.length===e.routeDepth+1&&(i.value=!!a.name,i.value))return;e.onRouteChange(a)}}),{immediate:!0})}return{ns:n,c:e,isPresetView:i,onViewCreated:t=>{e.onViewCreated(t)}}},render(){const{viewModals:t,state:e}=this.c,{currentKey:n,cacheKeys:o,navViewMsgs:a,cache:i}=e;let r=null;if(e.routeOpen){if(this.isPresetView)return x(Xt,null,null);r=x(b("iBizRouterView"),{manualKey:n,modal:t[n],onCreated:this.onViewCreated},{default:({Component:t})=>{const e=""!==n&&t?x(t,null,null):null;return i?x(b("keepAlive"),{include:o,max:30,isKey:!0},Ke(e)?e:{default:()=>[e]}):e}})}else{const t=n&&a[n]?w(b("IBizViewShell"),{context:a[n].context,params:a[n].params,key:this.c.ignoreEmbedKey?void 0:n,viewId:a[n].viewId,onCreated:this.onViewCreated}):null;r=i?x(b("keepAlive"),{include:o,max:30,isKey:!0},Ke(t)?t:{default:()=>[t]}):t}return x("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass]},[r])}});class Qe{constructor(){this.component="IBizNavPos"}async createController(t,e,n){const o=new $e(t,e,n);return await o.init(),o}}t("IBizNavPos",we(He,(function(t){t.component(He.name,He),Ct("RAWITEM_NAV_POS",(()=>new Qe))})));class Xe extends wt{constructor(){super(...arguments),this.error=null}}class Ye extends bt{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 Xe(null==(t=this.parent)?void 0:t.state)}async validate(){var t;return this.state.visible&&this.state.required&&!this.value?(this.state.error=(null==(t=this.editor)?void 0:t.model.placeHolder)||ibiz.i18n.t("vue3Util.panelComponent.cannotEmpty",{caption:this.model.caption}),!1):(this.state.error=null,!0)}async onInit(){var t,e;await super.onInit(),this.state.required=!this.model.allowEmpty,!0!==this.context.srfreadonly&&"true"!==this.context.srfreadonly&&(null==(t=this.model.editor)?void 0:t.readOnly)&&(this.state.readonly=(null==(e=this.model.editor)?void 0:e.readOnly)||!1),this.model.editor&&"HIDDEN"!==this.model.editor.editorType&&(this.editorProvider=await Et(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),await this.validate(),this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.CHANGE})}onFocus(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.FOCUS,event:t})}onBlur(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.BLUR,event:t})}onEnter(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.ENTER,event:t})}}t("PanelFieldController",Ye);const Je=A({name:"IBizPanelField",props:{modelData:{type:Object,required:!0},controller:{type:Ye,required:!0},attrs:{type:Object,require:!1}},setup(t){const e=de("panel-field"),n=O((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n),e.is("error",!!t.controller.state.error)];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=b(this.controller.editorProvider.formEditor);t=w(n,{...e})}else t=x(b("not-supported-editor"),{modelData:this.modelData.editor},null)}return x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[t,this.controller.state.error&&x("div",{class:this.ns.e("error")},[this.controller.state.error])])}});class Ze{constructor(){this.component="IBizPanelField"}async createController(t,e,n){const o=new Ye(t,e,n);return await o.init(),o}}t("IBizPanelField",we(Je,(function(t){t.component(Je.name,Je),Ct("FIELD",(()=>new Ze))})));class tn extends bt{get data(){return this.dataParent.data}async onInit(){await super.onInit()}calcDynaClass(t){var e,n;if(this.model.dynaClass||(null==(e=this.model.rawItem)?void 0:e.dynaClass)){const e=this.model.dynaClass?Ot(this.model.dynaClass,t):[],o=(null==(n=this.model.rawItem)?void 0:n.dynaClass)?Ot(this.model.rawItem.dynaClass,t):[];this.state.class.containerDyna=[...e,...o]}if(this.model.labelDynaClass){const e=Ot(this.model.labelDynaClass,t);this.state.class.labelDyna=e}}}t("PanelRawItemController",tn);const en=A({name:"IBizPanelRawItem",props:{modelData:{type:Object,required:!0},controller:{type:tn,required:!0}},setup(t){const e=de("panel-rawitem"),n=t.controller,o=y(""),a=y(""),{rawItem:i}=t.modelData;i&&i.cssStyle&&(a.value=i.cssStyle);const r=O((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return l((()=>n.data),(async t=>{if(t){const e=n.model.rawItem;if(!e)return;let a;const i={...t};"RAW"===e.contentType?a=e.caption:"HTML"===e.contentType&&(a=e.content),a&&e.templateMode&&(a=await ibiz.util.hbs.render(a.replace("//n","\n"),Object.assign(i,{data:{...t}}))),o.value=a}}),{immediate:!0}),{ns:e,classArr:r,tempStyle:a,content:o}},render(){if(this.controller.state.visible)return x("div",{class:this.classArr,style:this.tempStyle,onClick:t=>{this.controller.onClick(t)}},[x(b("iBizRawItem"),{rawItem:this.modelData,content:this.content},null)])}});class nn{constructor(){this.component="IBizPanelRawItem"}async createController(t,e,n){const o=new tn(t,e,n);return await o.init(),o}}t("IBizPanelRawItem",we(en,(function(t){t.component(en.name,en),Ct("RAWITEM",(()=>new nn)),Ct("RAWITEM_STATIC_IMAGE",(()=>new nn)),Ct("RAWITEM_STATIC_LABEL",(()=>new nn)),Ct("RAWITEM_STATIC_TEXT",(()=>new nn))})));class on extends wt{constructor(){super(...arguments),this.data={}}}class an{constructor(t,e,n,o){this.model=t,this.panel=e,this.parent=n,this.state=new on,this.isDataContainer=!0,this.panelItems={},this.state.data=o;const a=At(this.model).map((t=>t.id));o._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])}))}get data(){return this.state.data}async validate(){return(await Promise.all(Object.values(this.panelItems).map((t=>t.validate())))).every((t=>t))}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 i=this.parent.providers[t.id];if(!i)return;const r=await i.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!xt(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 rn extends wt{constructor(){super(...arguments),this.items=[]}}t("MultiDataContainerState",rn);class sn extends bt{constructor(){super(...arguments),this.isDataContainer=!0,this.dataItems=[],this.providers={}}get data(){return this.state.items}createState(){var t;return new rn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemProviders()}async panelStateNotify(t){super.panelStateNotify(t),t===Tt.LOAD&&this.initContainerData()}async initPanelItemProviders(t=this.model.panelItems){t&&await Promise.all(t.map((async t=>{var e,n;const o=await St(t,this.panel.model,this.panel.view.model);o&&(this.providers[t.id]=o,(null==(e=t.panelItems)?void 0:e.length)&&!xt(t)&&await this.initPanelItemProviders(t.panelItems),(null==(n=t.panelTabPages)?void 0:n.length)&&await this.initPanelItemProviders(t.panelTabPages))})))}computeNavParams(){const{navigateContexts:t,navigateParams:e}=this.model,n=this.panel.context.clone();Object.assign(n,zt(t,this.panel.params,this.panel.context));const o=zt(e,this.panel.params,this.panel.context);return Object.assign(o,this.panel.params),{context:n,params:o}}initContainerData(){const{dataSourceType:t,dataName:e,scriptCode:n}=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 Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.view,e);break;case"ACTIVEDATAPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.setData(this.dataParent.data[e]);break;case"CUSTOM":{if(!n)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredScript"));const t=ut.execScriptFn({...this.panel.getEventArgs(),data:this.dataParent.data},n,{isAsync:!1,singleRowReturn:!0});this.setData(t);break}default:throw new H(this.model,ibiz.i18n.t("vue3Util.panelComponent.noSupportedDataSourceType",{dataSourceType:t}))}}childrenStateNotify(t){this.dataItems.forEach((e=>{e.panelStateNotify(t)}))}async validate(){return(await Promise.all(this.dataItems.map((t=>t.validate())))).every((t=>t))}async setData(t){const e=At(this.model),n=t.map((t=>new Rt(e,t)));this.dataItems=n.map((t=>new an(this.model,this.panel,this,t))),this.dataItems.length&&await Promise.all(this.dataItems.map((t=>t.init()))),this.state.items=n,this.childrenStateNotify(Tt.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntityLogic"));if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const{context:n,params:o}=this.computeNavParams(),a=await Lt(e,t,n,this.panel.data,o);if(!a)throw new _(ibiz.i18n.t("vue3Util.panelComponent.noReturnValue",{appDELogicId:e}));this.setData(a)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.noAttribute",{dataName:t}))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguerdEntityBehanior"));if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const n=ibiz.hub.getApp(this.panel.context.srfappid),{context:o,params:a}=this.computeNavParams(),i=await n.deService.exec(e,t,o,void 0,a);i.ok&&i.data&&this.setData(i.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.sessionView",{dataName:e}));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.viewStateAttribute",{dataName:e}))};n(),t.evt.on("onDataChange",(()=>{n()}))}setDataValue(t,e){throw new Error(ibiz.i18n.t("vue3Util.panelComponent.noImplementMethod"))}destroy(){super.destroy(),this.dataItems.forEach((t=>{t.destroy()}))}}t("MultiDataContainerController",sn);const ln=A({name:"IBizMultiDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:sn,required:!0}},setup(t){const e=de("multi-data-container"),{id:n}=t.modelData;l((()=>t.controller.state.items),(()=>{t.controller.dataItems.forEach((t=>{t.state=v(t.state);Object.keys(t.panelItems).forEach((e=>{const n=t.panelItems[e];n.state=v(n.state)}))}))}),{immediate:!0});const o=m("renderPanelItem"),a=O((()=>[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 x(b("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 x(b("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)&&!R(a)?e:{default:()=>[e]});var a}))]}})})),x("div",{class:this.classArr},[t])}});class cn{constructor(){this.component="IBizMultiDataContainer"}async createController(t,e,n){const o=new sn(t,e,n);return await o.init(),o}}t("IBizMultiDataContainer",we(ln,(function(t){t.component(ln.name,ln),Ct("CONTAINER_CONTAINER_MULTIDATA",(()=>new cn))})));class dn extends wt{constructor(){super(...arguments),this.items=[]}}t("MultiDataContainerRawState",dn);class un extends bt{constructor(){super(...arguments),this.isDataContainer=!0,this.panelItems={},this.providers={}}get data(){return this.state.items}createState(){var t;return new dn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemControllers()}async panelStateNotify(t){super.panelStateNotify(t),t===Tt.LOAD&&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 i=await St(t,e.model,e.view.model);if(!i)return;this.providers[t.id]=i;const r=await i.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!xt(t)&&await this.initPanelItemControllers(t.panelItems,e,r),(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initPanelItemControllers(t.panelTabPages,e,r)})))}computeNavParams(){const{navigateContexts:t,navigateParams:e}=this.model,n=this.panel.context.clone();Object.assign(n,zt(t,this.panel.params,this.panel.context));const o=zt(e,this.panel.params,this.panel.context);return Object.assign(o,this.panel.params),{context:n,params:o}}initContainerData(){const{dataSourceType:t,dataName:e,scriptCode:n}=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 Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.view,e);break;case"ACTIVEDATAPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.setData(this.dataParent.data[e]);break;case"CUSTOM":{if(!n)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredScript"));const t=ut.execScriptFn({...this.panel.getEventArgs(),data:this.dataParent.data},n,{isAsync:!1,singleRowReturn:!0});this.setData(t);break}default:throw new H(this.model,ibiz.i18n.t("vue3Util.panelComponent.noSupportedDataSourceType",{dataSourceType:t}))}}childrenStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setData(t){var e,n;null==(n=(e=this.data).destroy)||n.call(e),this.state.items=t,this.childrenStateNotify(Tt.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntityLogic"));if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const{context:n,params:o}=this.computeNavParams(),a=await Lt(e,t,n,this.panel.data,o);if(!a)throw new _(ibiz.i18n.t("vue3Util.panelComponent.noReturnValue",{appDELogicId:e}));this.setData(a)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.noAttribute",{dataName:t}))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguerdEntityBehanior"));if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const n=ibiz.hub.getApp(this.panel.context.srfappid),{context:o,params:a}=this.computeNavParams(),i=await n.deService.exec(e,t,o,void 0,a);i.ok&&i.data&&this.setData(i.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.sessionView",{dataName:e}));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.viewStateAttribute",{dataName:e}))};n(),t.evt.on("onDataChange",(()=>{n()}))}setDataValue(t,e){throw new Error(ibiz.i18n.t("vue3Util.panelComponent.noImplementMethod"))}destroy(){var t,e;super.destroy(),null==(e=(t=this.data).destroy)||e.call(t),Object.values(this.panelItems).forEach((t=>{var e;null==(e=t.destroy)||e.call(t)}))}}t("MultiDataContainerRawController",un);const pn=A({name:"IBizMultiDataContainerRaw",props:{modelData:{type:Object,required:!0},controller:{type:un,required:!0}},setup(t){const e=de("multi-data-container-raw"),{id:n}=t.modelData;l((()=>t.controller.state.items),(()=>{Object.keys(t.controller.panelItems).forEach((e=>{const n=t.controller.panelItems[e];n.state=v(n.state)}))}),{immediate:!0,deep:!0});const o=m("renderPanelItem"),a=O((()=>[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():x(b("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 x(b("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)&&!R(o)?e:{default:()=>[e]});var o}))]}}),x("div",{class:this.classArr},[t])}});class hn{constructor(){this.component="IBizMultiDataContainerRaw"}async createController(t,e,n){const o=new un(t,e,n);return await o.init(),o}}t("IBizMultiDataContainerRaw",we(pn,(function(t){t.component(pn.name,pn),Ct("CONTAINER_CONTAINER_MULTIDATA_RAW",(()=>new hn))})));class mn extends wt{constructor(){super(...arguments),this.data={}}}t("SingleDataContainerState",mn);class vn extends bt{constructor(){super(...arguments),this.isDataContainer=!0,this.panelItems={},this.providers={}}get data(){return this.state.data}createState(){var t;return new mn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemControllers()}async panelStateNotify(t){super.panelStateNotify(t),t===Tt.LOAD&&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 i=await St(t,e.model,e.view.model);if(!i)return;this.providers[t.id]=i;const r=await i.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!xt(t)&&await this.initPanelItemControllers(t.panelItems,e,r),(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initPanelItemControllers(t.panelTabPages,e,r)})))}computeNavParams(){const{navigateContexts:t,navigateParams:e}=this.model,n=this.panel.context.clone();Object.assign(n,zt(t,this.panel.params,this.panel.context));const o=zt(e,this.panel.params,this.panel.context);return Object.assign(o,this.panel.params),{context:n,params:o}}initContainerData(){const{dataSourceType:t,dataName:e,dataRegionType:n,scriptCode:o}=this.model;if("LOGINFORM"!==n)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 Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.view,e);break;case"ACTIVEDATAPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.setData(this.dataParent.data[e]);break;case"CUSTOM":{if(!o)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredScript"));const t=ut.execScriptFn({...this.panel.getEventArgs(),data:this.dataParent.data},o,{isAsync:!1,singleRowReturn:!0});this.setData(t);break}default:throw new H(this.model,ibiz.i18n.t("vue3Util.panelComponent.noSupportedDataSourceType",{dataSourceType:t}))}else this.setLoginForm()}childrenStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setData(t){var e,n;const o=At(this.model),a=o.map((t=>t.id)),i=new Rt(o,t);i._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])})),null==(n=(e=this.data).destroy)||n.call(e),this.state.data=i,this.childrenStateNotify(Tt.LOAD)}setLoginForm(){this.setData({})}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntityLogic"));if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const{context:n,params:o}=this.computeNavParams(),a=await Lt(e,t,n,this.panel.data,o);if(!a)throw new _(ibiz.i18n.t("vue3Util.panelComponent.noReturnValue",{appDELogicId:e}));this.setData(a)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.noAttribute",{dataName:t}))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguerdEntityBehanior"));if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const n=ibiz.hub.getApp(this.panel.context.srfappid),{context:o,params:a}=this.computeNavParams(),i=await n.deService.exec(e,t,o,void 0,a);i.ok&&i.data&&this.setData(i.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.sessionView",{dataName:e}));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.viewStateAttribute",{dataName: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",vn);const fn=A({name:"IBizSingleDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:vn,required:!0}},setup(t){const e=de("single-data-container"),{id:n}=t.modelData;Object.keys(t.controller.panelItems).forEach((e=>{const n=t.controller.panelItems[e];n.state=v(n.state)}));const o=m("renderPanelItem"),a=O((()=>[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():x(b("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 x(b("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)&&!R(o)?e:{default:()=>[e]});var o}))]}}),x("div",{class:this.classArr},[t])}});class gn{constructor(){this.component="IBizSingleDataContainer"}async createController(t,e,n){const o=new vn(t,e,n);return await o.init(),o}}t("IBizSingleDataContainer",we(fn,(function(t){t.component(fn.name,fn),Ct("CONTAINER_CONTAINER_SINGLEDATA",(()=>new gn))})));class yn extends wt{}t("GridContainerState",yn);class wn extends bt{createState(){var t;return new yn(null==(t=this.parent)?void 0:t.state)}}function bn(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("GridContainerController",wn);const Cn=A({name:"IBizGridContainer",props:{modelData:{type:Object,required:!0},controller:{type:wn,required:!0}},setup(t){const e=de("grid-container"),{id:n}=t.modelData,o=O((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=O((()=>({...t.modelData.layout,layout:"TABLE_12COL"}))),i=y(void 0),r=y(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:i}},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 x(b("iBizRow"),{class:this.classArr,layout:this.layoutModel},bn(n=o.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:this.convertLayoutPos(e.modelData.layoutPos,this.adaptGrow),state:e.controller.state},bn(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]})}});class In{constructor(){this.component="IBizGridContainer"}async createController(t,e,n){const o=new wn(t,e,n);return await o.init(),o}}t("IBizGridContainer",we(Cn,(function(t){t.component(Cn.name,Cn),Ct("CONTAINER_CONTAINER_GRID",(()=>new In))})));class Pn extends wt{}t("PanelContainerImageState",Pn);class Dn extends bt{createState(){var t;return new Pn(null==(t=this.parent)?void 0:t.state)}}function En(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("PanelContainerImageController",Dn);const Nn=A({name:"IBizPanelContainerImage",props:{modelData:{type:Object,required:!0},controller:{type:Dn,required:!0}},setup(t){const e=de("panel-container-image"),{id:n}=t.modelData,o=O((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=O((()=>{const e=t.controller.model.sysImage,n={};let o="";if(null==e?void 0:e.rawContent)if(W(e.rawContent)){const t=e.rawContent.replace(/[\u4e00-\u9fff]/g,"");o="url(data:image/svg+xml;base64,".concat(btoa(t),")")}else o="url(".concat(e.rawContent,")");else(null==e?void 0:e.imagePath)&&(o="url(".concat(e.imagePath,")"));return 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=x(b("iBizRow"),{slot:"content",layout:this.modelData.layout},En(n=o.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},En(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});return x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()},style:this.backgroundStyle},[this.controller.model.cssStyle?x("style",{type:"text/css"},[this.controller.model.cssStyle]):null,a])}});class On{constructor(){this.component="IBizPanelContainerImage"}async createController(t,e,n){const o=new Dn(t,e,n);return await o.init(),o}}t("IBizPanelContainerImage",we(Nn,(function(t){t.component(Nn.name,Nn),Ct("CONTAINER_CONTAINER_IMAGE",(()=>new On))})));class An extends wt{}t("PanelContainerGroupState",An);class xn extends bt{createState(){var t;return new An(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",xn);class Tn{constructor(){this.component="IBizPanelContainerGroup"}async createController(t,e,n){const o=new xn(t,e,n);return await o.init(),o}}function Sn(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}const zn=A({name:"IBizPanelContainerGroup",props:{modelData:{type:Object,required:!0},controller:{type:xn,required:!0}},setup(t){const e=de("panel-container-group"),n=y(!t.controller.defaultExpansion);return{ns:e,captionText:O((()=>{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))||[],i=x(b("iBizRow"),{slot:"content",layout:this.modelData.layout},Sn(n=a.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Sn(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});let r=null;return this.modelData.showCaption&&(r=x("div",{class:[this.ns.b("header")],onClick:this.changeCollapse},[x("div",{class:[this.ns.be("header","left")]},[x("div",{class:[this.ns.e("caption"),...this.controller.labelClass]},[this.modelData.sysImage&&x(Ae,{class:this.ns.em("caption","icon"),icon:this.modelData.sysImage},null),this.captionText])]),x("div",{class:[this.ns.be("header","right")]},[void 0!==this.modelData.titleBarCloseMode&&0!==this.modelData.titleBarCloseMode&&(this.isCollapse?x("ion-icon",{name:"caret-forward-sharp"},null):x("ion-icon",{name:"caret-down-sharp"},null))])])),x("div",{class:o},[r,x("div",{class:[this.ns.b("content")]},[i])])}});t("IBizPanelContainerGroup",we(zn,(function(t){t.component(zn.name,zn),Ct("CONTAINER_CONTAINER_GROUP",(()=>new Tn))})));function Rn(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}const Ln=A({name:"IBizPanelTabPage",props:{modelData:{type:Object,required:!0},controller:{type:bt,required:!0}},setup(t){const e=de("panel-tab-page"),n=O((()=>{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 x(b("iBizRow"),{class:[this.ns.b(),this.ns.m(this.modelData.codeName),this.classArr],layout:this.modelData.layout},Rn(n=o.map((t=>{const e=t.props;if(!e||!e.controller)return t;const n=e.controller;return x(b("iBizCol"),{layoutPos:n.model.layoutPos,state:n.state},Rn(t)?t:{default:()=>[t]})})))?n:{default:()=>[n]})}});class Bn{constructor(){this.component="IBizPanelTabPage"}async createController(t,e,n){const o=new bt(t,e,n);return await o.init(),o}}t("IBizPanelTabPage",we(Ln,(function(t){t.component(Ln.name,Ln),Ct("TABPAGE",(()=>new Bn))})));class jn extends bt{getPanelItemCustomHtml(t,e){if(0===t.length)return;const n=t[0];return n.layoutPanelModel?ut.execScriptFn({data:e||{}},n.layoutPanelModel,{singleRowReturn:!0,isAsync:!1}):void 0}}const Vn=A({name:"IBizPanelItemRender",props:{modelData:{type:Object,required:!0},controller:{type:jn,required:!0}},setup(t){var e;const n=de("panel-item-render"),o=de("panel-".concat(null==(e=t.modelData.itemType)?void 0:e.toLowerCase())),{id:a}=t.modelData,i=O((()=>[n.b(),n.m(a),o.b(),n.is("hidden",!t.controller.state.visible)])),r=O((()=>t.controller.getPanelItemCustomHtml(t.modelData.controlRenders,t.controller.data)));return{ns:n,classArr:i,htmlCode:r}},render(){return x("div",{class:this.classArr,innerHTML:this.htmlCode},null)}});class kn{constructor(){this.component="IBizPanelItemRender"}async createController(t,e,n){const o=new jn(t,e,n);return await o.init(),o}}t("IBizPanelItemRender",we(Vn,(function(t){t.component(Vn.name,Vn),Ct("PREDEFINE_RENDER",(()=>new kn))})));const Mn=A({name:"IBizTeleportPlaceholder",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){const e=de("teleport-placeholder"),n=y(""),{rawItem:o}=t.modelData;o&&o.cssStyle&&(n.value=o.cssStyle);const a=O((()=>{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 x("div",{id:this.controller.state.teleportTag,class:this.classArr,style:this.tempStyle},null)}});class Un extends wt{constructor(){super(...arguments),this.teleportTag=""}}class _n extends bt{createState(){var t;return new Un(null==(t=this.parent)?void 0:t.state)}async onInit(){var t,e;await super.onInit();const n=this.panel.view.model.codeName;let o="".concat(null==n?void 0:n.toLowerCase(),"-").concat(this.model.id);const a=null==(e=null==(t=this.model.rawItem)?void 0:t.rawItemParams)?void 0:e.find((t=>"TeleportTag"===t.key));a&&a.value&&(o=a.value),ibiz.log.debug(ibiz.i18n.t("vue3Util.panelComponent.placeholderIdentifier",{viewCodeName:n,id:this.model.id}),o),this.state.teleportTag=o}}class Fn{constructor(){this.component="IBizTeleportPlaceholder"}async createController(t,e,n){const o=new _n(t,e,n);return await o.init(),o}}t("TeleportPlaceholderProvider",Fn);t("IBizTeleportPlaceholder",we(Mn,(function(t){t.component(Mn.name,Mn),Ct("RAWITEM_TELEPORT_PLACEHOLDER",(()=>new Fn))})));const qn=A({name:"IBizPanelContainerTabs",props:{modelData:{type:Object,required:!0},controller:{type:Te,required:!0}},setup:()=>({ns:de("panel-container-tabs")}),render(){return w(b("IBizPanelContainer"),{...this.$props,...this.$attrs,class:this.ns.b()},this.$slots)}});class Gn{constructor(){this.component="IBizPanelContainerTabs"}async createController(t,e,n){const o=new Te(t,e,n);return await o.init(),o}}t("IBizPanelContainerTabs",we(qn,(function(t){t.component(qn.name,qn),Ct("CONTAINER_TABS",(()=>new Gn))})));const Wn=A({name:"IBizPanelCtrlViewPageCaption",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){const e=de("panel-ctrl-view-page-caption"),n=O((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:n}},render(){let t=null;return this.controller.data&&(t=x("span",{class:this.ns.b("content")},[this.controller.state.caption])),x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[t])}});class $n extends bt{async onInit(){await super.onInit(),this.state.caption=this.panel.view.model.caption||"",this.panel.view.evt.on("onViewInfoChange",(({caption:t,dataInfo:e})=>{this.state.caption="".concat(this.panel.view.model.caption).concat(e?"-".concat(e):"")}))}}class Kn{constructor(){this.component="IBizPanelCtrlViewPageCaption"}async createController(t,e,n){const o=new $n(t,e,n);return await o.init(),o}}t("IBizPanelCtrlViewPageCaption",we(Wn,(function(t){t.component(Wn.name,Wn),Ct("CTRLPOS_VIEW_PAGECAPTION",(()=>new Kn))})));const Hn=A({name:"IBizAuthWxmpQrcode",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){const e=de("auth-wxmp-qrcode"),{state:n}=t.controller,o=Ht();t.controller.setRouter(o);const a=async()=>{await t.controller.loadQrcode()};return l((()=>n.visible),(()=>{var t;n.visible&&(n.keepAlive&&!(null==(t=n.qrcode)?void 0:t.expirein)||!n.keepAlive)&&a()}),{immediate:!0}),P((()=>{t.controller.destroy()})),{ns:e,loadQrcode:a}},render(){var t,e;return x("div",{class:this.ns.b()},[x("div",{class:this.ns.e("content")},[this.controller.state.qrcode&&x("img",{class:this.ns.e("qrcode"),src:null==(t=this.controller.state.qrcode)?void 0:t.url},null),!(null==(e=this.controller.state.qrcode)?void 0:e.expirein)&&x("div",{class:this.ns.e("mask")},[x("ion-icon",{title:ibiz.i18n.t("vue3Util.panelComponent.refresh"),name:"reload-outline",onClick:this.loadQrcode,class:this.ns.em("mask","icon")},null)])]),x("div",{class:this.ns.e("caption")},[this.controller.state.tips])])}});class Qn extends wt{}class Xn extends bt{constructor(){super(...arguments),this.pollingTime=2,this.rawItemParams={}}createState(){var t;return new Qn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),this.handleRawItemParams(),this.initParams()}setRouter(t){this.route=t}handleRawItemParams(){var t;let e={};const n=null==(t=this.model.rawItem)?void 0:t.rawItemParams;a(n)&&(e=n.reduce(((t,e)=>(t[e.key.toLowerCase()]=e.value,t)),{})),Object.assign(this.rawItemParams,e)}initParams(){var t;this.pollingTime=(t=this.rawItemParams.pollingtime)&&isFinite(Number(t))?Number(this.rawItemParams.pollingtime):2,this.state.tips=this.model.caption||ibiz.i18n.t("vue3Util.panelComponent.wxQrcodeCaption")}async loadQrcode(){try{const t=await ibiz.net.get("/uaa/open/wxmp/createqrcode",{},{srfdcsystem:ibiz.env.dcSystem});t.ok&&t.data&&(this.state.qrcode=t.data,this.setTimer())}catch(t){ibiz.log.error(t.message)}}setTimer(){this.expirationTimer=setInterval((()=>{this.state.qrcode&&this.state.qrcode.expirein>0?this.state.qrcode.expirein-=1:clearInterval(this.expirationTimer)}),1e3),this.pollingTimer=setInterval((async()=>{await this.pollingLogin()}),1e3*this.pollingTime)}async pollingLogin(){try{if(this.state.qrcode&&this.state.qrcode.expirein>0){if(this.state.visible){const t=await ibiz.net.get("/uaa/open/wxmp/qrcode/".concat(this.state.qrcode.ticket),{},{srfdcsystem:ibiz.env.dcSystem}),{data:e,ok:n}=t;if(n&&(null==e?void 0:e.token)){clearInterval(this.pollingTimer);const t=30;X(Y.TOKEN_REMEMBER,"1",t),X(Y.TOKEN,e.token,t);const n=(new Date).getTime()+1e3*(e.expirein||7199);X(Y.TOKEN_EXPIRES,"".concat(n),t),e.refresh_token&&X(Y.REFRESH_TOKEN,e.refresh_token,t),J(Y.IS_ANONYMOUS);const o=this.route.query.ru||"/";window.location.hash=o||"/",window.history.pushState({},""),window.location.reload()}}}else clearInterval(this.pollingTimer)}catch(t){ibiz.log.error(t.message)}}async destroy(){await super.destroy(),this.pollingTimer&&(clearInterval(this.pollingTimer),this.pollingTimer=void 0),this.expirationTimer&&(clearInterval(this.expirationTimer),this.expirationTimer=void 0)}}class Yn{constructor(){this.component="IBizAuthWxmpQrcode"}async createController(t,e,n){const o=new Xn(t,e,n);return await o.init(),o}}t("IBizAuthWxmpQrcode",we(Hn,(function(t){t.component(Hn.name,Hn),Ct("RAWITEM_AUTH_WXMP_QRCODE",(()=>new Yn))}))),t("AppRedirectView",A({setup(){var t;const e=K.create((null==(t=ibiz.appData)?void 0:t.context)||{});P((()=>{e.destroy()}));const{href:n}=window.location;I((()=>ibiz.util.hiddenAppLoading())),async function(){await Bt(e,n)}()},render:()=>x("div",null,[ibiz.i18n.t("vue3Util.view.redirectionProgress")])}));class Jn{constructor(){this.component="IBizView"}}const Zn=A({name:"IBizView",props:{context:{type: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=de("view"),o=Ee(((...t)=>new pt(...t)));Ne(o);const a=jt(o.model),i=[],r=new Map,s=[];a.forEach((t=>{const{teleportFlag:e,teleportTag:n}=Vt(t);n||e?(i.push(t),r.set(t.id,n||"")):s.push(t)}));const{viewType:l,sysCss:c,codeName:d}=o.model,u=l.toLowerCase(),p=null==c?void 0:c.cssName,h=O((()=>[n.b(),n.b(u),n.m(d),p,o.state.viewMessages.TOP?"has-top-message":"",o.state.viewMessages.BOTTOM?"has-bottom-message":"",o.state.presetClassList])),m=(t,e={})=>{const n=t.name||t.id;return{context:o.context,params:o.params,modelData:t,...o.slotProps[n]||{},...e}};return{c:o,ns:n,controls:s,teleportControls:i,viewClassNames:h,onLayoutPanelCreated:t=>{o.setLayoutPanel(t)},getCtrlProps:m,renderControl:(t,n={})=>{const a=t.name||t.id,i=m(t,n);if(e[a])return B(e,a,i);const r=o.providers[a],s=b((null==r?void 0:r.component)||"IBizControlShell");return r&&(i.provider=r),w(s,i)},getCtrlTeleportTag:t=>{var e,n;const a=r.get(t.id);if(a)return a;const i=null==(n=null==(e=o.parentView)?void 0:e.layoutPanel)?void 0:n.panelItems[t.name];return i?"#".concat(i.state.teleportTag):void 0},getControlStyle:()=>{const t={};return Object.assign(t,{display:o.state.hasError?"none":"initial"}),t}}},render(){var t,e;let n=null;if(this.c.state.isCreated)if(0===this.c.engines.length)n=x("span",{style:"color:red;"},[ibiz.i18n.t("vue3Util.view.viewType",{viewType:this.modelData.viewType})]);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]=e=>this.renderControl(t,e)}));const o=this.c.model.viewLayoutPanel,a=this.c.providers[o.name];n=w(b(a.component),{modelData:o,context:this.c.context,params:this.c.params,provider:a,container:this.c,style:this.getControlStyle(),onControllerAppear:this.onLayoutPanelCreated},e)}let o=null;this.c.state.isCreated&&(null==(e=this.teleportControls)?void 0:e.length)&&(o=this.teleportControls.map((t=>{let e;const n=this.getCtrlTeleportTag(t);return n?x("div",{style:this.getControlStyle()},[x(L,{to:n,disabled:!this.c.state.activated},(o=e=this.renderControl(t),"function"==typeof o||"[object Object]"===Object.prototype.toString.call(o)&&!R(o)?e:{default:()=>[e]}))]):(ibiz.log.error(ibiz.i18n.t("vue3Util.view.noTeleportTag",{name:t.name})),null);var o})));let a=null;if(this.c.state.hasError&&this.c.error.status){const t=mt(this.c.error.status);t&&("string"==typeof t.component&&(a=w(b(t.component))),a=w(t.component))}return T(x("div",{class:this.viewClassNames,id:this.c.id},[n,o,a]),[[S("loading"),this.c.state.isLoading]])}});class to{constructor(){this.component="IBizView"}createController(t,e,n,o){return new kt(t,e,n,o)}}class eo{constructor(){this.component="IBizView"}createController(t,e,n,o){return new Mt(t,e,n,o)}}t("IBizView",we(Zn,(function(t){t.component(Zn.name,Zn),Ut("DEFAULT",(()=>new Jn)),Ut("APPDATAUPLOADVIEW",(()=>new to)),Ut("DEMDCUSTOMVIEW",(()=>new eo))}))),t("TodoRedirect",A({setup(){const t=Qt(),{href:e}=window.location,n=e.lastIndexOf("?"),o=decodeURIComponent(e.substring(n+1,e.length));if(!o)throw new Error(ibiz.i18n.t("vue3Util.view.insufficientRedirection"));const a=Yt.parse(o,{delimiter:";"}),{apptype:i,todotype:r,todoid:s}=a,l={srfapptype:"pc",srfapp:""};i||(l.todourltype="RouterUrl"),async function(){let e=(await ibiz.net.post("/systodos/".concat(s,"/getlinkurl"),l)).data.linkurl;i?window.location.href=e:(0!==e.indexOf("/")&&(e="/".concat(e)),e+=";srfwf=".concat(r),t.push("/index".concat(e)))}()},render:()=>x("div",null,[ibiz.i18n.t("vue3Util.view.toDoList")])}));class no{constructor(){this.component="IBizPortalView"}}const oo=A({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=de("view"),n=Ee(((...t)=>new pt(...t))),o=(null==(t=n.model.viewLayoutPanel)?void 0:t.controls)||n.model.controls,{viewType:a,sysCss:i,codeName:r}=n.model,s=a.toLowerCase(),l=null==i?void 0:i.cssName,c=[e.b(),e.b(s),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 i=this.c.providers[e];i&&(n[e]=()=>{const e=b(i.component);return w(e,{modelData:t,...o,provider:i})})})),n.dashboard&&(e=n.dashboard())}return x("div",{class:this.viewClassNames},[e])}}),ao=(t("IBizPortalView",we(oo,(function(t){t.component(oo.name,oo),Ut(rt.APP_PORTAL_VIEW,(()=>new no)),Ut(rt.DE_PORTAL_VIEW,(()=>new no)),Ut(rt.DE_PORTAL_VIEW9,(()=>new no))}))),A({name:"IBizDeRedirectView",props:{context:{type:Object,required:!0},params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},isEmbedCtrlNav:{type:Boolean,default:!1}},setup(t){const e=Ee(((...t)=>new pt(...t))),n=y(),o=y(),a=y();return e.evt.on("onCreated",(()=>{_t(h(t.modelData),h(e.context),h(e.params)).then((async t=>{if("view"!==t.type)throw new _(ibiz.i18n.t("vue3Util.view.embeddedRedirectionView"));n.value=t.viewId,o.value=t.context,a.value=t.params}))})),t.isEmbedCtrlNav&&l((()=>[e.context,e.params]),(()=>{_t(h(t.modelData),h(e.context),h(e.params)).then((async t=>{"view"===t.type&&(n.value=t.viewId,o.value=t.context)}))}),{deep:!0}),{c:e,toViewId:n,toViewContext:o,toViewParams:a}},render(){return this.toViewId?w(b("IBizViewShell"),{context:this.toViewContext,params:this.toViewParams,viewId:this.toViewId,...this.$attrs},this.$slots):T(x("div",{style:"width: 100%; height: 100%;"},null),[[S("loading"),!this.toViewId]])}}));class io{constructor(){this.component="IBizDeRedirectView"}}t("IBizDeRedirectView",we(ao,(function(t){t.component(ao.name,ao);const e=new io;Ut(rt.DE_REDIRECT_VIEW,(()=>e))})));class ro{constructor(){this.component="IBizHtmlView"}}const so=A({name:"IBizHtmlView",props:{context:Object,params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},modal:{type:Object},state:{type:Object}},setup(){var t;const e=de("view"),n=Ee(((...t)=>new pt(...t))),o=(null==(t=n.model.viewLayoutPanel)?void 0:t.controls)||n.model.controls,{viewType:a,sysCss:i,codeName:r}=n.model,s=a.toLowerCase(),l=null==i?void 0:i.cssName,c=[e.b(),e.b(s),e.m(r),l],d=y(!1),u=O((()=>{const{htmlUrl:t}=n.model;return t?Z.fill(t,n.context,n.params):""}));j((()=>{u.value&&(d.value=!0)}));return{c:n,ns:e,controls:o,viewClassNames:c,url:u,isLoading:d,onLoad:()=>{d.value=!1}}},render(){if(this.url)return T(x("div",{class:this.viewClassNames},[x("iframe",{src:this.url,onLoad:()=>this.onLoad()},null)]),[[S("loading"),this.isLoading]]);let t=null;const e=mt("404");return e&&("string"==typeof e.component&&(t=w(b(e.component))),t=w(e.component)),x("div",{class:this.viewClassNames},[t])}});t("IBizHtmlView",we(so,(function(t){t.component(so.name,so),Ut(rt.DE_HTML_VIEW,(()=>new ro))})));const lo=A({name:"IBizViewLayoutPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:{type:Object}},setup(t,{slots:e}){const n=le(((...e)=>new Ft(...e,t.container))),o=de("control-".concat(n.model.controlType.toLowerCase()));l((()=>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=v(e.state)}))}));const a=(t,o)=>{var i,r;if(t.hidden)return null;const{providers:s,panelItems:l}=o||n,c=s[t.id];if(!c)return x("div",null,[ibiz.i18n.t("vue3Util.control.unsupportedPanel",{id:t.id,itemType:t.itemType})]);if("CTRLPOS"!==t.itemType&&e[t.id])return B(e,t.id,{model:t,data:n.data,value:n.data[t.id]});const d=b(c.component);let u;if("CTRLPOS"===t.itemType&&e[t.id]){const n=l[t.id];u=n.parent&&qt(n.parent.model)?()=>e[t.id]({isSimple:!0,data:n.data}):()=>e[t.id]()}else"TABPANEL"===t.itemType&&(null==(i=t.panelTabPages)?void 0:i.length)?u=()=>t.panelTabPages.map((t=>a(t,o))):xt(t)?u=void 0:(null==(r=t.panelItems)?void 0:r.length)&&(u=()=>t.panelItems.map((t=>a(t,o))));let p="";t.cssStyle&&(p=t.cssStyle);const h=l[t.id],m=function(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=ut.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}(t,h);return m.dynamicstyle&&("object"==typeof m.dynamicstyle?p+=Object.entries(m.dynamicstyle).map((([t,e])=>"".concat(t,":").concat(e,";"))).join(""):p+=m.dynamicstyle,delete m.dynamicstyle),w(d,{modelData:t,controller:h,key:t.id,style:p,attrs:m},u)};return C("renderPanelItem",a),{c:n,ns:o,renderPanelItem:a}},render(){const{state:t,model:e}=this.c;return x(b("iBizControlBase"),{controller:this.c},{default:()=>[x(b("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",x(b("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=this.renderPanelItem(t))||"[object Object]"===Object.prototype.toString.call(o)&&!R(o)?e:{default:()=>[e]});var o})))]}})]})}});class co{constructor(){this.component="IBizViewLayoutPanelControl"}}t("IBizViewLayoutPanelControl",we(lo,(function(t){t.component(lo.name,lo),Gt(Wt.VIEW_LAYOUT_PANEL,(()=>new co))})));function uo(t,e,n){var o,a;if(t.hidden)return;const{providers:i,panelItems:r}=e,s=i[t.id];if(!s)return x("div",null,[ibiz.i18n.t("vue3Util.control.unsupportedPanel",{id:t.id,itemType:t.itemType})]);const l=b(s.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=>uo(t,e,n))):xt(t)?c=void 0:(null==(a=t.panelItems)?void 0:a.length)&&(c=()=>t.panelItems.map((t=>uo(t,e,n))));let d="";t.cssStyle&&(d=t.cssStyle);const u=r[t.id],p=function(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=ut.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}(t,u);return p.dynamicstyle&&("object"==typeof p.dynamicstyle?d+=Object.entries(p.dynamicstyle).map((([t,e])=>"".concat(t,":").concat(e,";"))).join(""):d+=p.dynamicstyle,delete p.dynamicstyle),w(l,{modelData:t,controller:u,key:t.id,style:d,attrs:p},c)}const po=A({name:"IBizPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:{type:Object},loadDefault:{type:Boolean,default:!0}},setup(t){const e=le(((...e)=>new $t(...e,t.container))),n=de("control-".concat(e.model.controlType.toLowerCase()));l((()=>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=v(n.state)}))}));const o=m("renderPanelItem");return C("renderPanelItem",o||uo),{c:e,ns:n}},render(){const{state:t,model:e}=this.c;return x(b("iBizControlBase"),{controller:this.c},{default:()=>[x(b("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",x(b("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=uo(t,this.c,this))||"[object Object]"===Object.prototype.toString.call(o)&&!R(o)?e:{default:()=>[e]});var o})))]}})]})}});class ho{constructor(){this.component="IBizPanelControl"}}t("IBizPanelControl",we(po,(function(t){t.component(po.name,po),Gt(Wt.PANEL,(()=>new ho))})));function mo(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function vo(t){if("string"!=typeof t)throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}function fo(t,e){for(var n,o="",a=0,i=-1,r=0,s=0;s<=t.length;++s){if(s<t.length)n=t.charCodeAt(s);else{if(47===n)break;n=47}if(47===n){if(i===s-1||1===r);else if(i!==s-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("/"),i=s,r=0;continue}}else if(2===o.length||1===o.length){o="",a=0,i=s,r=0;continue}e&&(o.length>0?o+="/..":o="..",a=2)}else o.length>0?o+="/"+t.slice(i+1,s):o=t.slice(i+1,s),a=s-i-1;i=s,r=0}else 46===n&&-1!==r?++r:r=-1}return o}var go={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),vo(a),0!==a.length&&(e=a+"/"+e,n=47===a.charCodeAt(0))}return e=fo(e,!n),n?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(t){if(vo(t),0===t.length)return".";var e=47===t.charCodeAt(0),n=47===t.charCodeAt(t.length-1);return 0!==(t=fo(t,!e)).length||e||(t="."),t.length>0&&n&&(t+="/"),e?"/"+t:t},isAbsolute:function(t){return vo(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];vo(n),n.length>0&&(void 0===t?t=n:t+="/"+n)}return void 0===t?".":go.normalize(t)},relative:function(t,e){if(vo(t),vo(e),t===e)return"";if((t=go.resolve(t))===(e=go.resolve(e)))return"";for(var n=1;n<t.length&&47===t.charCodeAt(n);++n);for(var o=t.length,a=o-n,i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var r=e.length-i,s=a<r?a:r,l=-1,c=0;c<=s;++c){if(c===s){if(r>s){if(47===e.charCodeAt(i+c))return e.slice(i+c+1);if(0===c)return e.slice(i+c)}else a>s&&(47===t.charCodeAt(n+c)?l=c:0===c&&(l=0));break}var d=t.charCodeAt(n+c);if(d!==e.charCodeAt(i+c))break;47===d&&(l=c)}var u="";for(c=n+l+1;c<=o;++c)c!==o&&47!==t.charCodeAt(c)||(0===u.length?u+="..":u+="/..");return u.length>0?u+e.slice(i+l):(i+=l,47===e.charCodeAt(i)&&++i,e.slice(i))},_makeLong:function(t){return t},dirname:function(t){if(vo(t),0===t.length)return".";for(var e=t.charCodeAt(0),n=47===e,o=-1,a=!0,i=t.length-1;i>=1;--i)if(47===(e=t.charCodeAt(i))){if(!a){o=i;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');vo(t);var n,o=0,a=-1,i=!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,s=-1;for(n=t.length-1;n>=0;--n){var l=t.charCodeAt(n);if(47===l){if(!i){o=n+1;break}}else-1===s&&(i=!1,s=n+1),r>=0&&(l===e.charCodeAt(r)?-1==--r&&(a=n):(r=-1,a=s))}return o===a?a=s:-1===a&&(a=t.length),t.slice(o,a)}for(n=t.length-1;n>=0;--n)if(47===t.charCodeAt(n)){if(!i){o=n+1;break}}else-1===a&&(i=!1,a=n+1);return-1===a?"":t.slice(o,a)},extname:function(t){vo(t);for(var e=-1,n=0,o=-1,a=!0,i=0,r=t.length-1;r>=0;--r){var s=t.charCodeAt(r);if(47!==s)-1===o&&(a=!1,o=r+1),46===s?-1===e?e=r:1!==i&&(i=1):-1!==e&&(i=-1);else if(!a){n=r+1;break}}return-1===e||-1===o||0===i||1===i&&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){vo(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 i=-1,r=0,s=-1,l=!0,c=t.length-1,d=0;c>=n;--c)if(47!==(o=t.charCodeAt(c)))-1===s&&(l=!1,s=c+1),46===o?-1===i?i=c:1!==d&&(d=1):-1!==i&&(d=-1);else if(!l){r=c+1;break}return-1===i||-1===s||0===d||1===d&&i===s-1&&i===r+1?-1!==s&&(e.base=e.name=0===r&&a?t.slice(1,s):t.slice(r,s)):(0===r&&a?(e.name=t.slice(1,i),e.base=t.slice(1,s)):(e.name=t.slice(r,i),e.base=t.slice(r,s)),e.ext=t.slice(i,s)),r>0?e.dir=t.slice(0,r-1):a&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};go.posix=go;var yo=go,wo=mo(yo);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.code,e.extraParams)}))}async loadPredefinedPlugin(t){if(this.predefinedPlugins.has(t)){const e=this.predefinedPlugins.get(t);e&&await this.loadPluginRef(e.name,e.path)}}setPluginCode(t,e={}){this.pluginCodes.push({code:t,extraParams:e}),ee.useComponent.callSync(null,t,e)}async loadPlugin(t,e=ibiz.env.appId){if(!0===t.runtimeObject){const n=t;if(n){const t=n.rtobjectName,o=n.rtobjectRepo,a=n.pluginParams||{};if(this.isIgnore(o))return!0;if(this.pluginCache.has(t))return!0;if(this.loadQueue.has(o)){const t=await this.loadQueue.get(o);try{return await t}catch(t){return!1}}try{const t=this.loadPluginRef(n.rtobjectName,n.rtobjectRepo,e,{...a});this.loadQueue.set(o,t);return await t}catch(t){throw new Q(n,ibiz.i18n.t("vue3Util.plugin.failureConfigurationLoad"))}finally{this.loadQueue.delete(o)}}}return!1}async loadPluginRef(t,e,n=ibiz.env.appId,o={}){if(this.isIgnore(e))return!0;if(this.pluginCache.has(t))return!0;let a=null;{const t=e,o=this.urlReg.test(t)?"".concat(t,"/package.json"):"".concat("FULLCODE"===ibiz.env.runContainer&&n!==ibiz.env.appId?ibiz.hub.microAppConfigCenter.getPluginBaseUrl(n):ibiz.env.pluginBaseUrl,"/").concat(yo.join(t,"package.json")),i=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:o});if(200!==i.status)throw new Error(ibiz.i18n.t("vue3Util.plugin.failureConfigurationLoad"));a=i.data}Object.assign(a,{appId:n,extraParams:o});const i=new Kt(t,e,a);if(i){await this.loadPluginExternal(i.config);try{return await this.loadScript(i),this.pluginCache.set(t,i),!0}catch(t){ibiz.log.error(t)}}return!1}async loadScript(t){const e=t.repo,{name:n,appId:o,system:a,styles:i=[],extraParams:r={}}=t.config;let s="";if(s=yo.join(e,a),s){if(this.cache.has(s))return;const t="FULLCODE"===ibiz.env.runContainer&&o!==ibiz.env.appId?ibiz.hub.microAppConfigCenter.getPluginBaseUrl(o):ibiz.env.pluginBaseUrl;let a=null;const l=this.parseUrl(s,t),c=("string"==typeof i?[i]:i).map((n=>this.parseUrl(wo.join(e,n),t)));if(System.addImportMap({imports:{[n]:l},styles:{[n]:c}}),a=await System.import(n),!a)throw new _(ibiz.i18n.t("vue3Util.plugin.fileContentFormat"));if(!a.default)throw new _(ibiz.i18n.t("vue3Util.plugin.failedRemotePluginLoad"));this.setPluginCode(a.default,r),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(yo.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"],t.appId);if(e.packages){const n=e.packages;for(const e in n){const o=n[e],a=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:o});if(200!==a.status)throw new Error(ibiz.i18n.t("vue3Util.plugin.failureConfigurationLoad"));const i=a.data;Object.assign(i,{appId:t.appId}),await this.loadPluginExternal(i)}}System.addImportMap(e)}handleSystemImportMap(t,e){if(t){if(t.baseUrl||"FULLCODE"!==ibiz.env.runContainer||e===ibiz.env.appId||(t.baseUrl=ibiz.hub.microAppConfigCenter.getPluginBaseUrl(e)),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 bo{constructor(t,e,n){this.required=!0,e&&(this.default=e),n&&(this.validator=n),this.type=t}}function Co(){return{value:String,controller:new bo(Object),data:new bo(Object),disabled:{type:Boolean},readonly:{type:Boolean,default:!1},autoFocus:{type:Boolean,default:!1},overflowMode:{type:String},controlParams:{type:Object,required:!1}}}function Io(){return{change:(t,e,n)=>!0,blur:t=>!0,focus:t=>!0,enter:t=>!0,infoTextChange:t=>!0}}function Po(){return{hasError:{type:Boolean}}}function Do(){return{...Co(),value:[String,Number]}}function Eo(){return{...Co(),value:[String,Number,Object,Array]}}function No(){return{...Co(),value:[String,Number]}}function Oo(){return{...Co(),value:[String,Number]}}function Ao(){return{...Co(),value:[String,Number]}}function xo(){return{...Co(),value:[String,Array,Object,Number]}}function To(){return{...Co(),value:[String,Number]}}function So(){return{...Co(),value:[String,Number]}}function zo(){return{...Co(),value:{type:Object}}}function Ro(){return{...Co(),value:[String,Number]}}function Lo(){return{...Co(),value:[String,Number]}}function Bo(){return{...Co(),value:[String,Number]}}function jo(){return{...Co(),value:[String,Number]}}function Vo(){return{...Co(),value:[String,Number,Array]}}function ko(){return{...Co(),value:[String,Number]}}function Mo(){return{...Co(),value:[String,Number]}}function Uo(){return{...Co(),value:[String,Number]}}function _o(){return{...Co(),value:String}}function Fo(){return{...Co(),value:[String,Number]}}function qo(){return{...Co(),value:String,language:{type:String},theme:{type:String}}}function Go(){return{...Co(),value:String}}function Wo(){return{...Co(),data:{type:Object,required:!1},controller:{type:Object,required:!1},disabled:{type:Boolean,required:!1}}}function $o(){return{...Co(),value:[Array,Array]}}function Ko(){return{...Co(),value:String}}function Ho(){return{...Co(),value:String}}function Qo(){return{...Co(),value:String}}function Xo(){return{...Co(),value:Number}}function Yo(){return{...Co(),value:String}}t("RequiredProp",bo);t("en",{vue3Util:{common:{undefined:"undefined",onFoundCorrespondingPart:"Undefined adapter with no corresponding part found",noFoundViewModel:"View model not found",noSupportLoadingDynamic:"{codeName}No entity, do not support loading dynamic models at this time"},control:{unsupportedPanel:"Unsupported panel items: {id} - {itemType}"},panelComponent:{noConfiguardDataObject:"No data object name config",noSupportedDataSourceType:"The data source type {dataSourceType} is not supported",noConfiguredEntityLogic:"No entity logic config",noConfiguredEntity:"No entity config",noReturnValue:"The entity logic {appDELogicId} has no return value",noAttribute:"There is no {dataName} attribute in the global variable.",noConfiguredScript:"No javaScript config",noConfiguerdEntityBehanior:"No entity behavior config",sessionView:"The session to which the view is bound does not exist {dataName}",viewStateAttribute:"There is no {dataName} attribute in the view state",noImplementMethod:"Method not implemented.",noProvidedSlot:"No {id} slot provided",cannotEmpty:"{caption} cannot be empty",unadaptedLayout:"Unadapted layout placeholder {layoutPos}",placeholderIdentifier:"The placeholder identifier for panel member {id} of view {viewCodeName} is:",refresh:"Refresh",wxQrcodeCaption:"Please use wechat to scan the QR code to log in"},plugin:{failureConfigurationLoad:"Configuration load failure",failedRemotePluginLoad:"Remote Plugin failed to load, Remote Plugin did not find [default] Default Export",fileContentFormat:"Remote plugin failed to load, file not found or file content format is incorrect"},use:{control:{parameterChanges:"Context or view parameter changes for {id}:",stateChange:"Part [{name}] state change"},focusBlur:{noFocus:"No focus, no out-of-focus triggering"},view:{stateChange:"View [{name}] state change"}},util:{noInjected:"The createVueApp method is not injected.",convertString:"Failed to convert to string",viewIdentifiers:"View identifiers do not exist for {depth} level routes",noFoundView:"View not found {viewCodeName}",routeCorrectly:"Cannot get the route correctly, could be a dependency issue."},view:{redirectionProgress:"Redirection in progress",viewType:"View type {viewType} is not supported yet.",noTeleportTag:"No teleportTag was found for part {name}.",embeddedRedirectionView:"Embedded redirection view does not support url jumping",insufficientRedirection:"Insufficient redirection parameters to jump",toDoList:"To-Do List Redirection"}}}),t("zhCn",{vue3Util:{common:{undefined:"未定义",onFoundCorrespondingPart:"未定义未找到对应部件的适配器",noFoundViewModel:"未找到视图模型",noSupportLoadingDynamic:"{codeName}无实体,暂不支持加载动态模型"},control:{unsupportedPanel:"暂未支持的面板项: {id} - {itemType}"},panelComponent:{noConfiguardDataObject:"没有配置数据对象名称",noSupportedDataSourceType:"数据源类型{dataSourceType}暂未支持",noConfiguredEntityLogic:"没有配置实体逻辑",noConfiguredEntity:"没有配置实体",noReturnValue:"实体逻辑{appDELogicId}没有返回值",noAttribute:"全局变量里没有{dataName}属性",noConfiguredScript:"没有配置脚本代码",noConfiguerdEntityBehanior:"没有配置实体行为",sessionView:"绑定视图的会话不存在{dataName}",viewStateAttribute:"视图state里没有{dataName}属性",noImplementMethod:"未执行的方法",noProvidedSlot:"未提供{id}插槽",cannotEmpty:"{caption} 不能为空",unadaptedLayout:"未适配的布局占位{layoutPos}",placeholderIdentifier:"视图{viewCodeName}的面板成员{id}的占位标识是:",refresh:"刷新",wxQrcodeCaption:"请使用微信扫描二维码登录"},plugin:{failureConfigurationLoad:"配置加载失败",failedRemotePluginLoad:"远程插件加载失败, 远程插件未找到[default]默认导出",fileContentFormat:"远程插件加载失败, 未找到文件或文件内容格式不正确"},use:{control:{parameterChanges:"{id}的上下文或视图参数变更:",stateChange:"部件 [{name}] state 变更"},focusBlur:{noFocus:"没有聚焦,不触发失焦"},view:{stateChange:"视图 [{name}] state 变更"}},util:{noInjected:"没有注入createVueApp方法",convertString:"转换成字符串失败",viewIdentifiers:"第{depth}级路由不存在视图标识",noFoundView:"找不到视图{viewCodeName}",routeCorrectly:"无法正确获取route,可能是依赖问题"},view:{redirectionProgress:"重定向跳转中",viewType:"视图类型{viewType}暂未支持",noTeleportTag:"没有找到部件{name}的teleportTag",embeddedRedirectionView:"嵌入重定向视图不支持url跳转",insufficientRedirection:"重定向参数不足无法跳转",toDoList:"待办列表重定向"}}})}}}));
|
|
1
|
+
System.register(["qx-util","vue","@ibiz-template/core","ramda","@ibiz-template/runtime","vue-router","qs","lodash-es","pinia"],(function(t){"use strict";var e,n,o,a,i,r,s,l,c,d,u,p,h,m,v,f,g,y,w,b,C,I,P,D,E,N,O,A,x,S,T,z,R,L,B,j,V,k,M,U,_,F,q,G,W,$,K,H,Q,X,Y,J,Z,tt,et,nt,ot,at,it,rt,st,lt,ct,dt,ut,pt,ht,mt,vt,ft,gt,yt,wt,bt,Ct,It,Pt,Dt,Et,Nt,Ot,At,xt,St,Tt,zt,Rt,Lt,Bt,jt,Vt,kt,Mt,Ut,_t,Ft,qt,Gt,Wt,$t,Kt,Ht,Qt,Xt,Yt,Jt,Zt,te,ee;return{setters:[function(t){e=t.SyncSeriesHook,n=t.AsyncSeriesHook,o=t.isFunc,a=t.notNilEmpty,i=t.QXEvent,r=t.clearAll,s=t.createUUID},function(t){l=t.watch,c=t.onBeforeUnmount,d=t.createCommentVNode,u=t.getCurrentInstance,p=t.isReactive,h=t.toRaw,m=t.inject,v=t.reactive,f=t.onActivated,g=t.onDeactivated,y=t.ref,w=t.h,b=t.resolveComponent,C=t.provide,I=t.onMounted,P=t.onUnmounted,D=t.isRef,E=t.shallowRef,N=t.watchEffect,O=t.computed,A=t.defineComponent,x=t.createVNode,S=t.withDirectives,T=t.resolveDirective,z=t.mergeProps,R=t.isVNode,L=t.Teleport,B=t.renderSlot,j=t.onBeforeMount},function(t){V=t.onClickOutside,k=t.NOOP,M=t.listenJSEvent,U=t.Namespace,_=t.RuntimeError,F=t.isBase64Image,q=t.isBase64,G=t.base64ToStr,W=t.isSvg,$=t.fixJsonString,K=t.IBizContext,H=t.ModelError,Q=t.RuntimeModelError,X=t.setAppCookie,Y=t.CoreConst,J=t.clearAppCookie,Z=t.StringUtil},function(t){tt=t.isNil,et=t.isNotNil,nt=t.clone,ot=t.isEmpty,at=t.mergeLeft},function(t){it=t.MDControlTypes,rt=t.ViewType,st=t.RouteConst,lt=t.getMatchResPath,ct=t.calcDeCodeNameById,dt=t.PredefinedControlRender,ut=t.ScriptFactory,pt=t.ViewController,ht=t.getControlProvider,mt=t.getErrorViewProvider,vt=t.calcDynaSysParams,ft=t.getViewProvider,gt=t.useCalcOrMode,yt=t.calcThresholdRange,wt=t.PanelItemState,bt=t.PanelItemController,Ct=t.registerPanelItemProvider,It=t.Modal,Pt=t.ViewMode,Dt=t.OpenAppViewCommand,Et=t.getEditorProvider,Nt=t.PanelItemEventName,Ot=t.calcDynaClass,At=t.getAllPanelField,xt=t.isDataContainer,St=t.PanelNotifyState,Tt=t.getPanelItemProvider,zt=t.convertNavData,Rt=t.PanelData,Lt=t.execDELogicById,Bt=t.toLocalOpenWFRedirectView,jt=t.getControlsByView,Vt=t.getCtrlTeleportParams,kt=t.AppDataUploadViewController,Mt=t.MDCustomViewController,Ut=t.registerViewProvider,_t=t.getDERedirectToView,Ft=t.ViewLayoutPanelController,qt=t.isSimpleDataContainer,Gt=t.registerControlProvider,Wt=t.ControlType,$t=t.PanelController,Kt=t.RemotePluginItem},function(t){Ht=t.useRoute,Qt=t.useRouter,Xt=t.RouterView},function(t){Yt=t.default},function(t){Jt=t.isElement,Zt=t.isNumber},function(t){te=t.defineStore,ee=t.createPinia}],execute:function(){t({calcResRoutePath:ge,computedAsync:function(t,e,n){let o;o=D(n)?{evaluating:n}:n||{};const{lazy:a=!1,flush:i="pre",evaluating:r,shallow:s=!0,onError:l=k}=o,c=E(!a),d=s?E(e):y(e);let u=0;if(N((async e=>{if(!c.value)return;u++;const n=u;let o=!1;r&&Promise.resolve().then((()=>{r.value=!0}));try{const a=await t((t=>{e((()=>{r&&(r.value=!1),o||t()}))}));n===u&&(d.value=a)}catch(t){l(t)}finally{r&&n===u&&(r.value=!1),o=!0}}),{flush:i}),a)return O((()=>(c.value=!0,d.value)));return d},createOverlayView:Ie,generateRoutePath:async function(t,e,n,o){var a;const i=pe(e);let r=n.srfdefaulttoroutedepth||2;n.toRouteDepth?(r=n.toRouteDepth,n.toRouteDepth=void 0):ibiz.env.isMob&&"DEFAULT"===ibiz.env.mobMenuShowMode&&(i.pathNodes[0]={viewName:"home"});let s=null==o?void 0:o.srfmenuitem;!s&&i.pathNodes.length>1&&(s=null==(a=i.pathNodes[1].params)?void 0:a.srfmenuitem);if(i.pathNodes.splice(r-1,i.pathNodes.length-r+1),n.currentSrfNav){const t=i.pathNodes[i.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}ve(n,i.pathNodes),e.fullPath.startsWith("/appredirectview")&&((null==o?void 0:o.srfindexname)?(i.pathNodes[0].viewName=o.srfindexname,delete o.srfindexname):i.pathNodes[0].viewName="index");if(i.pathNodes.push({viewName:t.codeName.toLowerCase(),context:me(n),params:o}),2===r&&(await ge(i,n,t.appDataEntityId,t.appId),fe.includes(t.viewType))){const e=ct(t.appDataEntityId);delete i.pathNodes[0].context[e]}if(s&&i.pathNodes.length>1){const t=i.pathNodes[1].params||{};i.pathNodes[1].params={...t,srfmenuitem:s}}return{path:he(i)}},generateRoutePathByModal:async function(t,e,n,o){const a=pe(e),i=a.pathNodes.findIndex((t=>t.viewName===st.ROUTE_MODAL_TAG));-1!==i&&(a.pathNodes=a.pathNodes.slice(0,i));if(n.currentSrfNav){const t=a.pathNodes[a.pathNodes.length-1];t.params=t.params||{},t.srfnav=n.currentSrfNav,n.currentSrfNav=void 0}return ve(n,a.pathNodes),a.pathNodes.push({viewName:"".concat(st.ROUTE_MODAL_TAG,"/").concat(t.codeName.toLowerCase()),context:me(n),params:o}),{path:he(a)}},getArrayProps:Ko,getAutoCompleteProps:qo,getCascaderProps:Ho,getCheckboxListProps:Ao,getCheckboxProps:xo,getCodeProps:Go,getColorPickerProps:Qo,getDataPickerProps:So,getDatePickerProps:To,getDateRangeProps:zo,getDateRangeSelectEmits:function(){return{change:(t,e,n)=>!0,blur:t=>!0,focus:t=>!0,enter:t=>!0,infoTextChange:t=>!0,change:(t,e,n)=>!0}},getDateRangeSelectProps:Ro,getDrawerPlacement:function(t){return Pe[t]||"right"},getDropdownProps:Oo,getEditorEmits:Po,getEditorProps:Io,getGridArrayProps:function(){return{...Ko(),...Do()}},getGridAutoCompleteProps:function(){return{...qo(),...Do()}},getGridCascaderProps:function(){return{...Ho(),...Do()}},getGridCheckboxListProps:function(){return{...Ao(),...Do()}},getGridCheckboxProps:function(){return{...xo(),...Do()}},getGridCodeProps:function(){return{...Go(),...Do()}},getGridColorPickerProps:function(){return{...Qo(),...Do()}},getGridDataPickerProps:function(){return{...So(),...Do()}},getGridDatePickerProps:function(){return{...To(),...Do()}},getGridDateRangeProps:function(){return{...zo(),...Do()}},getGridDateRangeSelectProps:function(){return{...Do(),...Ro()}},getGridDropdownProps:function(){return{...Oo(),...Do()}},getGridEditorCommonProps:Do,getGridEditorEmits:function(){return{change:(t,e,n)=>!0,rowSave:()=>!0}},getGridHtmlProps:function(){return{...Wo(),...Do()}},getGridInputIpProps:function(){return{...Xo(),...Do()}},getGridInputNumberProps:function(){return{...Yo(),...Do()}},getGridInputProps:function(){return{...Eo(),...Do()}},getGridListBoxProps:function(){return{...Lo(),...Do()}},getGridMapPickerProps:function(){return{...Jo(),...Do()}},getGridMarkDownProps:function(){return{...$o(),...Do()}},getGridNumberRangeProps:function(){return{...Bo(),...Do()}},getGridRadioProps:function(){return{...jo(),...Do()}},getGridRateProps:function(){return{...Vo(),...Do()}},getGridRawProps:function(){return{...ko(),...Do()}},getGridSliderProps:function(){return{...Mo(),...Do()}},getGridSpanProps:function(){return{...No(),...Do()}},getGridStepperProps:function(){return{...Uo(),...Do()}},getGridSwitchProps:function(){return{..._o(),...Do()}},getGridUploadProps:function(){return{...Fo(),...Do()}},getHtmlProps:Wo,getInputIpProps:Xo,getInputNumberProps:Yo,getInputProps:Eo,getListBoxProps:Lo,getMapPickerProps:Jo,getMarkDownProps:$o,getNestedRoutePath:ye,getNumberRangeProps:Bo,getOrigin:ie,getOwnRouteContext:me,getRadioProps:jo,getRateProps:Vo,getRawProps:ko,getSliderProps:Mo,getSpanProps:No,getStepperProps:Uo,getSwitchProps:_o,getUploadProps:Fo,isEmptyVNode:function(t){if(!Array.isArray(t))return t===se;return 1===t.length&&t[0]===se},onRouteChange:function(t,e){const n=Ht();if(!n)throw new _(ibiz.i18n.t("vue3Util.util.routeCorrectly"));l((()=>null==n?void 0:n.fullPath),(()=>{const o=ye(n,e);t({currentKey:o,fullPath:n.fullPath})}),{immediate:!0})},openViewDrawer:async function(t,e){const n=ibiz.overlay.createDrawer(Ie(t),void 0,e);await n.present();return await n.onWillDismiss()||{ok:!1}},openViewFloatWindow:async function(t,e){const n=ibiz.overlay.createFloatWindow(Ie(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewModal:async function(t,e){const n=ibiz.overlay.createModal(Ie(t),void 0,e);n.present();return await n.onWillDismiss()||{ok:!1}},openViewPopover:async function(t,e,n){const o=ibiz.overlay.createPopover(Ie(e),void 0,n);o.present(t.target);return await o.onWillDismiss()||{ok:!1}},parseRouteViewData:async function(t,e,n=!1){var o;const i=pe(t,n);let r=i.pathNodes[e-1].viewName;if(!r)throw new _(ibiz.i18n.t("vue3Util.util.viewIdentifiers",{depth:e}));r===st.ROUTE_MODAL_TAG&&(r=i.pathNodes[e].viewName);"index"===r&&(r=ibiz.hub.defaultAppIndexViewName);const s=await ibiz.hub.config.view.get(r);if(!s)throw new _(ibiz.i18n.t("vue3Util.util.noFoundView",{viewCodeName:r}));const l={};(null==(o=ibiz.appData)?void 0:o.context)&&Object.assign(l,ibiz.appData.context);i.appContext&&Object.assign(l,i.appContext);if(1!==e)for(let t=0;t<e;t++){const n=i.pathNodes[t];a(n.context)&&Object.assign(l,n.context),t!==e-1||n.context&&!tt(n.context.srfnavctrlid)||delete l.srfnavctrlid}const{params:c,srfnav:d}=i.pathNodes[e-1];return{viewConfig:s,context:l,params:c,srfnav:d}},prepareControl:function(t){const e=ue("control"),{controlType:n,sysCss:o,codeName:a}=t.model,i=n.toLowerCase(),r=null==o?void 0:o.cssName,s=ue("control-".concat(i)),l=[e.b(),e.b(i),e.m(a)];r&&l.push(r);return{controlClass:l,ns:s}},renderString:function(t){if(tt(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,ibiz.i18n.t("vue3Util.util.convertString"),e)}return""},route2routePath:pe,routePath2string:he,shareCommonAncestor:Ae,useAutoFocusBlur:function(t,e){return{useInFocusAndBlur:()=>{t.autoFocus||e("blur")},useInValueChange:()=>{t.autoFocus&&e("blur")}}},useClickOutside:oe,useCodeListListen:function(t,e,n){let o;I((async()=>{if(t){const a=await ibiz.hub.getApp(e);o=await a.codeList.getCodeListInstance(t),o&&o.onChange(n)}})),P((()=>{o&&o.offChange(n)}))},useControlController:ce,useController:function(t){t.force=re()},useCtx:le,useEventListener:de,useFocusAndBlur:function(t,e){const n=y(),o=y(!1);let a;const i=()=>{o.value||ibiz.log.debug(ibiz.i18n.t("vue3Util.use.focusBlur.noFocus")),e(),a.stop(),o.value=!1};return de(n,"click",(e=>{o.value||(a=oe(n,(()=>{i()})),o.value=!0,t())}),{capture:!0}),{componentRef:n,isFocus:o,doBlur:i,pause:()=>{a&&a.pause()},stop:()=>{a&&a.stop()}}},useForce:re,useForceTogether:function(t,e){const n=e.force,o=re();e.force=t=>{n(t),o()}},useLocalCacheKey:function(t,e,n,o="@",a=""){const i=Qt();return()=>{if(!i)return;const r=t.srfuserid;if(n=t.srfdefaulttoroutedepth||n){const t=pe(i.currentRoute.value);if(r&&t.pathNodes[n-2]){t.pathNodes=t.pathNodes.slice(0,n-1),t.pathNodes.forEach((t=>{t.context&&delete t.context.srfnavctrlid}));const a=he(t);return"".concat(e).concat(o).concat(r).concat(o).concat(a)}}return a?"".concat(e).concat(o).concat(r).concat(o).concat(a):void 0}},useMobCtx:function(){return m("ctx")},useNamespace:ue,usePopoverVisible:function(t,e){let n;const o=y(!1);return l((()=>t.value),(a=>{a&&!n&&(n=M(window,"click",(n=>{if(o.value&&t.value){Ae(e(t.value),n.target)&&(o.value=!1)}}),{capture:!0}))}),{immediate:!0}),P((()=>{null==n||n()})),{popoverVisible:o,setPopoverVisible:t=>{o.value=t}}},usePopoverzIndex:function(){const t="popover_".concat(s());return{popoverid:t,setPopoverZIndex:e=>{const{zIndex:n}=Ee(),o=document.getElementsByClassName(t),a=n.increment();if(o&&o.length>0&&e)for(let t=0;t<o.length;t++)o[t].style.setProperty(e,"".concat(a))}}},useProps:ae,usePropsWatch:function(t,e,n){const o=ae();Object.prototype.hasOwnProperty.call(o,t)&&(l((()=>o[t]),((t,n)=>{e(ie(t),ie(n))}),n),e(ie(o[t]),void 0))},useRouteKey:function(t,e,n){n||(n=y(""));n.value=t.value;const o=new we(e);return l(t,((t,e)=>{t!==e&&o.nextChange((()=>{n.value=t}))})),n},useRouterQuery:function(){const t=Ht(),{query:e}=t;return e},useViewController:Ne,useViewOperation:Oe});class ne{}function oe(t,e,n={}){let o=k,a=k,i=k;const r=()=>{o(),o=k,a=k,i=k};return l(t,((t,s)=>{if(t!==s)if(tt(t))r();else{const r=V((null==t?void 0:t.$el)||t,e,n);o=r.stop,a=r.pause,i=r.proceed}}),{immediate:!0}),c((()=>{o!==k&&r()})),{stop:()=>o(),pause:()=>a(),proceed:()=>i()}}function ae(){return u().proxy.$props}function ie(t){return p(t)?h(t):t}function re(){const t=u().proxy;return e=>{t.$forceUpdate(),e&&o(e)&&t.$nextTick((()=>{e()}))}}t("AppHooks",ne),ne.createApp=new e,ne.useComponent=new e,ne.appResorceInited=new n,ne.beforeInitApp=new n,ne.authedApp=new n,ne.initedApp=new n,ne.destoryApp=new n;const se=t("EmptyVNode",d("EmptyVNode"));function le(){return m("ctx")}function ce(t,e){const n=le(),o=ae();n.evt.emit("onForecast",o.modelData.name);const a=o.provider;let i;i=(null==a?void 0:a.createController)?a.createController(o.modelData,o.context,o.params,n):t(o.modelData,o.context,o.params,n),-1!==it.indexOf(i.model.controlType)&&ibiz.util.record.add(i.ctrlId,i),function(t,e){l((()=>({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(ibiz.i18n.t("vue3Util.use.control.parameterChanges",{id:e.model.id}),t)}))}(o,i),function(t,e,n=[]){const o=["context","params","modelData",...n];l((()=>{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(ibiz.i18n.t("vue3Util.use.control.stateChange",{name:e.model.name}),o),Object.keys(o).forEach((t=>{void 0!==o[t]&&(e.state[t]=o[t])}))}),{immediate:!0})}(o,i,null==e?void 0:e.excludePropsKeys),i.state=v(i.state),f((()=>i.onActivated())),g((()=>i.onDeactivated())),i.force=re();const r=u().proxy;return i.evt.onAll(((t,e)=>{r.$emit(t.slice(2),e)})),r.$emit("controllerAppear",i),i.created(),c((()=>{i.destroyed(),-1!==it.indexOf(i.model.controlType)&&ibiz.util.record.remove(i.ctrlId)})),i}function de(t,e,n,o={}){let a=k;return l(t,((t,i)=>{t!==i&&(tt(t)?(a(),a=k):a=M((null==t?void 0:t.$el)||t,e,n,o))}),{immediate:!0}),c((()=>{a!==k&&a()})),()=>{a()}}function ue(t){return new U(t,ibiz.env.namespace)}function pe(t,e=!1){const n=t.matched.length;let o=t.path;e&&(o=o.replace(new RegExp("/".concat(st.ROUTE_MODAL_TAG),"g"),""));const a=o.split("/"),i=[];for(let e=1;e<=n;e++){const n=a[2*e],o=t.params["params".concat(e)];let r,s,l;r=o&&o!==ibiz.env.routePlaceholder?Yt.parse(o,{strictNullHandling:!0,delimiter:";",depth:8}):void 0,r&&(1===e?(s=r,r=void 0):(r.srfnavctx&&(s=JSON.parse(r.srfnavctx),delete r.srfnavctx),r.srfnav&&(l=r.srfnav,delete r.srfnav))),i.push({viewName:n,context:s,params:r,srfnav:l})}let r;return t.params.appContext&&t.params.appContext!==ibiz.env.routePlaceholder&&(r=Yt.parse(t.params.appContext,{strictNullHandling:!0,delimiter:";"})),{appContext:r,pathNodes:i}}function he(t){let e="";return t.appContext?e+="/".concat(Yt.stringify(t.appContext,{delimiter:";",strictNullHandling:!0})):e+="/".concat(ibiz.env.routePlaceholder),t.pathNodes.forEach(((t,n)=>{e+="/".concat(t.viewName,"/");let o={};if(0===n)a(t.context)&&(o=t.context);else{if(o=a(t.params)?t.params:{},a(t.context)){const e=JSON.stringify(t.context);"{}"!==e&&(o.srfnavctx=encodeURIComponent(e))}t.srfnav&&(o.srfnav=t.srfnav)}const i=Yt.stringify(o,{delimiter:";",strictNullHandling:!0,skipNulls:!0});a(i)?e+=i:e+=ibiz.env.routePlaceholder})),e}function me(t){const e=t.getOwnContext(),n=["srfsessionid","srfappid","currentSrfNav","toRouteDepth"];if(e.attributekeys){const n=e.attributekeys.split("|");n&&n.length>0&&n.forEach((n=>{et(t[n])&&(e[n]=t[n])})),delete e.attributekeys}let o=!1;return Object.prototype.hasOwnProperty.call(e,"srfkeepnull")&&(o=!0===e.srfkeepnull||"true"===e.srfkeepnull,delete e.srfkeepnull),Object.keys(e).forEach((t=>{(n.includes(t)||!o&&tt(e[t]))&&delete e[t]})),e}function ve(t,e){let n=-1;e&&e.length>0&&(n=e.findIndex((t=>{var e;return!0===(null==(e=t.context)?void 0:e.srfreadonly)}))),t.srfreadonly&&!t.getOwnContext().srfreadonly&&-1===n&&(t.srfreadonly=!0)}const fe=t("excludeViewTypes",[rt.DE_GRID_VIEW,rt.DE_GRID_EXP_VIEW,rt.DE_LIST_VIEW,rt.DE_LIST_EXP_VIEW,rt.DE_DATA_VIEW,rt.DE_DATAVIEW_EXP_VIEW,rt.DE_CALENDAR_VIEW,rt.DE_CALENDAR_EXP_VIEW,rt.DE_CHART_VIEW,rt.DE_CHART_EXP_VIEW,rt.DE_KANBAN_VIEW]);async function ge(t,e,n,o){if(n){const a=await ibiz.hub.getAppDataEntity(n,o);let i=lt(e,a);if(i||(i={path:"",keys:[a.codeName.toLowerCase()]}),i){const n=t.pathNodes[1].context,o={};i.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 ye(t,e,n=!0){if(t.matched.length<e)return"";if(t.matched.length===e&&t.name)return t.path;const o=pe(t);if(o.pathNodes.length<e)return t.path;o.pathNodes.length>e&&(o.pathNodes=o.pathNodes.slice(0,e));const a=o.pathNodes[e-1];return n&&delete a.srfnav,a.context&&delete a.context.srfnavctrlid,he(o)}class we{constructor(t,e){this.callbacks=[],this.timers=[],this.wait=500,e&&(this.wait=e),l((()=>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",we);const be=t("withInstall",((t,e)=>(t.install=t=>{e(t)},t)));t("hasEmptyPanelRenderer",(t=>{const e=null==t?void 0:t.model.controlRenders;return!(!e||0===e.length)&&!!e.find((t=>t.id===dt.EMPTYPANEL))}));class Ce{constructor(t,e,n){this.component=t,this.render=e,this.opts=n,this.evt=new i,this.init()}static createVueApp(t,e){throw new _(ibiz.i18n.t("vue3Util.util.noInjected"))}init(){const t=this,{render:e,opts:n}=this,o=document.createElement("div");let a=document.body;Jt(null==n?void 0:n.appendTo)&&(a=null==n?void 0:n.appendTo),a.appendChild(o);const i=Ce.createVueApp({mounted(){t.modal=this.$refs.root},unmounted(){a.removeChild(o),t.evt.emit("dismiss",t.result)},render:()=>w(t.component,{ref:"root",opts:n,onDismiss(e){t.result=e,i.unmount()}},{default:e})});ibiz.plugin.register(i),i.mount(o),this.vm=i}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",Ce);function Ie(t){return(e,n)=>{const o=b("IBizViewShell");return w(o,{...t,viewShellHooks:n,modal:e})}}t("OverlayPopoverContainer",class extends Ce{present(t){return this.modal.present(t)}});const Pe={DRAWER_LEFT:"left",DRAWER_RIGHT:"right",DRAWER_TOP:"top",DRAWER_BOTTOM:"bottom"};class De{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 i=new De(o,a);return this.map.set(a,i),this.scheduledDestruction(i),i.onWillDismiss()}close(t,e){const n=this.map.get(t);n&&(window.clearTimeout(n.timeout),n.timeout=void 0,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)}),6e5)}}),t("useAppStore",te("appStore",(()=>({appStore:v({})}))));const Ee=t("useUIStore",te("uiStore",(()=>{const t=function(){const t=y(500);return{zIndex:t,increment:function(){return t.value+=1,t.value},decrement:function(){t.value-=1}}}(),e=()=>ibiz.util.theme.getTheme().includes("dark")?"dark":"light",n=v({zIndex:t.zIndex,theme:e()});return ibiz.util.theme.evt.on("onChange",(()=>{n.theme=e()})),{UIStore:n,zIndex:t}})));t("piniaInstance",ee());function Ne(t){const e=ae(),n=m("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){l((()=>({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(ibiz.i18n.t("vue3Util.use.control.parameterChanges",{id:e.model.id}),t)}))}(e,a),function(t,e){l((()=>t.state?{...t.state}:{}),((t,n)=>{const o={};Object.keys(t).forEach((e=>{t[e]!==(n||{})[e]&&(o[e]=t[e])})),ibiz.log.debug(ibiz.i18n.t("vue3Util.use.view.stateChange",{name:e.model.name}),o),Object.keys(o).forEach((t=>{e.state[t]=o[t]}))}),{immediate:!0})}(e,a),C("ctx",a.ctx),a.state=v(a.state),a.slotProps=v(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=re();const i=u().proxy;return a.evt.onAll(((t,e)=>{i.$emit(t.slice(2),e)})),a.created(),c((()=>{a.destroyed(),ibiz.util.viewStack.remove(a.id)})),a}function Oe(t){let e=[];I((()=>{const n=document.getElementById(t.id);n&&(e=["keydown","click"].map((e=>M(n,e,(e=>{t.setOperateState("MANUAL")}),{once:!0,capture:!0}))))})),P((()=>{e&&e.length>0&&e.forEach((t=>{t()}))}))}function Ae(t,e){if(!t||!e)return!1;if(t===e)return!0;const n=new Set;let o=t;for(;o;){n.add(o);const t=o.parentNode;o=!t||"BODY"!==t.nodeName&&"HTML"!==t.nodeName?t:null}for(o=e;o;){if(n.has(o))return!0;o=o.parentNode}return!1}const xe=t("IBizIcon",A({name:"IBizIcon",props:{icon:{type:Object},size:{type:String},baseDir:{type:String,default:"images"}},setup(t){const e=ue("icon"),n="".concat(ibiz.env.assetsUrl,"/").concat(t.baseDir,"/");const o=O((()=>function(t){if(t){if(t.htmlStr)return x("span",{class:e.b(),innerHTML:t.htmlStr},null);if(t.cssClass)return-1!==t.cssClass.indexOf("fa-")||-1!==t.cssClass.indexOf("theme-icon")?x("i",{class:[e.b(),t.cssClass]},null):x("ion-icon",{class:e.b(),name:t.cssClass},null);if(t.imagePath)return F(t.imagePath)?x("img",{class:e.b(),src:t.imagePath},null):q(t.imagePath)?x("div",{class:[e.b(),e.e("emoji")]},[G(t.imagePath)]):W(t.imagePath)?x("div",{class:e.b(),innerHTML:t.imagePath},null):t.imagePath.endsWith("svg")?t.imagePath.startsWith("http")?x("img",{class:e.b(),src:t.imagePath},null):x("ion-icon",{src:n+t.imagePath,class:e.b()},null):t.imagePath.startsWith("http")?x("img",{class:e.b(),src:t.imagePath},null):x("img",{class:e.b(),src:n+t.imagePath},null);if(t.rawContent)return W(t.rawContent)?x("div",{class:e.b(),innerHTML:t.rawContent},null):x("img",{class:e.b(),src:t.rawContent},null)}return null}(t.icon)));return()=>o.value}}));t("IBizRouterView",A({name:"IBizRouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object,manualKey:{type:String}},setup(t,{attrs:e}){const n={};let o=!0;l((()=>t.manualKey),((t,e)=>{et(t)&&t!==e&&(o=!0)}));return{renderComp:(a,i)=>{if(!o)return n.vNode;if(o=!1,a){const o={...a.props};delete o.onVnodeUnmounted,delete o.ref;const i=w(a.type,{...o,...e,key:t.manualKey});return n.vNode=i,i}}}},render(){return x(b("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",A({name:"IBizControlBase",props:{controller:{type:Object,required:!0}},setup(t){const e=ue("control"),{controlType:n,sysCss:o,codeName:a}=t.controller.model,i=n.toLowerCase(),r=null==o?void 0:o.cssName,s=t.controller.model,l=t.controller.model.controls,c=v({});!1===s.controlType.endsWith("EXPBAR")&&(tt(s.width)||(s.width>0&&s.width<=1?c.width="".concat(100*s.width,"%"):c.width="".concat(s.width,"px")),tt(s.height)||(s.height>0&&s.height<=1?c.width="".concat(100*s.height,"%"):c.height="".concat(s.height,"px")));const d=async(e,n)=>{e.stopPropagation();const o=e.target.getAttribute(n),a=e.target.getAttribute("data"),i=t.controller.context.clone(),r=e.target.getAttribute("context");r&&Object.assign(i,$(r));const s={...t.controller.params},l=e.target.getAttribute("params");l&&Object.assign(s,$(l)),o&&await ut.asyncExecScriptFn({...t.controller.getEventArgs(),context:i,params:s,data:a?$(a):null},o)},u=O((()=>(n=>{var o,a;const i=s.controlRenders?s.controlRenders.filter((t=>!Object.values(dt).includes(t.id))):void 0;if(!i||0===i.length)return;const r=i[0];if("LAYOUTPANEL_MODEL"===r.renderType&&r.layoutPanelModel){const a=ut.execScriptFn({...t.controller.getEventArgs(),data:n},r.layoutPanelModel,{isAsync:!1});return x("div",{innerHTML:a,onClick:t=>d(t,"click"),onDblclick:t=>d(t,"dbclick"),class:[e.e("control-render"),e.e(null==(o=r.renderName)?void 0:o.toLowerCase())]},null)}return"LAYOUTPANEL"===r.renderType&&r.layoutPanel?x(b("iBizControlShell"),{class:[e.e("control-render"),e.e(null==(a=r.renderName)?void 0:a.toLowerCase())],data:n,params:t.controller.params,context:t.controller.context,modelData:r.layoutPanel},null):void 0})(t.controller.data||t.controller.items)));return{ns:e,typeClass:i,sysCssName:r,inlineStyle:c,codeName:a,controls:l,customRender:u,disableMaskInfoRender:()=>{const n=s.controlRenders?s.controlRenders.find((t=>t.id===dt.DISABLEPANEL)):void 0;if(!n)return x("div",{innerHTML:t.controller.state.maskOption.maskInfo||"",class:[e.e("disable-mask-text")]},null);if("LAYOUTPANEL_MODEL"===n.renderType&&n.layoutPanelModel){const o=ut.execScriptFn({...t.controller.getEventArgs()},n.layoutPanelModel,{isAsync:!1,singleRowReturn:!0});return x("div",{innerHTML:o,class:[e.e("disable-mask-text")]},null)}return"LAYOUTPANEL"===n.renderType&&n.layoutPanel?x(b("iBizControlShell"),{class:[e.e("disable-mask-text")],data:{},params:t.controller.params,context:t.controller.context,modelData:n.layoutPanel},null):void 0},onLayoutPanelCreated:e=>{t.controller.setLayoutPanel(e)}}},render(){var t,e,n;const{state:o,controlPanel:a,providers:i}=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=b("IBizControlShell");return w(e,{modelData:t,...o})}}));const n=i[a.name];r=w(b(n.component),{modelData:a,context:this.controller.context,params:this.controller.params,provider:n,container:this.controller,onControllerAppear:this.onLayoutPanelCreated},e)}return x("div",{class:[this.ns.b(),this.ns.b(this.typeClass),this.ns.m(this.codeName),this.sysCssName,this.ns.is("disabled",o.disabled)],style:this.inlineStyle},[r||this.customRender||(null==(n=(e=this.$slots).default)?void 0:n.call(e)),o.disabled&&x("div",{class:[this.ns.e("mask-container"),this.ns.m(o.maskOption.mode.toLowerCase())]},["MASK"===o.maskOption.mode&&this.disableMaskInfoRender()])])}})),t("IBizControlShell",A({name:"IBizControlShell",props:{modelData:{type:Object,required:!0}},setup(t){const e=m("ctx");if(e)e.evt.emit("onForecast",t.modelData.name);else{const t={name:"AppView",id:"AppView",viewType:rt.DE_CUSTOM_VIEW,appId:ibiz.env.appId};C("ctx",new pt(t,K.create({})).ctx)}const n=y(!1),o=y(""),a=y();ht(t.modelData).then((t=>{t?a.value=t:o.value=ibiz.i18n.t("vue3Util.common.onFoundCorrespondingPart"),n.value=!0})).catch((t=>{ibiz.log.error(t),o.value=t.message,n.value=!0}));return{ns:ue("control-shell"),isComplete:n,errMsg:o,provider:a}},render(){return this.isComplete&&this.provider?w(b(this.provider.component),{provider:this.provider,...this.$props,...this.$attrs},this.$slots):S(x("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[T("loading"),!this.isComplete]])}})),t("IBizViewShell",A({name:"IBizViewShell",props:{context:{type:Object,required:!0},params:{type:Object},modelData:{type:Object},viewId:{type:String},ctx:{type:Object},viewShellHooks:{type:Object}},setup(t,{attrs:e}){const n=ue("view-shell"),o=y(!1),a=y(""),i=y(),r=y(),c=y(!0);t.ctx&&C("ctx",t.ctx);const d=y(t.context),u=y(t.params||{});let p="";l((()=>({context:t.context,params:t.params})),(t=>{d.value=t.context,u.value=t.params?t.params:{}}));let h;const m=t=>{const e=nt(t);return e.srfdatatype&&delete e.srfdatatype,JSON.stringify(e)},v=async()=>{try{if(await(async()=>{h=t.modelData?t.modelData:await ibiz.hub.getAppView(t.viewId)})(),!h)throw new _(ibiz.i18n.t("vue3Util.common.noFoundViewModel"));if(c.value=await(async t=>{let e=!0;const{accUserMode:n,accessKey:o}=t,a=ibiz.auth.getAuthInfo();if(void 0!==n)switch(n){case 1:a&&(e=!1);break;case 2:a||(e=!1);break;case 4:o&&((await ibiz.hub.getApp(d.value.srfappid)).authority.calcByResCode(o)||(e=!1))}return e})(h),!c.value)return;if(1===h.dynaSysMode){const t=h.appDataEntityId;if(!t)throw new _(ibiz.i18n.t("vue3Util.common.noSupportLoadingDynamic",{codeName:h.codeName}));const e=await vt(t,d.value,{viewParams:u.value,appId:h.appId});if(u.value.srfdatatype&&(e.srfdatatype=u.value.srfdatatype),u.value.srfwftag)e.srfwftag=u.value.srfwftag;else if(t&&h.enableWF&&e.srfkey){const n=tt(d.value.srfsessionid)||ot(d.value.srfsessionid),o=s();if(n){const e=ibiz.uiDomainManager.create(o,t);d.value.srfsessionid=e.id}const a=ibiz.hub.getApp(h.appId);d.value.srfappid||(d.value.srfappid=h.appId);const i=await a.deService.getService(d.value,t),r=await i.get(d.value,u.value||{});if(r.ok&&r.data){const{srfwftag:t,processdefinitionkey:n,taskdefinitionkey:o}=r.data;t&&(e.srfwftag=t),["DEWFDYNAEDITVIEW3","DEWFDYNAEDITVIEW"].includes(h.viewType)&&(tt(u.value.processDefinitionKey)&&(u.value.processDefinitionKey=n),tt(u.value.taskDefinitionKey)&&(u.value.taskDefinitionKey=o))}n&&(ibiz.uiDomainManager.destroy(o),d.value.srfsessionid="")}if(m(e)===p)return void setTimeout((()=>{o.value=!0}));r.value=await ibiz.hub.loadAppView(h.appId,h.id,e),p=m(e)}else r.value=h;i.value=await ft(h)}catch(t){ibiz.log.error(t),a.value=t.message}finally{o.value=!0}};v();return{ns:n,errMsg:a,provider:i,isComplete:o,hasAuthority:c,viewModelData:r,redrawView:async t=>{o.value=!1;const{redrawData:n}=t,{isReloadModel:a}=n;Object.assign(d.value,n.context),Object.assign(u.value,n.params);const i=e.modal;i&&(i.hooks.preDismiss.clear(),i.hooks.shouldDismiss.clear(),i.hooks.beforeDismiss.clear()),a?await v():setTimeout((()=>{o.value=!0}))},onCreated:e=>{t.viewShellHooks&&t.viewShellHooks.hooks.viewCreated.call(e)},curContext:d,curParams:u}},render(){if(this.isComplete&&this.provider&&this.hasAuthority)return w(b(this.provider.component),{context:this.curContext,params:this.curParams,modelData:nt(this.viewModelData),...this.$attrs,provider:this.provider,onRedrawView:this.redrawView,onCreated:this.onCreated},this.$slots);if(!this.hasAuthority){const t=mt("403");if(t)return"string"==typeof t.component?w(b(t.component)):w(t.component)}return S(x("div",{class:this.ns.b()},[this.isComplete?this.errMsg:null]),[[T("loading"),!this.isComplete]])}})),t("IBizCodeList",A({name:"IBizCodeList",props:{codeListItems:{type:Array},codeList:{type:Object,required:!0},value:{type:[String,Number]},convertToCodeItemText:{type:Boolean,default:!0},valueFormat:{type:String},unitName:{type:String},showMode:{type:String,default:"DEFAULT"}},emits:{infoTextChange:t=>!0},setup(t,{emit:e}){var n,o;const a=ue("code-list"),i=y([]),r=(null==(n=t.codeList)?void 0:n.textSeparator)||"、",s=(null==(o=t.codeList)?void 0:o.valueSeparator)||",",c=O((()=>t.codeList&&t.codeList.orMode?t.codeList.orMode:"STR")),d=gt(c.value);l(i,(t=>{let n="";t.length>0&&(n=t.map((t=>t.text)).join(r)),e("infoTextChange",n)}));const u=(e,n)=>{if(e){const{thresholdGroup:o}=t.codeList;if(o&&Zt(Number(n))){const t=yt(e,Number(n));if(t)return t}const a=e.find((t=>t.value==n));if(a)return a;for(let t=0;t<e.length;t++){const o=u(e[t].children,n);if(o)return o}}};l([()=>t.codeListItems,()=>t.value],(([e,n],[o,a])=>{if(tt(n)||""===n)i.value=[];else{let o=[];const{getSelectArray:a}=d,r=a(n,t.codeList,e,s,t.codeList.codeItemValueNumber);r&&(o=r),i.value=o.map((n=>{const o=u(e,n);let a=n;if(t.convertToCodeItemText&&(null==o?void 0:o.text))a=o.text;else{const{valueFormat:e,unitName:n}=t;e&&(a=ibiz.util.text.format("".concat(a),e)),n&&(a+=n)}return{text:a,color:null==o?void 0:o.color,textCls:null==o?void 0:o.textCls,sysImage:null==o?void 0:o.sysImage}}))}}),{immediate:!0});const p=t.codeList.emptyText!==ibiz.i18n.t("vue3Util.common.undefined")&&t.codeList.emptyText?t.codeList.emptyText:ibiz.config.common.emptyText;return{items:i,ns:a,emptyText:p,textSeparator:r}},render(){return x("span",{class:this.ns.b()},[0===this.items.length?this.emptyText:this.items.map(((t,e)=>[0!==e?this.textSeparator:null,x("span",{class:[this.ns.e("item"),t.textCls?t.textCls:null],style:t.color?this.ns.cssVarBlock({"item-color":"".concat(t.color)}):null},["TEXT"!==this.showMode&&t.sysImage&&x(b("iBizIcon"),{icon:t.sysImage},null),"ICON"!==this.showMode&&t.text])]))])}})),t("ControlLoadingPlaceholder",A({name:"ControlLoadingPlaceholder",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})}},setup:t=>(m("ctx").evt.emit("onForecast",t.modelData.name),{}),render:()=>null})),t("IBizBadge",A({name:"IBizBadge",props:{value:{type:Number,required:!0},type:{type:String,default:"danger"},max:{type:Number,default:99},counterMode:{type:Number}},setup:()=>({ns:ue("badge")}),render(){if((this.value||0===this.value)&&!(1===this.counterMode&&this.value<=0))return x("div",{class:[this.ns.b(),this.ns.m(this.type)]},[this.value>this.max?"".concat(this.max,"+"):this.value])}})),t("IBizCustomRender",A({name:"IBizCustomRender",props:{controller:{type:Object,required:!0}},setup(t){const e=ue("custom-render"),n=async(e,n)=>{e.stopPropagation();const o=e.target.getAttribute(n),a=e.target.getAttribute("data"),i=t.controller.context.clone(),r=e.target.getAttribute("context");r&&Object.assign(i,$(r));const s={...t.controller.params},l=e.target.getAttribute("params");l&&Object.assign(s,$(l)),o&&await ut.asyncExecScriptFn({...t.controller.getEventArgs(),context:i,params:s,data:a?$(a):null},o)};return{ns:e,getControlRender:()=>{var o,a,i;const r=null==(o=t.controller)?void 0:o.model.controlRenders;if(!r||0===r.length)return;const s=r.find((t=>t.id===dt.EMPTYPANEL));if(s){if("LAYOUTPANEL_MODEL"===s.renderType&&s.layoutPanelModel){const o=ut.execScriptFn({...t.controller.getEventArgs()},s.layoutPanelModel,{isAsync:!1});return x("div",{innerHTML:o,onClick:t=>n(t,"click"),onDblclick:t=>n(t,"dbclick"),class:[e.b(),e.e(null==(a=s.renderName)?void 0:a.toLowerCase())]},null)}return"LAYOUTPANEL"===s.renderType&&s.layoutPanel?x(b("iBizControlShell"),{class:[e.b(),e.e(null==(i=s.renderName)?void 0:i.toLowerCase())],params:t.controller.params,context:t.controller.context,modelData:s.layoutPanel},null):void 0}}}},render(){return this.getControlRender()}}));class Se extends wt{}t("PanelContainerState",Se);class Te extends bt{createState(){var t;return new Se(null==(t=this.parent)?void 0:t.state)}}function ze(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("PanelContainerController",Te);const Re=A({name:"IBizPanelContainer",props:{modelData:{type:Object,required:!0},controller:{type:Te,required:!0}},setup(t){const e=ue("panel-container"),{id:n}=t.modelData,o=O((()=>{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,n;let o;const a=(null==(e=(t=this.$slots).default)?void 0:e.call(t))||[],i=x(b("iBizRow"),{slot:"content",layout:this.modelData.layout},ze(o=a.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},ze(t)?t:{default:()=>[t]}):t})))?o:{default:()=>[o]}),r=null==(n=this.$attrs)?void 0:n.attrs;return r&&r.dynamictooltip?x(b("el-tooltip"),{placement:"right","popper-class":this.ns.e("dynamic-tooltip")},{default:()=>x("div",z({class:this.classArr,onClick:()=>{this.controller.onClick()}},this.$attrs),[this.controller.model.cssStyle?x("style",{type:"text/css"},[this.controller.model.cssStyle]):null,i]),content:()=>x("div",{class:this.ns.e("dynamic-tooltip-content"),innerHTML:r.dynamictooltip},null)}):x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[this.controller.model.cssStyle?x("style",{type:"text/css"},[this.controller.model.cssStyle]):null,i])}});class Le{constructor(){this.component="IBizPanelContainer"}async createController(t,e,n){const o=new Te(t,e,n);return await o.init(),o}}t("IBizPanelContainer",be(Re,(function(t){t.component(Re.name,Re),Ct("CONTAINER",(()=>new Le)),Ct("CONTAINER_DEFAULT",(()=>new Le))})));const Be=A({name:"IBizPanelCtrlPos",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){m("ctx").evt.on("onRegister",((e,n)=>{e===t.modelData.id&&t.controller.bindControl(n)}));return{ns:ue("panel-ctrl-pos")}},render(){const{state:t}=this.controller;let e;return this.$slots.default&&(e=this.$slots.default()),x("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass,this.ns.is("hidden",!t.visible)]},[e||(ibiz.env.dev?ibiz.i18n.t("vue3Util.panelComponent.noProvidedSlot",{id:this.modelData.id}):"")])}});class je extends bt{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",je);class Ve{constructor(){this.component="IBizPanelCtrlPos"}async createController(t,e,n){const o=new je(t,e,n);return await o.init(),o}}t("IBizPanelCtrlPos",be(Be,(function(t){t.component(Be.name,Be),Ct("CTRLPOS",(()=>new Ve))})));class ke extends bt{}function Me(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("ScrollContainerItemController",ke);const Ue=t("ScrollContainerItem",A({name:"IBizScrollContainerItem",props:{modelData:{type:Object,required:!0},controller:{type:ke,required:!0}},setup(t){const e=ue("scroll-container-item"),{id:n}=t.modelData,o=O((()=>[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 x(b("iBizRow"),{class:this.classArr,layout:{layout:"FLEX"}},Me(n=o.map((t=>{const e=t.props;return e&&e.controller?(e.modelData.layoutPos.layout="FLEX",x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Me(t)?t:{default:()=>[t]})):t})))?n:{default:()=>[n]})}}));class _e{constructor(){this.component="IBizScrollContainerItem"}async createController(t,e,n){const o=new ke(t,e,n);return await o.init(),o}}class Fe extends bt{async onInit(){await super.onInit(),this.state.layout.width="100%",this.state.layout.height="100%"}}t("ScrollContainerController",Fe);const qe=t("ScrollContainer",A({name:"IBizScrollContainer",props:{modelData:{type:Object,required:!0},controller:{type:Fe,required:!0}},setup(t){const e=ue("scroll-container"),{id:n}=t.modelData,o=O((()=>[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,i=null,r=null;const s={};((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,s.left={width:l};break;case"EAST":a=t,s.right={width:l};break;case"NORTH":o=t,s.top={height:c};break;case"SOUTH":i=t,s.bottom={height:c};break;case"CENTER":r=t;break;default:ibiz.log.debug(ibiz.i18n.t("vue3Util.panelComponent.unadaptedLayout",{layoutPos:e.modelData.layoutPos.layoutPos}))}}));for(const t in s)(s[t].width||s[t].height)&&(s[t].flexShrink=0);return x("div",{class:this.classArr},[x("div",{class:[this.ns.e("header")],style:s.top},[o]),x("div",{class:[this.ns.b("content")]},[x("div",{class:this.ns.be("content","left"),style:s.left},[n]),x("div",{class:this.ns.be("content","center")},[r]),x("div",{class:this.ns.be("content","right"),style:s.right},[a])]),x("div",{class:[this.ns.e("footer")],style:s.bottom},[i])])}}));class Ge{constructor(){this.component="IBizScrollContainer"}async createController(t,e,n){const o=new Fe(t,e,n);return await o.init(),o}}t("IBizScrollContainer",be(qe,(function(t){t.component(qe.name,qe),t.component(Ue.name,Ue),Ct("CONTAINER_CONTAINER_SCROLL",(()=>new Ge)),Ct("CONTAINER_CONTAINER_SCROLL_LEFT",(()=>new _e)),Ct("CONTAINER_CONTAINER_SCROLL_HEADER",(()=>new _e)),Ct("CONTAINER_CONTAINER_SCROLL_RIGHT",(()=>new _e)),Ct("CONTAINER_CONTAINER_SCROLL_BOTTOM",(()=>new _e)),Ct("CONTAINER_CONTAINER_SCROLL_MAIN",(()=>new _e))})));class We extends wt{constructor(){super(...arguments),this.cache=!0,this.routeOpen=!0,this.currentKey="",this.cacheKeys=["RouterShell"],this.navViewMsgs={},this.isLoading=!1}}t("NavPosState",We);const $e=["is404","isRoutePushed"];class Ke extends bt{constructor(){super(...arguments),this.viewModals={},this.refCtrlKeys=[],this.rawItemParams={},this.ignoreEmbedKey=!1}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,n=this.rawItemParams.ignoreembedkey||this.panel.view.params.ignoreembedkey||"";this.ignoreEmbedKey=Object.is(n.toLowerCase(),"true"),"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 We(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]?(at(this.state.navViewMsgs[e],t),$e.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?Pt.ROUTE:Pt.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){this.panel.evt.emit("onPresetPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:"onViewCreated",presetParams:t}),ibiz.log.debug(this.constructor.name,"onViewCreated",t)}toBlankRoute(){const t=ye(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)}async openViewByPath(t){var e,n,o,a;const i=this.calcCacheKey(t);this.setNavViewMsgs(t);if(!0===t.isRoutePushed)return this.state.currentKey=i,void(this.state.navViewMsgs[this.calcCacheKey(this.curNavViewMsg)].fullPath=this.route.fullPath);if(t.is404){const n=ye(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(i===this.state.currentKey&&this.state.navViewMsgs[i].fullPath)(null==(n=t.modalOptions)?void 0:n.replace)?this.router.replace(this.state.navViewMsgs[i].fullPath):this.router.push(this.state.navViewMsgs[i].fullPath);else if(this.state.navViewMsgs[i].fullPath&&this.getExpItemIsCache(t))(null==(o=t.modalOptions)?void 0:o.replace)?this.router.replace(this.state.navViewMsgs[i].fullPath):this.router.push(this.state.navViewMsgs[i].fullPath);else{const e=Object.assign(t.context.clone(),{toRouteDepth:this.routeDepth+1});(null==(a=this.rawItemParams)?void 0:a.routeattributekeys)&&(e.attributekeys=this.rawItemParams.routeattributekeys),this.getExpItemIsCache(t)&&this.state.cacheKeys.push(i),t.viewId&&(this.state.isLoading=!0,await ibiz.commands.execute(Dt.TAG,t.viewId,e,t.params,{openMode:"INDEXVIEWTAB",modalOption:{replace:!this.state.currentKey,...t.modalOptions}}),this.state.isLoading=!1)}}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;a(n)&&(e=n.reduce(((t,e)=>(t[e.key.toLowerCase()]=e.value,t)),{})),Object.assign(this.rawItemParams,e)}}function He(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("NavPosController",Ke);const Qe=A({name:"IBizNavPos",props:{modelData:{type:Object,required:!0},controller:{type:Ke,required:!0}},setup(t){const e=t.controller,n=ue("nav-pos"),o=Qt(),a=Ht(),i=y(!1);if(e.setRouter(o),e.routeDepth){const t=ye(a,e.routeDepth);l((()=>a.fullPath),(()=>{const n=ye(a,e.routeDepth);if(t===n&&a.matched.length>e.routeDepth){if(a.matched.length===e.routeDepth+1&&(i.value=!!a.name,i.value))return;e.onRouteChange(a)}}),{immediate:!0})}return{ns:n,c:e,isPresetView:i,onViewCreated:t=>{e.onViewCreated(t)}}},render(){const{viewModals:t,state:e}=this.c,{currentKey:n,cacheKeys:o,navViewMsgs:a,cache:i}=e;let r=null;if(e.routeOpen){if(this.isPresetView)return x(Xt,null,null);r=x(b("iBizRouterView"),{manualKey:n,modal:t[n],onCreated:this.onViewCreated},{default:({Component:t})=>{const e=""!==n&&t?x(t,null,null):null;return i?x(b("keepAlive"),{include:o,max:30,isKey:!0},He(e)?e:{default:()=>[e]}):e}})}else{const t=n&&a[n]?w(b("IBizViewShell"),{context:a[n].context,params:a[n].params,key:this.c.ignoreEmbedKey?void 0:n,viewId:a[n].viewId,onCreated:this.onViewCreated}):null;r=i?x(b("keepAlive"),{include:o,max:30,isKey:!0},He(t)?t:{default:()=>[t]}):t}return x("div",{class:[this.ns.b(),this.ns.m(this.modelData.id),...this.controller.containerClass]},[r])}});class Xe{constructor(){this.component="IBizNavPos"}async createController(t,e,n){const o=new Ke(t,e,n);return await o.init(),o}}t("IBizNavPos",be(Qe,(function(t){t.component(Qe.name,Qe),Ct("RAWITEM_NAV_POS",(()=>new Xe))})));class Ye extends wt{constructor(){super(...arguments),this.error=null}}class Je extends bt{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 validate(){var t;return this.state.visible&&this.state.required&&!this.value?(this.state.error=(null==(t=this.editor)?void 0:t.model.placeHolder)||ibiz.i18n.t("vue3Util.panelComponent.cannotEmpty",{caption:this.model.caption}),!1):(this.state.error=null,!0)}async onInit(){var t,e;await super.onInit(),this.state.required=!this.model.allowEmpty,!0!==this.context.srfreadonly&&"true"!==this.context.srfreadonly&&(null==(t=this.model.editor)?void 0:t.readOnly)&&(this.state.readonly=(null==(e=this.model.editor)?void 0:e.readOnly)||!1),this.model.editor&&"HIDDEN"!==this.model.editor.editorType&&(this.editorProvider=await Et(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),await this.validate(),this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.CHANGE})}onFocus(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.FOCUS,event:t})}onBlur(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.BLUR,event:t})}onEnter(t){this.panel.evt.emit("onPanelItemEvent",{panelItemName:this.model.id,panelItemEventName:Nt.ENTER,event:t})}}t("PanelFieldController",Je);const Ze=A({name:"IBizPanelField",props:{modelData:{type:Object,required:!0},controller:{type:Je,required:!0},attrs:{type:Object,require:!1}},setup(t){const e=ue("panel-field"),n=O((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n),e.is("error",!!t.controller.state.error)];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=b(this.controller.editorProvider.formEditor);t=w(n,{...e})}else t=x(b("not-supported-editor"),{modelData:this.modelData.editor},null)}return x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[t,this.controller.state.error&&x("div",{class:this.ns.e("error")},[this.controller.state.error])])}});class tn{constructor(){this.component="IBizPanelField"}async createController(t,e,n){const o=new Je(t,e,n);return await o.init(),o}}t("IBizPanelField",be(Ze,(function(t){t.component(Ze.name,Ze),Ct("FIELD",(()=>new tn))})));class en extends bt{get data(){return this.dataParent.data}async onInit(){await super.onInit()}calcDynaClass(t){var e,n;if(this.model.dynaClass||(null==(e=this.model.rawItem)?void 0:e.dynaClass)){const e=this.model.dynaClass?Ot(this.model.dynaClass,t):[],o=(null==(n=this.model.rawItem)?void 0:n.dynaClass)?Ot(this.model.rawItem.dynaClass,t):[];this.state.class.containerDyna=[...e,...o]}if(this.model.labelDynaClass){const e=Ot(this.model.labelDynaClass,t);this.state.class.labelDyna=e}}}t("PanelRawItemController",en);const nn=A({name:"IBizPanelRawItem",props:{modelData:{type:Object,required:!0},controller:{type:en,required:!0}},setup(t){const e=ue("panel-rawitem"),n=t.controller,o=y(""),a=y(""),{rawItem:i}=t.modelData;i&&i.cssStyle&&(a.value=i.cssStyle);const r=O((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return l((()=>n.data),(async t=>{if(t){const e=n.model.rawItem;if(!e)return;let a;const i={...t};"RAW"===e.contentType?a=e.caption:"HTML"===e.contentType&&(a=e.content),a&&e.templateMode&&(a=await ibiz.util.hbs.render(a.replace("//n","\n"),Object.assign(i,{data:{...t}}))),o.value=a}}),{immediate:!0}),{ns:e,classArr:r,tempStyle:a,content:o}},render(){if(this.controller.state.visible)return x("div",{class:this.classArr,style:this.tempStyle,onClick:t=>{this.controller.onClick(t)}},[x(b("iBizRawItem"),{rawItem:this.modelData,content:this.content},null)])}});class on{constructor(){this.component="IBizPanelRawItem"}async createController(t,e,n){const o=new en(t,e,n);return await o.init(),o}}t("IBizPanelRawItem",be(nn,(function(t){t.component(nn.name,nn),Ct("RAWITEM",(()=>new on)),Ct("RAWITEM_STATIC_IMAGE",(()=>new on)),Ct("RAWITEM_STATIC_LABEL",(()=>new on)),Ct("RAWITEM_STATIC_TEXT",(()=>new on))})));class an extends wt{constructor(){super(...arguments),this.data={}}}class rn{constructor(t,e,n,o){this.model=t,this.panel=e,this.parent=n,this.state=new an,this.isDataContainer=!0,this.panelItems={},this.state.data=o;const a=At(this.model).map((t=>t.id));o._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])}))}get data(){return this.state.data}async validate(){return(await Promise.all(Object.values(this.panelItems).map((t=>t.validate())))).every((t=>t))}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 i=this.parent.providers[t.id];if(!i)return;const r=await i.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!xt(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 sn extends wt{constructor(){super(...arguments),this.items=[]}}t("MultiDataContainerState",sn);class ln extends bt{constructor(){super(...arguments),this.isDataContainer=!0,this.dataItems=[],this.providers={}}get data(){return this.state.items}createState(){var t;return new sn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemProviders()}async panelStateNotify(t){super.panelStateNotify(t),t===St.LOAD&&this.initContainerData()}async initPanelItemProviders(t=this.model.panelItems){t&&await Promise.all(t.map((async t=>{var e,n;const o=await Tt(t,this.panel.model,this.panel.view.model);o&&(this.providers[t.id]=o,(null==(e=t.panelItems)?void 0:e.length)&&!xt(t)&&await this.initPanelItemProviders(t.panelItems),(null==(n=t.panelTabPages)?void 0:n.length)&&await this.initPanelItemProviders(t.panelTabPages))})))}computeNavParams(){const{navigateContexts:t,navigateParams:e}=this.model,n=this.panel.context.clone();Object.assign(n,zt(t,this.panel.params,this.panel.context));const o=zt(e,this.panel.params,this.panel.context);return Object.assign(o,this.panel.params),{context:n,params:o}}initContainerData(){const{dataSourceType:t,dataName:e,scriptCode:n}=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 Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.view,e);break;case"ACTIVEDATAPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.setData(this.dataParent.data[e]);break;case"CUSTOM":{if(!n)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredScript"));const t=ut.execScriptFn({...this.panel.getEventArgs(),data:this.dataParent.data},n,{isAsync:!1,singleRowReturn:!0});this.setData(t);break}default:throw new H(this.model,ibiz.i18n.t("vue3Util.panelComponent.noSupportedDataSourceType",{dataSourceType:t}))}}childrenStateNotify(t){this.dataItems.forEach((e=>{e.panelStateNotify(t)}))}async validate(){return(await Promise.all(this.dataItems.map((t=>t.validate())))).every((t=>t))}async setData(t){const e=At(this.model),n=t.map((t=>new Rt(e,t)));this.dataItems=n.map((t=>new rn(this.model,this.panel,this,t))),this.dataItems.length&&await Promise.all(this.dataItems.map((t=>t.init()))),this.state.items=n,this.childrenStateNotify(St.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntityLogic"));if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const{context:n,params:o}=this.computeNavParams(),a=await Lt(e,t,n,this.panel.data,o);if(!a)throw new _(ibiz.i18n.t("vue3Util.panelComponent.noReturnValue",{appDELogicId:e}));this.setData(a)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.noAttribute",{dataName:t}))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguerdEntityBehanior"));if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const n=ibiz.hub.getApp(this.panel.context.srfappid),{context:o,params:a}=this.computeNavParams(),i=await n.deService.exec(e,t,o,void 0,a);i.ok&&i.data&&this.setData(i.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.sessionView",{dataName:e}));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.viewStateAttribute",{dataName:e}))};n(),t.evt.on("onDataChange",(()=>{n()}))}setDataValue(t,e){throw new Error(ibiz.i18n.t("vue3Util.panelComponent.noImplementMethod"))}destroy(){super.destroy(),this.dataItems.forEach((t=>{t.destroy()}))}}t("MultiDataContainerController",ln);const cn=A({name:"IBizMultiDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:ln,required:!0}},setup(t){const e=ue("multi-data-container"),{id:n}=t.modelData;l((()=>t.controller.state.items),(()=>{t.controller.dataItems.forEach((t=>{t.state=v(t.state);Object.keys(t.panelItems).forEach((e=>{const n=t.panelItems[e];n.state=v(n.state)}))}))}),{immediate:!0});const o=m("renderPanelItem"),a=O((()=>[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 x(b("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 x(b("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)&&!R(a)?e:{default:()=>[e]});var a}))]}})})),x("div",{class:this.classArr},[t])}});class dn{constructor(){this.component="IBizMultiDataContainer"}async createController(t,e,n){const o=new ln(t,e,n);return await o.init(),o}}t("IBizMultiDataContainer",be(cn,(function(t){t.component(cn.name,cn),Ct("CONTAINER_CONTAINER_MULTIDATA",(()=>new dn))})));class un extends wt{constructor(){super(...arguments),this.items=[]}}t("MultiDataContainerRawState",un);class pn extends bt{constructor(){super(...arguments),this.isDataContainer=!0,this.panelItems={},this.providers={}}get data(){return this.state.items}createState(){var t;return new un(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemControllers()}async panelStateNotify(t){super.panelStateNotify(t),t===St.LOAD&&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 i=await Tt(t,e.model,e.view.model);if(!i)return;this.providers[t.id]=i;const r=await i.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!xt(t)&&await this.initPanelItemControllers(t.panelItems,e,r),(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initPanelItemControllers(t.panelTabPages,e,r)})))}computeNavParams(){const{navigateContexts:t,navigateParams:e}=this.model,n=this.panel.context.clone();Object.assign(n,zt(t,this.panel.params,this.panel.context));const o=zt(e,this.panel.params,this.panel.context);return Object.assign(o,this.panel.params),{context:n,params:o}}initContainerData(){const{dataSourceType:t,dataName:e,scriptCode:n}=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 Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.view,e);break;case"ACTIVEDATAPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.setData(this.dataParent.data[e]);break;case"CUSTOM":{if(!n)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredScript"));const t=ut.execScriptFn({...this.panel.getEventArgs(),data:this.dataParent.data},n,{isAsync:!1,singleRowReturn:!0});this.setData(t);break}default:throw new H(this.model,ibiz.i18n.t("vue3Util.panelComponent.noSupportedDataSourceType",{dataSourceType:t}))}}childrenStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setData(t){var e,n;null==(n=(e=this.data).destroy)||n.call(e),this.state.items=t,this.childrenStateNotify(St.LOAD)}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntityLogic"));if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const{context:n,params:o}=this.computeNavParams(),a=await Lt(e,t,n,this.panel.data,o);if(!a)throw new _(ibiz.i18n.t("vue3Util.panelComponent.noReturnValue",{appDELogicId:e}));this.setData(a)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.noAttribute",{dataName:t}))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguerdEntityBehanior"));if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const n=ibiz.hub.getApp(this.panel.context.srfappid),{context:o,params:a}=this.computeNavParams(),i=await n.deService.exec(e,t,o,void 0,a);i.ok&&i.data&&this.setData(i.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.sessionView",{dataName:e}));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.viewStateAttribute",{dataName:e}))};n(),t.evt.on("onDataChange",(()=>{n()}))}setDataValue(t,e){throw new Error(ibiz.i18n.t("vue3Util.panelComponent.noImplementMethod"))}destroy(){var t,e;super.destroy(),null==(e=(t=this.data).destroy)||e.call(t),Object.values(this.panelItems).forEach((t=>{var e;null==(e=t.destroy)||e.call(t)}))}}t("MultiDataContainerRawController",pn);const hn=A({name:"IBizMultiDataContainerRaw",props:{modelData:{type:Object,required:!0},controller:{type:pn,required:!0}},setup(t){const e=ue("multi-data-container-raw"),{id:n}=t.modelData;l((()=>t.controller.state.items),(()=>{Object.keys(t.controller.panelItems).forEach((e=>{const n=t.controller.panelItems[e];n.state=v(n.state)}))}),{immediate:!0,deep:!0});const o=m("renderPanelItem"),a=O((()=>[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():x(b("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 x(b("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)&&!R(o)?e:{default:()=>[e]});var o}))]}}),x("div",{class:this.classArr},[t])}});class mn{constructor(){this.component="IBizMultiDataContainerRaw"}async createController(t,e,n){const o=new pn(t,e,n);return await o.init(),o}}t("IBizMultiDataContainerRaw",be(hn,(function(t){t.component(hn.name,hn),Ct("CONTAINER_CONTAINER_MULTIDATA_RAW",(()=>new mn))})));class vn extends wt{constructor(){super(...arguments),this.data={}}}t("SingleDataContainerState",vn);class fn extends bt{constructor(){super(...arguments),this.isDataContainer=!0,this.panelItems={},this.providers={}}get data(){return this.state.data}createState(){var t;return new vn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),await this.initPanelItemControllers()}async panelStateNotify(t){super.panelStateNotify(t),t===St.LOAD&&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 i=await Tt(t,e.model,e.view.model);if(!i)return;this.providers[t.id]=i;const r=await i.createController(t,e,n);this.panelItems[t.id]=r,(null==(o=t.panelItems)?void 0:o.length)&&!xt(t)&&await this.initPanelItemControllers(t.panelItems,e,r),(null==(a=t.panelTabPages)?void 0:a.length)&&await this.initPanelItemControllers(t.panelTabPages,e,r)})))}computeNavParams(){const{navigateContexts:t,navigateParams:e}=this.model,n=this.panel.context.clone();Object.assign(n,zt(t,this.panel.params,this.panel.context));const o=zt(e,this.panel.params,this.panel.context);return Object.assign(o,this.panel.params),{context:n,params:o}}initContainerData(){const{dataSourceType:t,dataName:e,dataRegionType:n,scriptCode:o}=this.model;if("LOGINFORM"!==n)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 Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.getTopView(),e);break;case"VIEWSESSIONPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.bindViewData(this.panel.view,e);break;case"ACTIVEDATAPARAM":if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguardDataObject"));this.setData(this.dataParent.data[e]);break;case"CUSTOM":{if(!o)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredScript"));const t=ut.execScriptFn({...this.panel.getEventArgs(),data:this.dataParent.data},o,{isAsync:!1,singleRowReturn:!0});this.setData(t);break}default:throw new H(this.model,ibiz.i18n.t("vue3Util.panelComponent.noSupportedDataSourceType",{dataSourceType:t}))}else this.setLoginForm()}childrenStateNotify(t){Object.values(this.panelItems).forEach((e=>{e.panelStateNotify(t)}))}async setData(t){var e,n;const o=At(this.model),a=o.map((t=>t.id)),i=new Rt(o,t);i._evt.on("change",(t=>{a.includes(t)&&this.childDataChangeNotify([t])})),null==(n=(e=this.data).destroy)||n.call(e),this.state.data=i,this.childrenStateNotify(St.LOAD)}setLoginForm(){this.setData({})}async setDataByDeLogic(){const{appDataEntityId:t,appDELogicId:e}=this.model;if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntityLogic"));if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const{context:n,params:o}=this.computeNavParams(),a=await Lt(e,t,n,this.panel.data,o);if(!a)throw new _(ibiz.i18n.t("vue3Util.panelComponent.noReturnValue",{appDELogicId:e}));this.setData(a)}setDataByAppGlobalParam(){const{dataName:t}=this.model,e=t?ibiz.appData[t]:ibiz.appData;e?this.setData(e):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.noAttribute",{dataName:t}))}async setDataByDeMethod(){const{appDEMethodId:t,appDataEntityId:e}=this.model;if(!t)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguerdEntityBehanior"));if(!e)throw new Q(this.model,ibiz.i18n.t("vue3Util.panelComponent.noConfiguredEntity"));const n=ibiz.hub.getApp(this.panel.context.srfappid),{context:o,params:a}=this.computeNavParams(),i=await n.deService.exec(e,t,o,void 0,a);i.ok&&i.data&&this.setData(i.data)}bindViewData(t,e){if(!Object.prototype.hasOwnProperty.call(t.state,e))return void ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.sessionView",{dataName:e}));const n=()=>{const n=t.state[e];n?this.setData(n):ibiz.log.error(ibiz.i18n.t("vue3Util.panelComponent.viewStateAttribute",{dataName: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",fn);const gn=A({name:"IBizSingleDataContainer",props:{modelData:{type:Object,required:!0},controller:{type:fn,required:!0}},setup(t){const e=ue("single-data-container"),{id:n}=t.modelData;Object.keys(t.controller.panelItems).forEach((e=>{const n=t.controller.panelItems[e];n.state=v(n.state)}));const o=m("renderPanelItem"),a=O((()=>[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():x(b("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 x(b("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)&&!R(o)?e:{default:()=>[e]});var o}))]}}),x("div",{class:this.classArr},[t])}});class yn{constructor(){this.component="IBizSingleDataContainer"}async createController(t,e,n){const o=new fn(t,e,n);return await o.init(),o}}t("IBizSingleDataContainer",be(gn,(function(t){t.component(gn.name,gn),Ct("CONTAINER_CONTAINER_SINGLEDATA",(()=>new yn))})));class wn extends wt{}t("GridContainerState",wn);class bn extends bt{createState(){var t;return new wn(null==(t=this.parent)?void 0:t.state)}}function Cn(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("GridContainerController",bn);const In=A({name:"IBizGridContainer",props:{modelData:{type:Object,required:!0},controller:{type:bn,required:!0}},setup(t){const e=ue("grid-container"),{id:n}=t.modelData,o=O((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=O((()=>({...t.modelData.layout,layout:"TABLE_12COL"}))),i=y(void 0),r=y(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:i}},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 x(b("iBizRow"),{class:this.classArr,layout:this.layoutModel},Cn(n=o.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:this.convertLayoutPos(e.modelData.layoutPos,this.adaptGrow),state:e.controller.state},Cn(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]})}});class Pn{constructor(){this.component="IBizGridContainer"}async createController(t,e,n){const o=new bn(t,e,n);return await o.init(),o}}t("IBizGridContainer",be(In,(function(t){t.component(In.name,In),Ct("CONTAINER_CONTAINER_GRID",(()=>new Pn))})));class Dn extends wt{}t("PanelContainerImageState",Dn);class En extends bt{createState(){var t;return new Dn(null==(t=this.parent)?void 0:t.state)}}function Nn(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}t("PanelContainerImageController",En);const On=A({name:"IBizPanelContainerImage",props:{modelData:{type:Object,required:!0},controller:{type:En,required:!0}},setup(t){const e=ue("panel-container-image"),{id:n}=t.modelData,o=O((()=>{let o=[e.b(),e.m(n)];return o=[...o,...t.controller.containerClass,e.is("hidden",!t.controller.state.visible)],o})),a=O((()=>{const e=t.controller.model.sysImage,n={};let o="";if(null==e?void 0:e.rawContent)if(W(e.rawContent)){const t=e.rawContent.replace(/[\u4e00-\u9fff]/g,"");o="url(data:image/svg+xml;base64,".concat(btoa(t),")")}else o="url(".concat(e.rawContent,")");else(null==e?void 0:e.imagePath)&&(o="url(".concat(e.imagePath,")"));return 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=x(b("iBizRow"),{slot:"content",layout:this.modelData.layout},Nn(n=o.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},Nn(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});return x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()},style:this.backgroundStyle},[this.controller.model.cssStyle?x("style",{type:"text/css"},[this.controller.model.cssStyle]):null,a])}});class An{constructor(){this.component="IBizPanelContainerImage"}async createController(t,e,n){const o=new En(t,e,n);return await o.init(),o}}t("IBizPanelContainerImage",be(On,(function(t){t.component(On.name,On),Ct("CONTAINER_CONTAINER_IMAGE",(()=>new An))})));class xn extends wt{}t("PanelContainerGroupState",xn);class Sn extends bt{createState(){var t;return new xn(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",Sn);class Tn{constructor(){this.component="IBizPanelContainerGroup"}async createController(t,e,n){const o=new Sn(t,e,n);return await o.init(),o}}function zn(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}const Rn=A({name:"IBizPanelContainerGroup",props:{modelData:{type:Object,required:!0},controller:{type:Sn,required:!0}},setup(t){const e=ue("panel-container-group"),n=y(!t.controller.defaultExpansion);return{ns:e,captionText:O((()=>{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))||[],i=x(b("iBizRow"),{slot:"content",layout:this.modelData.layout},zn(n=a.map((t=>{const e=t.props;return e&&e.controller?x(b("iBizCol"),{layoutPos:e.modelData.layoutPos,state:e.controller.state},zn(t)?t:{default:()=>[t]}):t})))?n:{default:()=>[n]});let r=null;return this.modelData.showCaption&&(r=x("div",{class:[this.ns.b("header")],onClick:this.changeCollapse},[x("div",{class:[this.ns.be("header","left")]},[x("div",{class:[this.ns.e("caption"),...this.controller.labelClass]},[this.modelData.sysImage&&x(xe,{class:this.ns.em("caption","icon"),icon:this.modelData.sysImage},null),this.captionText])]),x("div",{class:[this.ns.be("header","right")]},[void 0!==this.modelData.titleBarCloseMode&&0!==this.modelData.titleBarCloseMode&&(this.isCollapse?x("ion-icon",{name:"caret-forward-sharp"},null):x("ion-icon",{name:"caret-down-sharp"},null))])])),x("div",{class:o},[r,x("div",{class:[this.ns.b("content")]},[i])])}});t("IBizPanelContainerGroup",be(Rn,(function(t){t.component(Rn.name,Rn),Ct("CONTAINER_CONTAINER_GROUP",(()=>new Tn))})));function Ln(t){return"function"==typeof t||"[object Object]"===Object.prototype.toString.call(t)&&!R(t)}const Bn=A({name:"IBizPanelTabPage",props:{modelData:{type:Object,required:!0},controller:{type:bt,required:!0}},setup(t){const e=ue("panel-tab-page"),n=O((()=>{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 x(b("iBizRow"),{class:[this.ns.b(),this.ns.m(this.modelData.codeName),this.classArr],layout:this.modelData.layout},Ln(n=o.map((t=>{const e=t.props;if(!e||!e.controller)return t;const n=e.controller;return x(b("iBizCol"),{layoutPos:n.model.layoutPos,state:n.state},Ln(t)?t:{default:()=>[t]})})))?n:{default:()=>[n]})}});class jn{constructor(){this.component="IBizPanelTabPage"}async createController(t,e,n){const o=new bt(t,e,n);return await o.init(),o}}t("IBizPanelTabPage",be(Bn,(function(t){t.component(Bn.name,Bn),Ct("TABPAGE",(()=>new jn))})));class Vn extends bt{getPanelItemCustomHtml(t,e){if(0===t.length)return;const n=t[0];return n.layoutPanelModel?ut.execScriptFn({data:e||{}},n.layoutPanelModel,{singleRowReturn:!0,isAsync:!1}):void 0}}const kn=A({name:"IBizPanelItemRender",props:{modelData:{type:Object,required:!0},controller:{type:Vn,required:!0}},setup(t){var e;const n=ue("panel-item-render"),o=ue("panel-".concat(null==(e=t.modelData.itemType)?void 0:e.toLowerCase())),{id:a}=t.modelData,i=O((()=>[n.b(),n.m(a),o.b(),n.is("hidden",!t.controller.state.visible)])),r=O((()=>t.controller.getPanelItemCustomHtml(t.modelData.controlRenders,t.controller.data)));return{ns:n,classArr:i,htmlCode:r}},render(){return x("div",{class:this.classArr,innerHTML:this.htmlCode},null)}});class Mn{constructor(){this.component="IBizPanelItemRender"}async createController(t,e,n){const o=new Vn(t,e,n);return await o.init(),o}}t("IBizPanelItemRender",be(kn,(function(t){t.component(kn.name,kn),Ct("PREDEFINE_RENDER",(()=>new Mn))})));const Un=A({name:"IBizTeleportPlaceholder",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){const e=ue("teleport-placeholder"),n=y(""),{rawItem:o}=t.modelData;o&&o.cssStyle&&(n.value=o.cssStyle);const a=O((()=>{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 x("div",{id:this.controller.state.teleportTag,class:this.classArr,style:this.tempStyle},null)}});class _n extends wt{constructor(){super(...arguments),this.teleportTag=""}}class Fn extends bt{createState(){var t;return new _n(null==(t=this.parent)?void 0:t.state)}async onInit(){var t,e;await super.onInit();const n=this.panel.view.model.codeName;let o="".concat(null==n?void 0:n.toLowerCase(),"-").concat(this.model.id);const a=null==(e=null==(t=this.model.rawItem)?void 0:t.rawItemParams)?void 0:e.find((t=>"TeleportTag"===t.key));a&&a.value&&(o=a.value),ibiz.log.debug(ibiz.i18n.t("vue3Util.panelComponent.placeholderIdentifier",{viewCodeName:n,id:this.model.id}),o),this.state.teleportTag=o}}class qn{constructor(){this.component="IBizTeleportPlaceholder"}async createController(t,e,n){const o=new Fn(t,e,n);return await o.init(),o}}t("TeleportPlaceholderProvider",qn);t("IBizTeleportPlaceholder",be(Un,(function(t){t.component(Un.name,Un),Ct("RAWITEM_TELEPORT_PLACEHOLDER",(()=>new qn))})));const Gn=A({name:"IBizPanelContainerTabs",props:{modelData:{type:Object,required:!0},controller:{type:Te,required:!0}},setup:()=>({ns:ue("panel-container-tabs")}),render(){return w(b("IBizPanelContainer"),{...this.$props,...this.$attrs,class:this.ns.b()},this.$slots)}});class Wn{constructor(){this.component="IBizPanelContainerTabs"}async createController(t,e,n){const o=new Te(t,e,n);return await o.init(),o}}t("IBizPanelContainerTabs",be(Gn,(function(t){t.component(Gn.name,Gn),Ct("CONTAINER_TABS",(()=>new Wn))})));const $n=A({name:"IBizPanelCtrlViewPageCaption",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){const e=ue("panel-ctrl-view-page-caption"),n=O((()=>{const{id:n}=t.modelData,o=[e.b(),e.m(n)];return o.push(...t.controller.containerClass),o}));return{ns:e,classArr:n}},render(){let t=null;return this.controller.data&&(t=x("span",{class:this.ns.b("content")},[this.controller.state.caption])),x("div",{class:this.classArr,onClick:()=>{this.controller.onClick()}},[t])}});class Kn extends bt{async onInit(){await super.onInit(),this.state.caption=this.panel.view.model.caption||"",this.panel.view.evt.on("onViewInfoChange",(({caption:t,dataInfo:e})=>{this.state.caption="".concat(this.panel.view.model.caption).concat(e?"-".concat(e):"")}))}}class Hn{constructor(){this.component="IBizPanelCtrlViewPageCaption"}async createController(t,e,n){const o=new Kn(t,e,n);return await o.init(),o}}t("IBizPanelCtrlViewPageCaption",be($n,(function(t){t.component($n.name,$n),Ct("CTRLPOS_VIEW_PAGECAPTION",(()=>new Hn))})));const Qn=A({name:"IBizAuthWxmpQrcode",props:{modelData:{type:Object,required:!0},controller:{type:Object,required:!0}},setup(t){const e=ue("auth-wxmp-qrcode"),{state:n}=t.controller,o=Ht();t.controller.setRouter(o);const a=async()=>{await t.controller.loadQrcode()};return l((()=>n.visible),(()=>{var t;n.visible&&(n.keepAlive&&!(null==(t=n.qrcode)?void 0:t.expirein)||!n.keepAlive)&&a()}),{immediate:!0}),P((()=>{t.controller.destroy()})),{ns:e,loadQrcode:a}},render(){var t,e;return x("div",{class:this.ns.b()},[x("div",{class:this.ns.e("content")},[this.controller.state.qrcode&&x("img",{class:this.ns.e("qrcode"),src:null==(t=this.controller.state.qrcode)?void 0:t.url},null),!(null==(e=this.controller.state.qrcode)?void 0:e.expirein)&&x("div",{class:this.ns.e("mask")},[x("ion-icon",{title:ibiz.i18n.t("vue3Util.panelComponent.refresh"),name:"reload-outline",onClick:this.loadQrcode,class:this.ns.em("mask","icon")},null)])]),x("div",{class:this.ns.e("caption")},[this.controller.state.tips])])}});class Xn extends wt{}class Yn extends bt{constructor(){super(...arguments),this.pollingTime=2,this.rawItemParams={}}createState(){var t;return new Xn(null==(t=this.parent)?void 0:t.state)}async onInit(){await super.onInit(),this.handleRawItemParams(),this.initParams()}setRouter(t){this.route=t}handleRawItemParams(){var t;let e={};const n=null==(t=this.model.rawItem)?void 0:t.rawItemParams;a(n)&&(e=n.reduce(((t,e)=>(t[e.key.toLowerCase()]=e.value,t)),{})),Object.assign(this.rawItemParams,e)}initParams(){var t;this.pollingTime=(t=this.rawItemParams.pollingtime)&&isFinite(Number(t))?Number(this.rawItemParams.pollingtime):2,this.state.tips=this.model.caption||ibiz.i18n.t("vue3Util.panelComponent.wxQrcodeCaption")}async loadQrcode(){try{const t=await ibiz.net.get("/uaa/open/wxmp/createqrcode",{},{srfdcsystem:ibiz.env.dcSystem});t.ok&&t.data&&(this.state.qrcode=t.data,this.setTimer())}catch(t){ibiz.log.error(t.message)}}setTimer(){this.expirationTimer=setInterval((()=>{this.state.qrcode&&this.state.qrcode.expirein>0?this.state.qrcode.expirein-=1:clearInterval(this.expirationTimer)}),1e3),this.pollingTimer=setInterval((async()=>{await this.pollingLogin()}),1e3*this.pollingTime)}async pollingLogin(){try{if(this.state.qrcode&&this.state.qrcode.expirein>0){if(this.state.visible){const t=await ibiz.net.get("/uaa/open/wxmp/qrcode/".concat(this.state.qrcode.ticket),{},{srfdcsystem:ibiz.env.dcSystem}),{data:e,ok:n}=t;if(n&&(null==e?void 0:e.token)){clearInterval(this.pollingTimer);const t=30;X(Y.TOKEN_REMEMBER,"1",t),X(Y.TOKEN,e.token,t);const n=(new Date).getTime()+1e3*(e.expirein||7199);X(Y.TOKEN_EXPIRES,"".concat(n),t),e.refresh_token&&X(Y.REFRESH_TOKEN,e.refresh_token,t),J(Y.IS_ANONYMOUS);const o=this.route.query.ru||"/";window.location.hash=o||"/",window.history.pushState({},""),window.location.reload()}}}else clearInterval(this.pollingTimer)}catch(t){ibiz.log.error(t.message)}}async destroy(){await super.destroy(),this.pollingTimer&&(clearInterval(this.pollingTimer),this.pollingTimer=void 0),this.expirationTimer&&(clearInterval(this.expirationTimer),this.expirationTimer=void 0)}}class Jn{constructor(){this.component="IBizAuthWxmpQrcode"}async createController(t,e,n){const o=new Yn(t,e,n);return await o.init(),o}}t("IBizAuthWxmpQrcode",be(Qn,(function(t){t.component(Qn.name,Qn),Ct("RAWITEM_AUTH_WXMP_QRCODE",(()=>new Jn))}))),t("AppRedirectView",A({setup(){var t;const e=K.create((null==(t=ibiz.appData)?void 0:t.context)||{});P((()=>{e.destroy()}));const{href:n}=window.location;I((()=>ibiz.util.hiddenAppLoading())),async function(){await Bt(e,n)}()},render:()=>x("div",null,[ibiz.i18n.t("vue3Util.view.redirectionProgress")])}));class Zn{constructor(){this.component="IBizView"}}const to=A({name:"IBizView",props:{context:{type: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=ue("view"),o=Ne(((...t)=>new pt(...t)));Oe(o);const a=jt(o.model),i=[],r=new Map,s=[];a.forEach((t=>{const{teleportFlag:e,teleportTag:n}=Vt(t);n||e?(i.push(t),r.set(t.id,n||"")):s.push(t)}));const{viewType:l,sysCss:c,codeName:d}=o.model,u=l.toLowerCase(),p=null==c?void 0:c.cssName,h=O((()=>[n.b(),n.b(u),n.m(d),p,o.state.viewMessages.TOP?"has-top-message":"",o.state.viewMessages.BOTTOM?"has-bottom-message":"",o.state.presetClassList])),m=(t,e={})=>{const n=t.name||t.id;return{context:o.context,params:o.params,modelData:t,...o.slotProps[n]||{},...e}};return{c:o,ns:n,controls:s,teleportControls:i,viewClassNames:h,onLayoutPanelCreated:t=>{o.setLayoutPanel(t)},getCtrlProps:m,renderControl:(t,n={})=>{const a=t.name||t.id,i=m(t,n);if(e[a])return B(e,a,i);const r=o.providers[a],s=b((null==r?void 0:r.component)||"IBizControlShell");return r&&(i.provider=r),w(s,i)},getCtrlTeleportTag:t=>{var e,n;const a=r.get(t.id);if(a)return a;const i=null==(n=null==(e=o.parentView)?void 0:e.layoutPanel)?void 0:n.panelItems[t.name];return i?"#".concat(i.state.teleportTag):void 0},getControlStyle:()=>{const t={};return Object.assign(t,{display:o.state.hasError?"none":"initial"}),t}}},render(){var t,e;let n=null;if(this.c.state.isCreated)if(0===this.c.engines.length)n=x("span",{style:"color:red;"},[ibiz.i18n.t("vue3Util.view.viewType",{viewType:this.modelData.viewType})]);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]=e=>this.renderControl(t,e)}));const o=this.c.model.viewLayoutPanel,a=this.c.providers[o.name];n=w(b(a.component),{modelData:o,context:this.c.context,params:this.c.params,provider:a,container:this.c,style:this.getControlStyle(),onControllerAppear:this.onLayoutPanelCreated},e)}let o=null;this.c.state.isCreated&&(null==(e=this.teleportControls)?void 0:e.length)&&(o=this.teleportControls.map((t=>{let e;const n=this.getCtrlTeleportTag(t);return n?x("div",{style:this.getControlStyle()},[x(L,{to:n,disabled:!this.c.state.activated},(o=e=this.renderControl(t),"function"==typeof o||"[object Object]"===Object.prototype.toString.call(o)&&!R(o)?e:{default:()=>[e]}))]):(ibiz.log.error(ibiz.i18n.t("vue3Util.view.noTeleportTag",{name:t.name})),null);var o})));let a=null;if(this.c.state.hasError&&this.c.error.status){const t=mt(this.c.error.status);t&&("string"==typeof t.component&&(a=w(b(t.component))),a=w(t.component))}return S(x("div",{class:this.viewClassNames,id:this.c.id},[n,o,a]),[[T("loading"),this.c.state.isLoading]])}});class eo{constructor(){this.component="IBizView"}createController(t,e,n,o){return new kt(t,e,n,o)}}class no{constructor(){this.component="IBizView"}createController(t,e,n,o){return new Mt(t,e,n,o)}}t("IBizView",be(to,(function(t){t.component(to.name,to),Ut("DEFAULT",(()=>new Zn)),Ut("APPDATAUPLOADVIEW",(()=>new eo)),Ut("DEMDCUSTOMVIEW",(()=>new no))}))),t("TodoRedirect",A({setup(){const t=Qt(),{href:e}=window.location,n=e.lastIndexOf("?"),o=decodeURIComponent(e.substring(n+1,e.length));if(!o)throw new Error(ibiz.i18n.t("vue3Util.view.insufficientRedirection"));const a=Yt.parse(o,{delimiter:";"}),{apptype:i,todotype:r,todoid:s}=a,l={srfapptype:"pc",srfapp:""};i||(l.todourltype="RouterUrl"),async function(){let e=(await ibiz.net.post("/systodos/".concat(s,"/getlinkurl"),l)).data.linkurl;i?window.location.href=e:(0!==e.indexOf("/")&&(e="/".concat(e)),e+=";srfwf=".concat(r),t.push("/index".concat(e)))}()},render:()=>x("div",null,[ibiz.i18n.t("vue3Util.view.toDoList")])}));class oo{constructor(){this.component="IBizPortalView"}}const ao=A({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=ue("view"),n=Ne(((...t)=>new pt(...t))),o=(null==(t=n.model.viewLayoutPanel)?void 0:t.controls)||n.model.controls,{viewType:a,sysCss:i,codeName:r}=n.model,s=a.toLowerCase(),l=null==i?void 0:i.cssName,c=[e.b(),e.b(s),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 i=this.c.providers[e];i&&(n[e]=()=>{const e=b(i.component);return w(e,{modelData:t,...o,provider:i})})})),n.dashboard&&(e=n.dashboard())}return x("div",{class:this.viewClassNames},[e])}}),io=(t("IBizPortalView",be(ao,(function(t){t.component(ao.name,ao),Ut(rt.APP_PORTAL_VIEW,(()=>new oo)),Ut(rt.DE_PORTAL_VIEW,(()=>new oo)),Ut(rt.DE_PORTAL_VIEW9,(()=>new oo))}))),A({name:"IBizDeRedirectView",props:{context:{type:Object,required:!0},params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},isEmbedCtrlNav:{type:Boolean,default:!1}},setup(t){const e=Ne(((...t)=>new pt(...t))),n=y(),o=y(),a=y();return e.evt.on("onCreated",(()=>{_t(h(t.modelData),h(e.context),h(e.params)).then((async t=>{if("view"!==t.type)throw new _(ibiz.i18n.t("vue3Util.view.embeddedRedirectionView"));n.value=t.viewId,o.value=t.context,a.value=t.params}))})),t.isEmbedCtrlNav&&l((()=>[e.context,e.params]),(()=>{_t(h(t.modelData),h(e.context),h(e.params)).then((async t=>{"view"===t.type&&(n.value=t.viewId,o.value=t.context)}))}),{deep:!0}),{c:e,toViewId:n,toViewContext:o,toViewParams:a}},render(){return this.toViewId?w(b("IBizViewShell"),{context:this.toViewContext,params:this.toViewParams,viewId:this.toViewId,...this.$attrs},this.$slots):S(x("div",{style:"width: 100%; height: 100%;"},null),[[T("loading"),!this.toViewId]])}}));class ro{constructor(){this.component="IBizDeRedirectView"}}t("IBizDeRedirectView",be(io,(function(t){t.component(io.name,io);const e=new ro;Ut(rt.DE_REDIRECT_VIEW,(()=>e))})));class so{constructor(){this.component="IBizHtmlView"}}const lo=A({name:"IBizHtmlView",props:{context:Object,params:{type:Object,default:()=>({})},modelData:{type:Object,required:!0},modal:{type:Object},state:{type:Object}},setup(){var t;const e=ue("view"),n=Ne(((...t)=>new pt(...t))),o=(null==(t=n.model.viewLayoutPanel)?void 0:t.controls)||n.model.controls,{viewType:a,sysCss:i,codeName:r}=n.model,s=a.toLowerCase(),l=null==i?void 0:i.cssName,c=[e.b(),e.b(s),e.m(r),l],d=y(!1),u=O((()=>{const{htmlUrl:t}=n.model;return t?Z.fill(t,n.context,n.params):""}));j((()=>{u.value&&(d.value=!0)}));return{c:n,ns:e,controls:o,viewClassNames:c,url:u,isLoading:d,onLoad:()=>{d.value=!1}}},render(){if(this.url)return S(x("div",{class:this.viewClassNames},[x("iframe",{src:this.url,onLoad:()=>this.onLoad()},null)]),[[T("loading"),this.isLoading]]);let t=null;const e=mt("404");return e&&("string"==typeof e.component&&(t=w(b(e.component))),t=w(e.component)),x("div",{class:this.viewClassNames},[t])}});t("IBizHtmlView",be(lo,(function(t){t.component(lo.name,lo),Ut(rt.DE_HTML_VIEW,(()=>new so))})));const co=A({name:"IBizViewLayoutPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:{type:Object}},setup(t,{slots:e}){const n=ce(((...e)=>new Ft(...e,t.container))),o=ue("control-".concat(n.model.controlType.toLowerCase()));l((()=>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=v(e.state)}))}));const a=(t,o)=>{var i,r;if(t.hidden)return null;const{providers:s,panelItems:l}=o||n,c=s[t.id];if(!c)return x("div",null,[ibiz.i18n.t("vue3Util.control.unsupportedPanel",{id:t.id,itemType:t.itemType})]);if("CTRLPOS"!==t.itemType&&e[t.id])return B(e,t.id,{model:t,data:n.data,value:n.data[t.id]});const d=b(c.component);let u;if("CTRLPOS"===t.itemType&&e[t.id]){const n=l[t.id];u=n.parent&&qt(n.parent.model)?()=>e[t.id]({isSimple:!0,data:n.data}):()=>e[t.id]()}else"TABPANEL"===t.itemType&&(null==(i=t.panelTabPages)?void 0:i.length)?u=()=>t.panelTabPages.map((t=>a(t,o))):xt(t)?u=void 0:(null==(r=t.panelItems)?void 0:r.length)&&(u=()=>t.panelItems.map((t=>a(t,o))));let p="";t.cssStyle&&(p=t.cssStyle);const h=l[t.id],m=function(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=ut.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}(t,h);return m.dynamicstyle&&("object"==typeof m.dynamicstyle?p+=Object.entries(m.dynamicstyle).map((([t,e])=>"".concat(t,":").concat(e,";"))).join(""):p+=m.dynamicstyle,delete m.dynamicstyle),w(d,{modelData:t,controller:h,key:t.id,style:p,attrs:m},u)};return C("renderPanelItem",a),{c:n,ns:o,renderPanelItem:a}},render(){const{state:t,model:e}=this.c;return x(b("iBizControlBase"),{controller:this.c},{default:()=>[x(b("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",x(b("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=this.renderPanelItem(t))||"[object Object]"===Object.prototype.toString.call(o)&&!R(o)?e:{default:()=>[e]});var o})))]}})]})}});class uo{constructor(){this.component="IBizViewLayoutPanelControl"}}t("IBizViewLayoutPanelControl",be(co,(function(t){t.component(co.name,co),Gt(Wt.VIEW_LAYOUT_PANEL,(()=>new uo))})));function po(t,e,n){var o,a;if(t.hidden)return;const{providers:i,panelItems:r}=e,s=i[t.id];if(!s)return x("div",null,[ibiz.i18n.t("vue3Util.control.unsupportedPanel",{id:t.id,itemType:t.itemType})]);const l=b(s.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=>po(t,e,n))):xt(t)?c=void 0:(null==(a=t.panelItems)?void 0:a.length)&&(c=()=>t.panelItems.map((t=>po(t,e,n))));let d="";t.cssStyle&&(d=t.cssStyle);const u=r[t.id],p=function(t,e){var n;const o={};return null==(n=t.controlAttributes)||n.forEach((t=>{t.attrName&&t.attrValue&&(o[t.attrName]=ut.execSingleLine(t.attrValue,{...e.panel.getEventArgs(),data:e.data}))})),o}(t,u);return p.dynamicstyle&&("object"==typeof p.dynamicstyle?d+=Object.entries(p.dynamicstyle).map((([t,e])=>"".concat(t,":").concat(e,";"))).join(""):d+=p.dynamicstyle,delete p.dynamicstyle),w(l,{modelData:t,controller:u,key:t.id,style:d,attrs:p},c)}const ho=A({name:"IBizPanelControl",props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},container:{type:Object},data:{type:Object},loadDefault:{type:Boolean,default:!0}},setup(t){const e=ce(((...e)=>new $t(...e,t.container))),n=ue("control-".concat(e.model.controlType.toLowerCase()));l((()=>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=v(n.state)}))}));const o=m("renderPanelItem");return C("renderPanelItem",o||po),{c:e,ns:n}},render(){const{state:t,model:e}=this.c;return x(b("iBizControlBase"),{controller:this.c},{default:()=>[x(b("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",x(b("iBizCol"),{layoutPos:t.layoutPos,state:n.state},"function"==typeof(o=e=po(t,this.c,this))||"[object Object]"===Object.prototype.toString.call(o)&&!R(o)?e:{default:()=>[e]});var o})))]}})]})}});class mo{constructor(){this.component="IBizPanelControl"}}t("IBizPanelControl",be(ho,(function(t){t.component(ho.name,ho),Gt(Wt.PANEL,(()=>new mo))})));function vo(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function fo(t){if("string"!=typeof t)throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}function go(t,e){for(var n,o="",a=0,i=-1,r=0,s=0;s<=t.length;++s){if(s<t.length)n=t.charCodeAt(s);else{if(47===n)break;n=47}if(47===n){if(i===s-1||1===r);else if(i!==s-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("/"),i=s,r=0;continue}}else if(2===o.length||1===o.length){o="",a=0,i=s,r=0;continue}e&&(o.length>0?o+="/..":o="..",a=2)}else o.length>0?o+="/"+t.slice(i+1,s):o=t.slice(i+1,s),a=s-i-1;i=s,r=0}else 46===n&&-1!==r?++r:r=-1}return o}var yo={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),fo(a),0!==a.length&&(e=a+"/"+e,n=47===a.charCodeAt(0))}return e=go(e,!n),n?e.length>0?"/"+e:"/":e.length>0?e:"."},normalize:function(t){if(fo(t),0===t.length)return".";var e=47===t.charCodeAt(0),n=47===t.charCodeAt(t.length-1);return 0!==(t=go(t,!e)).length||e||(t="."),t.length>0&&n&&(t+="/"),e?"/"+t:t},isAbsolute:function(t){return fo(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];fo(n),n.length>0&&(void 0===t?t=n:t+="/"+n)}return void 0===t?".":yo.normalize(t)},relative:function(t,e){if(fo(t),fo(e),t===e)return"";if((t=yo.resolve(t))===(e=yo.resolve(e)))return"";for(var n=1;n<t.length&&47===t.charCodeAt(n);++n);for(var o=t.length,a=o-n,i=1;i<e.length&&47===e.charCodeAt(i);++i);for(var r=e.length-i,s=a<r?a:r,l=-1,c=0;c<=s;++c){if(c===s){if(r>s){if(47===e.charCodeAt(i+c))return e.slice(i+c+1);if(0===c)return e.slice(i+c)}else a>s&&(47===t.charCodeAt(n+c)?l=c:0===c&&(l=0));break}var d=t.charCodeAt(n+c);if(d!==e.charCodeAt(i+c))break;47===d&&(l=c)}var u="";for(c=n+l+1;c<=o;++c)c!==o&&47!==t.charCodeAt(c)||(0===u.length?u+="..":u+="/..");return u.length>0?u+e.slice(i+l):(i+=l,47===e.charCodeAt(i)&&++i,e.slice(i))},_makeLong:function(t){return t},dirname:function(t){if(fo(t),0===t.length)return".";for(var e=t.charCodeAt(0),n=47===e,o=-1,a=!0,i=t.length-1;i>=1;--i)if(47===(e=t.charCodeAt(i))){if(!a){o=i;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');fo(t);var n,o=0,a=-1,i=!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,s=-1;for(n=t.length-1;n>=0;--n){var l=t.charCodeAt(n);if(47===l){if(!i){o=n+1;break}}else-1===s&&(i=!1,s=n+1),r>=0&&(l===e.charCodeAt(r)?-1==--r&&(a=n):(r=-1,a=s))}return o===a?a=s:-1===a&&(a=t.length),t.slice(o,a)}for(n=t.length-1;n>=0;--n)if(47===t.charCodeAt(n)){if(!i){o=n+1;break}}else-1===a&&(i=!1,a=n+1);return-1===a?"":t.slice(o,a)},extname:function(t){fo(t);for(var e=-1,n=0,o=-1,a=!0,i=0,r=t.length-1;r>=0;--r){var s=t.charCodeAt(r);if(47!==s)-1===o&&(a=!1,o=r+1),46===s?-1===e?e=r:1!==i&&(i=1):-1!==e&&(i=-1);else if(!a){n=r+1;break}}return-1===e||-1===o||0===i||1===i&&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){fo(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 i=-1,r=0,s=-1,l=!0,c=t.length-1,d=0;c>=n;--c)if(47!==(o=t.charCodeAt(c)))-1===s&&(l=!1,s=c+1),46===o?-1===i?i=c:1!==d&&(d=1):-1!==i&&(d=-1);else if(!l){r=c+1;break}return-1===i||-1===s||0===d||1===d&&i===s-1&&i===r+1?-1!==s&&(e.base=e.name=0===r&&a?t.slice(1,s):t.slice(r,s)):(0===r&&a?(e.name=t.slice(1,i),e.base=t.slice(1,s)):(e.name=t.slice(r,i),e.base=t.slice(r,s)),e.ext=t.slice(i,s)),r>0?e.dir=t.slice(0,r-1):a&&(e.dir="/"),e},sep:"/",delimiter:":",win32:null,posix:null};yo.posix=yo;var wo=yo,bo=vo(wo);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.code,e.extraParams)}))}async loadPredefinedPlugin(t){if(this.predefinedPlugins.has(t)){const e=this.predefinedPlugins.get(t);e&&await this.loadPluginRef(e.name,e.path)}}setPluginCode(t,e={}){this.pluginCodes.push({code:t,extraParams:e}),ne.useComponent.callSync(null,t,e)}async loadPlugin(t,e=ibiz.env.appId){if(!0===t.runtimeObject){const n=t;if(n){const t=n.rtobjectName,o=n.rtobjectRepo,a=n.pluginParams||{};if(this.isIgnore(o))return!0;if(this.pluginCache.has(t))return!0;if(this.loadQueue.has(o)){const t=await this.loadQueue.get(o);try{return await t}catch(t){return!1}}try{const t=this.loadPluginRef(n.rtobjectName,n.rtobjectRepo,e,{...a});this.loadQueue.set(o,t);return await t}catch(t){throw new Q(n,ibiz.i18n.t("vue3Util.plugin.failureConfigurationLoad"))}finally{this.loadQueue.delete(o)}}}return!1}async loadPluginRef(t,e,n=ibiz.env.appId,o={}){if(this.isIgnore(e))return!0;if(this.pluginCache.has(t))return!0;let a=null;{const t=e,o=this.urlReg.test(t)?"".concat(t,"/package.json"):"".concat("FULLCODE"===ibiz.env.runContainer&&n!==ibiz.env.appId?ibiz.hub.microAppConfigCenter.getPluginBaseUrl(n):ibiz.env.pluginBaseUrl,"/").concat(wo.join(t,"package.json")),i=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:o});if(200!==i.status)throw new Error(ibiz.i18n.t("vue3Util.plugin.failureConfigurationLoad"));a=i.data}Object.assign(a,{appId:n,extraParams:o});const i=new Kt(t,e,a);if(i){await this.loadPluginExternal(i.config);try{return await this.loadScript(i),this.pluginCache.set(t,i),!0}catch(t){ibiz.log.error(t)}}return!1}async loadScript(t){const e=t.repo,{name:n,appId:o,system:a,styles:i=[],extraParams:r={}}=t.config;let s="";if(s=wo.join(e,a),s){if(this.cache.has(s))return;const t="FULLCODE"===ibiz.env.runContainer&&o!==ibiz.env.appId?ibiz.hub.microAppConfigCenter.getPluginBaseUrl(o):ibiz.env.pluginBaseUrl;let a=null;const l=this.parseUrl(s,t),c=("string"==typeof i?[i]:i).map((n=>this.parseUrl(bo.join(e,n),t)));if(System.addImportMap({imports:{[n]:l},styles:{[n]:c}}),a=await System.import(n),!a)throw new _(ibiz.i18n.t("vue3Util.plugin.fileContentFormat"));if(!a.default)throw new _(ibiz.i18n.t("vue3Util.plugin.failedRemotePluginLoad"));this.setPluginCode(a.default,r),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(wo.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"],t.appId);if(e.packages){const n=e.packages;for(const e in n){const o=n[e],a=await ibiz.net.axios({method:"get",headers:{"Access-Control-Allow-Origin":"*"},url:o});if(200!==a.status)throw new Error(ibiz.i18n.t("vue3Util.plugin.failureConfigurationLoad"));const i=a.data;Object.assign(i,{appId:t.appId}),await this.loadPluginExternal(i)}}System.addImportMap(e)}handleSystemImportMap(t,e){if(t){if(t.baseUrl||"FULLCODE"!==ibiz.env.runContainer||e===ibiz.env.appId||(t.baseUrl=ibiz.hub.microAppConfigCenter.getPluginBaseUrl(e)),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 Co{constructor(t,e,n){this.required=!0,e&&(this.default=e),n&&(this.validator=n),this.type=t}}function Io(){return{value:String,controller:new Co(Object),data:new Co(Object),disabled:{type:Boolean},readonly:{type:Boolean,default:!1},autoFocus:{type:Boolean,default:!1},overflowMode:{type:String},controlParams:{type:Object,required:!1}}}function Po(){return{change:(t,e,n)=>!0,blur:t=>!0,focus:t=>!0,enter:t=>!0,infoTextChange:t=>!0}}function Do(){return{hasError:{type:Boolean}}}function Eo(){return{...Io(),value:[String,Number]}}function No(){return{...Io(),value:[String,Number,Object,Array]}}function Oo(){return{...Io(),value:[String,Number]}}function Ao(){return{...Io(),value:[String,Number]}}function xo(){return{...Io(),value:[String,Number]}}function So(){return{...Io(),value:[String,Array,Object,Number]}}function To(){return{...Io(),value:[String,Number]}}function zo(){return{...Io(),value:[String,Number]}}function Ro(){return{...Io(),value:{type:Object}}}function Lo(){return{...Io(),value:[String,Number]}}function Bo(){return{...Io(),value:[String,Number]}}function jo(){return{...Io(),value:[String,Number]}}function Vo(){return{...Io(),value:[String,Number]}}function ko(){return{...Io(),value:[String,Number,Array]}}function Mo(){return{...Io(),value:[String,Number]}}function Uo(){return{...Io(),value:[String,Number]}}function _o(){return{...Io(),value:[String,Number]}}function Fo(){return{...Io(),value:String}}function qo(){return{...Io(),value:[String,Number]}}function Go(){return{...Io(),value:String,language:{type:String},theme:{type:String}}}function Wo(){return{...Io(),value:String}}function $o(){return{...Io(),data:{type:Object,required:!1},controller:{type:Object,required:!1},disabled:{type:Boolean,required:!1}}}function Ko(){return{...Io(),value:[Array,Array]}}function Ho(){return{...Io(),value:String}}function Qo(){return{...Io(),value:String}}function Xo(){return{...Io(),value:String}}function Yo(){return{...Io(),value:Number}}function Jo(){return{...Io(),value:String}}t("RequiredProp",Co);t("en",{vue3Util:{common:{undefined:"undefined",onFoundCorrespondingPart:"Undefined adapter with no corresponding part found",noFoundViewModel:"View model not found",noSupportLoadingDynamic:"{codeName}No entity, do not support loading dynamic models at this time"},control:{unsupportedPanel:"Unsupported panel items: {id} - {itemType}"},panelComponent:{noConfiguardDataObject:"No data object name config",noSupportedDataSourceType:"The data source type {dataSourceType} is not supported",noConfiguredEntityLogic:"No entity logic config",noConfiguredEntity:"No entity config",noReturnValue:"The entity logic {appDELogicId} has no return value",noAttribute:"There is no {dataName} attribute in the global variable.",noConfiguredScript:"No javaScript config",noConfiguerdEntityBehanior:"No entity behavior config",sessionView:"The session to which the view is bound does not exist {dataName}",viewStateAttribute:"There is no {dataName} attribute in the view state",noImplementMethod:"Method not implemented.",noProvidedSlot:"No {id} slot provided",cannotEmpty:"{caption} cannot be empty",unadaptedLayout:"Unadapted layout placeholder {layoutPos}",placeholderIdentifier:"The placeholder identifier for panel member {id} of view {viewCodeName} is:",refresh:"Refresh",wxQrcodeCaption:"Please use wechat to scan the QR code to log in"},plugin:{failureConfigurationLoad:"Configuration load failure",failedRemotePluginLoad:"Remote Plugin failed to load, Remote Plugin did not find [default] Default Export",fileContentFormat:"Remote plugin failed to load, file not found or file content format is incorrect"},use:{control:{parameterChanges:"Context or view parameter changes for {id}:",stateChange:"Part [{name}] state change"},focusBlur:{noFocus:"No focus, no out-of-focus triggering"},view:{stateChange:"View [{name}] state change"}},util:{noInjected:"The createVueApp method is not injected.",convertString:"Failed to convert to string",viewIdentifiers:"View identifiers do not exist for {depth} level routes",noFoundView:"View not found {viewCodeName}",routeCorrectly:"Cannot get the route correctly, could be a dependency issue."},view:{redirectionProgress:"Redirection in progress",viewType:"View type {viewType} is not supported yet.",noTeleportTag:"No teleportTag was found for part {name}.",embeddedRedirectionView:"Embedded redirection view does not support url jumping",insufficientRedirection:"Insufficient redirection parameters to jump",toDoList:"To-Do List Redirection"}}}),t("zhCn",{vue3Util:{common:{undefined:"未定义",onFoundCorrespondingPart:"未定义未找到对应部件的适配器",noFoundViewModel:"未找到视图模型",noSupportLoadingDynamic:"{codeName}无实体,暂不支持加载动态模型"},control:{unsupportedPanel:"暂未支持的面板项: {id} - {itemType}"},panelComponent:{noConfiguardDataObject:"没有配置数据对象名称",noSupportedDataSourceType:"数据源类型{dataSourceType}暂未支持",noConfiguredEntityLogic:"没有配置实体逻辑",noConfiguredEntity:"没有配置实体",noReturnValue:"实体逻辑{appDELogicId}没有返回值",noAttribute:"全局变量里没有{dataName}属性",noConfiguredScript:"没有配置脚本代码",noConfiguerdEntityBehanior:"没有配置实体行为",sessionView:"绑定视图的会话不存在{dataName}",viewStateAttribute:"视图state里没有{dataName}属性",noImplementMethod:"未执行的方法",noProvidedSlot:"未提供{id}插槽",cannotEmpty:"{caption} 不能为空",unadaptedLayout:"未适配的布局占位{layoutPos}",placeholderIdentifier:"视图{viewCodeName}的面板成员{id}的占位标识是:",refresh:"刷新",wxQrcodeCaption:"请使用微信扫描二维码登录"},plugin:{failureConfigurationLoad:"配置加载失败",failedRemotePluginLoad:"远程插件加载失败, 远程插件未找到[default]默认导出",fileContentFormat:"远程插件加载失败, 未找到文件或文件内容格式不正确"},use:{control:{parameterChanges:"{id}的上下文或视图参数变更:",stateChange:"部件 [{name}] state 变更"},focusBlur:{noFocus:"没有聚焦,不触发失焦"},view:{stateChange:"视图 [{name}] state 变更"}},util:{noInjected:"没有注入createVueApp方法",convertString:"转换成字符串失败",viewIdentifiers:"第{depth}级路由不存在视图标识",noFoundView:"找不到视图{viewCodeName}",routeCorrectly:"无法正确获取route,可能是依赖问题"},view:{redirectionProgress:"重定向跳转中",viewType:"视图类型{viewType}暂未支持",noTeleportTag:"没有找到部件{name}的teleportTag",embeddedRedirectionView:"嵌入重定向视图不支持url跳转",insufficientRedirection:"重定向参数不足无法跳转",toDoList:"待办列表重定向"}}})}}}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-badge{display:inline-
|
|
1
|
+
.ibiz-badge{--ibiz-badge-bg-color:var(--ibiz-color-danger);--ibiz-badge-height:18px;--ibiz-badge-border-radius:10px;display:inline-flex;align-items:center;justify-content:center;width:auto;height:var(--ibiz-badge-height);padding:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-small);line-height:normal;color:var(--ibiz-color-danger-text);white-space:nowrap;background-color:var(--ibiz-badge-bg-color);border:1px solid transparent;border-radius:var(--ibiz-badge-border-radius)}.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)}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IViewProvider, RedrawViewEvent, CTX } from '@ibiz-template/runtime';
|
|
1
|
+
import { IViewProvider, RedrawViewEvent, CTX, EventBase, IViewShellHooks } from '@ibiz-template/runtime';
|
|
2
2
|
import { PropType, Ref } from 'vue';
|
|
3
3
|
import { IAppView } from '@ibiz/model-core';
|
|
4
4
|
import './view-shell.scss';
|
|
@@ -19,6 +19,9 @@ export declare const IBizViewShell: import("vue").DefineComponent<{
|
|
|
19
19
|
ctx: {
|
|
20
20
|
type: PropType<CTX<import("@ibiz-template/runtime").IViewController<IAppView, import("@ibiz-template/runtime").IViewState, import("@ibiz-template/runtime").IViewEvent>>>;
|
|
21
21
|
};
|
|
22
|
+
viewShellHooks: {
|
|
23
|
+
type: PropType<IViewShellHooks>;
|
|
24
|
+
};
|
|
22
25
|
}, {
|
|
23
26
|
ns: import("@ibiz-template/core").Namespace;
|
|
24
27
|
errMsg: Ref<string>;
|
|
@@ -27,6 +30,7 @@ export declare const IBizViewShell: import("vue").DefineComponent<{
|
|
|
27
30
|
hasAuthority: Ref<boolean>;
|
|
28
31
|
viewModelData: Ref<IAppView | undefined>;
|
|
29
32
|
redrawView: (event: RedrawViewEvent) => Promise<void>;
|
|
33
|
+
onCreated: (event: EventBase) => void;
|
|
30
34
|
curContext: Ref<import("@ibiz-template/core").IApiContext>;
|
|
31
35
|
curParams: Ref<import("@ibiz-template/core").IApiParams>;
|
|
32
36
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
@@ -46,5 +50,8 @@ export declare const IBizViewShell: import("vue").DefineComponent<{
|
|
|
46
50
|
ctx: {
|
|
47
51
|
type: PropType<CTX<import("@ibiz-template/runtime").IViewController<IAppView, import("@ibiz-template/runtime").IViewState, import("@ibiz-template/runtime").IViewEvent>>>;
|
|
48
52
|
};
|
|
53
|
+
viewShellHooks: {
|
|
54
|
+
type: PropType<IViewShellHooks>;
|
|
55
|
+
};
|
|
49
56
|
}>>, {}, {}>;
|
|
50
57
|
//# sourceMappingURL=view-shell.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-shell.d.ts","sourceRoot":"","sources":["../../../src/common/view-shell/view-shell.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,aAAa,EAGb,eAAe,EAEf,GAAG,
|
|
1
|
+
{"version":3,"file":"view-shell.d.ts","sourceRoot":"","sources":["../../../src/common/view-shell/view-shell.tsx"],"names":[],"mappings":"AAKA,OAAO,EAEL,aAAa,EAGb,eAAe,EAEf,GAAG,EACH,SAAS,EACT,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAGL,QAAQ,EAER,GAAG,EAIJ,MAAM,KAAK,CAAC;AACb,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAK5C,OAAO,mBAAmB,CAAC;AAE3B,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;wBAsNW,eAAe,KAAG,QAAQ,IAAI,CAAC;uBAwBtC,SAAS,KAAG,IAAI;;;;;;;;;;;;;;;;;;;;;;;YAmD5C,CAAC"}
|
|
@@ -27,6 +27,9 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
27
27
|
// 解决打开浮动容器(模态、抽屉、弹出框)ctx丢失问题
|
|
28
28
|
ctx: {
|
|
29
29
|
type: Object
|
|
30
|
+
},
|
|
31
|
+
viewShellHooks: {
|
|
32
|
+
type: Object
|
|
30
33
|
}
|
|
31
34
|
},
|
|
32
35
|
setup(props, {
|
|
@@ -131,7 +134,7 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
131
134
|
const noSrfSessionId = isNil(context.value.srfsessionid) || isEmpty(context.value.srfsessionid);
|
|
132
135
|
const id = createUUID();
|
|
133
136
|
if (noSrfSessionId) {
|
|
134
|
-
const domain = ibiz.uiDomainManager.create(id);
|
|
137
|
+
const domain = ibiz.uiDomainManager.create(id, appDataEntityId);
|
|
135
138
|
context.value.srfsessionid = domain.id;
|
|
136
139
|
}
|
|
137
140
|
const app = ibiz.hub.getApp(viewModel.appId);
|
|
@@ -208,6 +211,11 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
208
211
|
});
|
|
209
212
|
}
|
|
210
213
|
};
|
|
214
|
+
const onCreated = (event) => {
|
|
215
|
+
if (props.viewShellHooks) {
|
|
216
|
+
props.viewShellHooks.hooks.viewCreated.call(event);
|
|
217
|
+
}
|
|
218
|
+
};
|
|
211
219
|
return {
|
|
212
220
|
ns,
|
|
213
221
|
errMsg,
|
|
@@ -216,6 +224,7 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
216
224
|
hasAuthority,
|
|
217
225
|
viewModelData,
|
|
218
226
|
redrawView,
|
|
227
|
+
onCreated,
|
|
219
228
|
curContext: context,
|
|
220
229
|
curParams: params
|
|
221
230
|
};
|
|
@@ -228,7 +237,8 @@ const IBizViewShell = /* @__PURE__ */ defineComponent({
|
|
|
228
237
|
modelData: clone(this.viewModelData),
|
|
229
238
|
...this.$attrs,
|
|
230
239
|
provider: this.provider,
|
|
231
|
-
onRedrawView: this.redrawView
|
|
240
|
+
onRedrawView: this.redrawView,
|
|
241
|
+
onCreated: this.onCreated
|
|
232
242
|
}, this.$slots);
|
|
233
243
|
}
|
|
234
244
|
if (!this.hasAuthority) {
|
|
@@ -57,7 +57,7 @@ export declare const ViewLayoutPanelControl: import("vue").DefineComponent<{
|
|
|
57
57
|
panelItems: {
|
|
58
58
|
[key: string]: IPanelItemController;
|
|
59
59
|
};
|
|
60
|
-
}
|
|
60
|
+
}) => VNode | null;
|
|
61
61
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
62
62
|
/**
|
|
63
63
|
* @description 视图布局面板模型
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-layout-panel.d.ts","sourceRoot":"","sources":["../../../../src/control/panel/view-layout-panel/view-layout-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EAGR,KAAK,EAKN,MAAM,KAAK,CAAC;AACb,OAAO,EAGL,UAAU,EAEV,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,0BAA0B,CAAC;AAClC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAIlB,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AA0BhC;;GAEG;AACH,eAAO,MAAM,sBAAsB;IAG/B;;OAEG;;;;;IAKH;;OAEG;;;;;IAEH;;;OAGG;;;;;IAEH;;;OAGG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;;;;;;iCAuCU,UAAU
|
|
1
|
+
{"version":3,"file":"view-layout-panel.d.ts","sourceRoot":"","sources":["../../../../src/control/panel/view-layout-panel/view-layout-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,QAAQ,EAGR,KAAK,EAKN,MAAM,KAAK,CAAC;AACb,OAAO,EAGL,UAAU,EAEV,gBAAgB,EACjB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,0BAA0B,CAAC;AAClC,OAAO,EACL,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAIlB,yBAAyB,EAC1B,MAAM,wBAAwB,CAAC;AA0BhC;;GAEG;AACH,eAAO,MAAM,sBAAsB;IAG/B;;OAEG;;;;;IAKH;;OAEG;;;;;IAEH;;;OAGG;;;;;IAEH;;;OAGG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;;;;;;iCAuCU,UAAU,YACX;QACR,SAAS,EAAE;YACT,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAC;SACnC,CAAC;QACF,UAAU,EAAE;YACV,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAC;SACrC,CAAC;KACH,KACA,KAAK,GAAG,IAAI;;IA3Ef;;OAEG;;;;;IAKH;;OAEG;;;;;IAEH;;;OAGG;;;;;IAEH;;;OAGG;;;;IAEH;;OAEG;;;;IAEH;;OAEG;;;;;;MAgLL,CAAC"}
|
|
@@ -33,7 +33,7 @@ export declare const MultiDataContainer: import("vue").DefineComponent<{
|
|
|
33
33
|
panelItems: {
|
|
34
34
|
[key: string]: IPanelItemController;
|
|
35
35
|
};
|
|
36
|
-
}
|
|
36
|
+
}) => VNode | null;
|
|
37
37
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
38
38
|
/**
|
|
39
39
|
* @description 多项数据容器模型
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-data-container.d.ts","sourceRoot":"","sources":["../../../src/panel-component/multi-data-container/multi-data-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAIL,QAAQ,EAER,KAAK,EAEN,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,6BAA6B,CAAC;AAErC;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;IAG3B;;OAEG;;;;;IAKH;;OAEG;;;;;;;;iCA8BY,UAAU
|
|
1
|
+
{"version":3,"file":"multi-data-container.d.ts","sourceRoot":"","sources":["../../../src/panel-component/multi-data-container/multi-data-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAIL,QAAQ,EAER,KAAK,EAEN,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AACjF,OAAO,6BAA6B,CAAC;AAErC;;;;GAIG;AACH,eAAO,MAAM,kBAAkB;IAG3B;;OAEG;;;;;IAKH;;OAEG;;;;;;;;iCA8BY,UAAU,YACX;QACR,SAAS,EAAE;YACT,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAC;SACnC,CAAC;QACF,UAAU,EAAE;YACV,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAC;SACrC,CAAC;KACH,KACE,KAAK,GAAG,IAAI;;IAhDnB;;OAEG;;;;;IAKH;;OAEG;;;;;YAoFL,CAAC"}
|
|
@@ -33,7 +33,7 @@ export declare const MultiDataContainerRaw: import("vue").DefineComponent<{
|
|
|
33
33
|
panelItems: {
|
|
34
34
|
[key: string]: IPanelItemController;
|
|
35
35
|
};
|
|
36
|
-
}
|
|
36
|
+
}) => VNode | null;
|
|
37
37
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
38
38
|
/**
|
|
39
39
|
* @description 多项数据容器(仅数据)模型
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-data-container-raw.d.ts","sourceRoot":"","sources":["../../../src/panel-component/multi-data-container-raw/multi-data-container-raw.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAIL,QAAQ,EAER,KAAK,EAEN,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AACxF,OAAO,iCAAiC,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB;IAG9B;;OAEG;;;;;IAKH;;OAEG;;;;;;;;iCA0BY,UAAU
|
|
1
|
+
{"version":3,"file":"multi-data-container-raw.d.ts","sourceRoot":"","sources":["../../../src/panel-component/multi-data-container-raw/multi-data-container-raw.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAIL,QAAQ,EAER,KAAK,EAEN,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,+BAA+B,EAAE,MAAM,uCAAuC,CAAC;AACxF,OAAO,iCAAiC,CAAC;AAEzC;;;;GAIG;AACH,eAAO,MAAM,qBAAqB;IAG9B;;OAEG;;;;;IAKH;;OAEG;;;;;;;;iCA0BY,UAAU,YACX;QACR,SAAS,EAAE;YACT,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAC;SACnC,CAAC;QACF,UAAU,EAAE;YACV,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAC;SACrC,CAAC;KACH,KACE,KAAK,GAAG,IAAI;;IA5CnB;;OAEG;;;;;IAKH;;OAEG;;;;;YA6EL,CAAC"}
|
|
@@ -35,7 +35,7 @@ export declare const SingleDataContainer: import("vue").DefineComponent<{
|
|
|
35
35
|
panelItems: {
|
|
36
36
|
[key: string]: IPanelItemController;
|
|
37
37
|
};
|
|
38
|
-
}
|
|
38
|
+
}) => VNode | null;
|
|
39
39
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
40
40
|
/**
|
|
41
41
|
* @description 单项数据容器模型
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"single-data-container.d.ts","sourceRoot":"","sources":["../../../src/panel-component/single-data-container/single-data-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAIL,QAAQ,EAER,KAAK,EACN,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,8BAA8B,CAAC;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;IAG5B;;OAEG;;;;;IAKH;;OAEG;;;;;;;;iCAoBY,UAAU
|
|
1
|
+
{"version":3,"file":"single-data-container.d.ts","sourceRoot":"","sources":["../../../src/panel-component/single-data-container/single-data-container.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAIL,QAAQ,EAER,KAAK,EACN,MAAM,KAAK,CAAC;AAEb,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,8BAA8B,CAAC;AAEtC;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB;IAG5B;;OAEG;;;;;IAKH;;OAEG;;;;;;;;iCAoBY,UAAU,YACX;QACR,SAAS,EAAE;YACT,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAC;SACnC,CAAC;QACF,UAAU,EAAE;YACV,CAAC,GAAG,EAAE,MAAM,GAAG,oBAAoB,CAAC;SACrC,CAAC;KACH,KACE,KAAK,GAAG,IAAI;;IAtCnB;;OAEG;;;;;IAKH;;OAEG;;;;;YAuEL,CAAC"}
|
package/es/util/install.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/util/install.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAEvC,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAE5C,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../src/util/install.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAEvC,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AAE5C,eAAO,MAAM,WAAW,YAChB,CAAC,WACE,CAAC,EAAE,EAAE,GAAG,KAAK,IAAI,KACzB,gBAAgB,CAAC,CAKnB,CAAC"}
|
|
@@ -9,7 +9,7 @@ import { App, Component, VNode } from 'vue';
|
|
|
9
9
|
* @export
|
|
10
10
|
* @class OverlayContainer
|
|
11
11
|
*/
|
|
12
|
-
export declare class OverlayContainer<O> implements IOverlayContainer {
|
|
12
|
+
export declare class OverlayContainer<O extends IData = IData> implements IOverlayContainer {
|
|
13
13
|
protected component: unknown;
|
|
14
14
|
protected render: (...args: any[]) => VNode;
|
|
15
15
|
protected opts?: O | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay-container.d.ts","sourceRoot":"","sources":["../../../src/util/overlay-container/overlay-container.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,SAAS,EAAK,KAAK,EAAE,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"overlay-container.d.ts","sourceRoot":"","sources":["../../../src/util/overlay-container/overlay-container.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,SAAS,EAAK,KAAK,EAAE,MAAM,KAAK,CAAC;AAI/C;;;;;;;GAOG;AACH,qBAAa,gBAAgB,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,CACnD,YAAW,iBAAiB;IA2C1B,SAAS,CAAC,SAAS,EAAE,OAAO;IAC5B,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK;IAC3C,SAAS,CAAC,IAAI,CAAC;IA3CjB,SAAS,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC;IAEnB;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC;IAErB;;;;;;;OAOG;IACH,SAAS,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAE3B;;;;;;OAMG;IACH,SAAS,CAAC,GAAG,EAAE,OAAO,CAAC;QAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAC,CAAiB;IAE9E;;;;;;;;OAQG;gBAES,SAAS,EAAE,OAAO,EAClB,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,KAAK,EACjC,IAAI,CAAC,eAAG;IAKpB,MAAM,CAAC,YAAY,CACjB,cAAc,EAAE,SAAS,EACzB,UAAU,CAAC,EAAE,KAAK,GACjB,GAAG,CAAC,OAAO,CAAC;IAIf;;;;;;;OAOG;IACH,SAAS,CAAC,IAAI,IAAI,IAAI;IAsCtB;;;;;;;OAOG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAI9B;;;;;;;OAOG;IACG,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C;;;;;;;OAOG;IACG,aAAa,CAAC,CAAC,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC;CAS/C"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { QXEvent } from 'qx-util';
|
|
2
2
|
import { h } from 'vue';
|
|
3
3
|
import { RuntimeError } from '@ibiz-template/core';
|
|
4
|
+
import { isElement } from 'lodash-es';
|
|
4
5
|
|
|
5
6
|
"use strict";
|
|
6
7
|
class OverlayContainer {
|
|
@@ -42,13 +43,17 @@ class OverlayContainer {
|
|
|
42
43
|
const self = this;
|
|
43
44
|
const { render, opts } = this;
|
|
44
45
|
const container = document.createElement("div");
|
|
45
|
-
document.body
|
|
46
|
+
let appendTo = document.body;
|
|
47
|
+
if (isElement(opts == null ? void 0 : opts.appendTo)) {
|
|
48
|
+
appendTo = opts == null ? void 0 : opts.appendTo;
|
|
49
|
+
}
|
|
50
|
+
appendTo.appendChild(container);
|
|
46
51
|
const vm = OverlayContainer.createVueApp({
|
|
47
52
|
mounted() {
|
|
48
53
|
self.modal = this.$refs.root;
|
|
49
54
|
},
|
|
50
55
|
unmounted() {
|
|
51
|
-
|
|
56
|
+
appendTo.removeChild(container);
|
|
52
57
|
self.evt.emit("dismiss", self.result);
|
|
53
58
|
},
|
|
54
59
|
render() {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { IDrawerOptions, IFloatWindowOptions, IModal, IModalData, IModalOptions, IPopoverOptions } from '@ibiz-template/runtime';
|
|
1
|
+
import { IDrawerOptions, IFloatWindowOptions, IModal, IModalData, IModalOptions, IPopoverOptions, IViewShellHooks } from '@ibiz-template/runtime';
|
|
2
2
|
import { VNode } from 'vue';
|
|
3
|
-
export declare function createOverlayView(props?: IParams): (modal: IModal) => VNode;
|
|
3
|
+
export declare function createOverlayView(props?: IParams): (modal: IModal, viewShellHooks?: IViewShellHooks) => VNode;
|
|
4
4
|
export declare function openViewModal(props?: IParams, opts?: IModalOptions): Promise<IModalData>;
|
|
5
5
|
export declare function openViewFloatWindow(props?: IParams, opts?: IFloatWindowOptions): Promise<IModalData>;
|
|
6
6
|
export declare function openViewDrawer(props?: IParams, opts?: IDrawerOptions): Promise<IModalData>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay-view-util.d.ts","sourceRoot":"","sources":["../../../src/util/overlay-view-util/overlay-view-util.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,MAAM,EACN,UAAU,EACV,aAAa,EACb,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAuB,KAAK,EAAE,MAAM,KAAK,CAAC;AAEjD,wBAAgB,iBAAiB,
|
|
1
|
+
{"version":3,"file":"overlay-view-util.d.ts","sourceRoot":"","sources":["../../../src/util/overlay-view-util/overlay-view-util.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,mBAAmB,EACnB,MAAM,EACN,UAAU,EACV,aAAa,EACb,eAAe,EACf,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAuB,KAAK,EAAE,MAAM,KAAK,CAAC;AAEjD,wBAAgB,iBAAiB,CAC/B,KAAK,CAAC,EAAE,OAAO,GACd,CAAC,KAAK,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,eAAe,KAAK,KAAK,CAS5D;AAED,wBAAsB,aAAa,CACjC,KAAK,CAAC,EAAE,OAAO,EACf,IAAI,CAAC,EAAE,aAAa,GACnB,OAAO,CAAC,UAAU,CAAC,CASrB;AAED,wBAAsB,mBAAmB,CACvC,KAAK,CAAC,EAAE,OAAO,EACf,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,UAAU,CAAC,CASrB;AAED,wBAAsB,cAAc,CAClC,KAAK,CAAC,EAAE,OAAO,EACf,IAAI,CAAC,EAAE,cAAc,GACpB,OAAO,CAAC,UAAU,CAAC,CASrB;AAED,wBAAsB,eAAe,CACnC,KAAK,EAAE,UAAU,EACjB,KAAK,CAAC,EAAE,OAAO,EACf,IAAI,CAAC,EAAE,eAAe,GACrB,OAAO,CAAC,UAAU,CAAC,CASrB;AASD,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,GACf,cAAc,CAAC,WAAW,CAAC,CAE7B"}
|
|
@@ -2,10 +2,11 @@ import { resolveComponent, h } from 'vue';
|
|
|
2
2
|
|
|
3
3
|
"use strict";
|
|
4
4
|
function createOverlayView(props) {
|
|
5
|
-
return (modal) => {
|
|
5
|
+
return (modal, viewShellHooks) => {
|
|
6
6
|
const viewShell = resolveComponent("IBizViewShell");
|
|
7
7
|
return h(viewShell, {
|
|
8
8
|
...props,
|
|
9
|
+
viewShellHooks,
|
|
9
10
|
modal
|
|
10
11
|
});
|
|
11
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/util/route/route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,IAAI,KAAK,EAAY,MAAM,YAAY,CAAC;AAE9E,OAAO,EAGL,WAAW,EAGZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7E;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,EACZ,YAAY,GAAE,OAAe,GAC5B,UAAU,CAsEZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAuD9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAiC7D;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,EAYpC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,QAAQ,EACjB,eAAe,CAAC,EAAE,MAAM,EACxB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/util/route/route.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,6BAA6B,IAAI,KAAK,EAAY,MAAM,YAAY,CAAC;AAE9E,OAAO,EAGL,WAAW,EAGZ,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,UAAU,EAAkB,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE7E;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,KAAK,EACZ,YAAY,GAAE,OAAe,GAC5B,UAAU,CAsEZ;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,UAAU,GAAG,MAAM,CAuD9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAiC7D;AA+BD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,EAYpC,CAAC;AAEF;;;;;;;;;GASG;AACH,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,QAAQ,EACjB,eAAe,CAAC,EAAE,MAAM,EACxB,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA2Bf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA4E3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,WAAW,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,QAAQ,EACjB,MAAM,CAAC,EAAE,OAAO,GACf,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAkC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,cAAc,CAAC,CAoEzB;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,OAAc,GACvB,MAAM,CA4BR;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,QAAQ,EAAE,CAAC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,EAClE,KAAK,EAAE,MAAM,GACZ,IAAI,CAcN"}
|
package/es/util/route/route.mjs
CHANGED
|
@@ -179,6 +179,7 @@ async function calcResRoutePath(routePath, context, appDataEntityId, appId) {
|
|
|
179
179
|
}
|
|
180
180
|
}
|
|
181
181
|
async function generateRoutePath(appView, route, context, params) {
|
|
182
|
+
var _a;
|
|
182
183
|
const routePath = route2routePath(route);
|
|
183
184
|
let depth = context.srfdefaulttoroutedepth || 2;
|
|
184
185
|
if (context.toRouteDepth) {
|
|
@@ -191,6 +192,10 @@ async function generateRoutePath(appView, route, context, params) {
|
|
|
191
192
|
};
|
|
192
193
|
}
|
|
193
194
|
}
|
|
195
|
+
let srfmenuitem = params == null ? void 0 : params.srfmenuitem;
|
|
196
|
+
if (!srfmenuitem && routePath.pathNodes.length > 1) {
|
|
197
|
+
srfmenuitem = (_a = routePath.pathNodes[1].params) == null ? void 0 : _a.srfmenuitem;
|
|
198
|
+
}
|
|
194
199
|
routePath.pathNodes.splice(depth - 1, routePath.pathNodes.length - depth + 1);
|
|
195
200
|
if (context.currentSrfNav) {
|
|
196
201
|
const currentNode = routePath.pathNodes[routePath.pathNodes.length - 1];
|
|
@@ -224,6 +229,10 @@ async function generateRoutePath(appView, route, context, params) {
|
|
|
224
229
|
delete routePath.pathNodes[0].context[deName];
|
|
225
230
|
}
|
|
226
231
|
}
|
|
232
|
+
if (srfmenuitem && routePath.pathNodes.length > 1) {
|
|
233
|
+
const tempParams = routePath.pathNodes[1].params || {};
|
|
234
|
+
routePath.pathNodes[1].params = { ...tempParams, srfmenuitem };
|
|
235
|
+
}
|
|
227
236
|
return { path: routePath2string(routePath) };
|
|
228
237
|
}
|
|
229
238
|
async function generateRoutePathByModal(appView, route, context, params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.ibiz-badge{display:inline-
|
|
1
|
+
.ibiz-badge{--ibiz-badge-bg-color:var(--ibiz-color-danger);--ibiz-badge-height:18px;--ibiz-badge-border-radius:10px;display:inline-flex;align-items:center;justify-content:center;width:auto;height:var(--ibiz-badge-height);padding:var(--ibiz-spacing-extra-tight);font-size:var(--ibiz-font-size-small);line-height:normal;color:var(--ibiz-color-danger-text);white-space:nowrap;background-color:var(--ibiz-badge-bg-color);border:1px solid transparent;border-radius:var(--ibiz-badge-border-radius)}.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)}
|
|
@@ -29,6 +29,9 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
29
29
|
// 解决打开浮动容器(模态、抽屉、弹出框)ctx丢失问题
|
|
30
30
|
ctx: {
|
|
31
31
|
type: Object
|
|
32
|
+
},
|
|
33
|
+
viewShellHooks: {
|
|
34
|
+
type: Object
|
|
32
35
|
}
|
|
33
36
|
},
|
|
34
37
|
setup(props, {
|
|
@@ -133,7 +136,7 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
133
136
|
const noSrfSessionId = ramda.isNil(context.value.srfsessionid) || ramda.isEmpty(context.value.srfsessionid);
|
|
134
137
|
const id = qxUtil.createUUID();
|
|
135
138
|
if (noSrfSessionId) {
|
|
136
|
-
const domain = ibiz.uiDomainManager.create(id);
|
|
139
|
+
const domain = ibiz.uiDomainManager.create(id, appDataEntityId);
|
|
137
140
|
context.value.srfsessionid = domain.id;
|
|
138
141
|
}
|
|
139
142
|
const app = ibiz.hub.getApp(viewModel.appId);
|
|
@@ -210,6 +213,11 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
210
213
|
});
|
|
211
214
|
}
|
|
212
215
|
};
|
|
216
|
+
const onCreated = (event) => {
|
|
217
|
+
if (props.viewShellHooks) {
|
|
218
|
+
props.viewShellHooks.hooks.viewCreated.call(event);
|
|
219
|
+
}
|
|
220
|
+
};
|
|
213
221
|
return {
|
|
214
222
|
ns,
|
|
215
223
|
errMsg,
|
|
@@ -218,6 +226,7 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
218
226
|
hasAuthority,
|
|
219
227
|
viewModelData,
|
|
220
228
|
redrawView,
|
|
229
|
+
onCreated,
|
|
221
230
|
curContext: context,
|
|
222
231
|
curParams: params
|
|
223
232
|
};
|
|
@@ -230,7 +239,8 @@ const IBizViewShell = /* @__PURE__ */ vue.defineComponent({
|
|
|
230
239
|
modelData: ramda.clone(this.viewModelData),
|
|
231
240
|
...this.$attrs,
|
|
232
241
|
provider: this.provider,
|
|
233
|
-
onRedrawView: this.redrawView
|
|
242
|
+
onRedrawView: this.redrawView,
|
|
243
|
+
onCreated: this.onCreated
|
|
234
244
|
}, this.$slots);
|
|
235
245
|
}
|
|
236
246
|
if (!this.hasAuthority) {
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var qxUtil = require('qx-util');
|
|
4
4
|
var vue = require('vue');
|
|
5
5
|
var core = require('@ibiz-template/core');
|
|
6
|
+
var lodashEs = require('lodash-es');
|
|
6
7
|
|
|
7
8
|
"use strict";
|
|
8
9
|
class OverlayContainer {
|
|
@@ -44,13 +45,17 @@ class OverlayContainer {
|
|
|
44
45
|
const self = this;
|
|
45
46
|
const { render, opts } = this;
|
|
46
47
|
const container = document.createElement("div");
|
|
47
|
-
document.body
|
|
48
|
+
let appendTo = document.body;
|
|
49
|
+
if (lodashEs.isElement(opts == null ? void 0 : opts.appendTo)) {
|
|
50
|
+
appendTo = opts == null ? void 0 : opts.appendTo;
|
|
51
|
+
}
|
|
52
|
+
appendTo.appendChild(container);
|
|
48
53
|
const vm = OverlayContainer.createVueApp({
|
|
49
54
|
mounted() {
|
|
50
55
|
self.modal = this.$refs.root;
|
|
51
56
|
},
|
|
52
57
|
unmounted() {
|
|
53
|
-
|
|
58
|
+
appendTo.removeChild(container);
|
|
54
59
|
self.evt.emit("dismiss", self.result);
|
|
55
60
|
},
|
|
56
61
|
render() {
|
|
@@ -4,10 +4,11 @@ var vue = require('vue');
|
|
|
4
4
|
|
|
5
5
|
"use strict";
|
|
6
6
|
function createOverlayView(props) {
|
|
7
|
-
return (modal) => {
|
|
7
|
+
return (modal, viewShellHooks) => {
|
|
8
8
|
const viewShell = vue.resolveComponent("IBizViewShell");
|
|
9
9
|
return vue.h(viewShell, {
|
|
10
10
|
...props,
|
|
11
|
+
viewShellHooks,
|
|
11
12
|
modal
|
|
12
13
|
});
|
|
13
14
|
};
|
package/lib/util/route/route.cjs
CHANGED
|
@@ -181,6 +181,7 @@ async function calcResRoutePath(routePath, context, appDataEntityId, appId) {
|
|
|
181
181
|
}
|
|
182
182
|
}
|
|
183
183
|
async function generateRoutePath(appView, route, context, params) {
|
|
184
|
+
var _a;
|
|
184
185
|
const routePath = route2routePath(route);
|
|
185
186
|
let depth = context.srfdefaulttoroutedepth || 2;
|
|
186
187
|
if (context.toRouteDepth) {
|
|
@@ -193,6 +194,10 @@ async function generateRoutePath(appView, route, context, params) {
|
|
|
193
194
|
};
|
|
194
195
|
}
|
|
195
196
|
}
|
|
197
|
+
let srfmenuitem = params == null ? void 0 : params.srfmenuitem;
|
|
198
|
+
if (!srfmenuitem && routePath.pathNodes.length > 1) {
|
|
199
|
+
srfmenuitem = (_a = routePath.pathNodes[1].params) == null ? void 0 : _a.srfmenuitem;
|
|
200
|
+
}
|
|
196
201
|
routePath.pathNodes.splice(depth - 1, routePath.pathNodes.length - depth + 1);
|
|
197
202
|
if (context.currentSrfNav) {
|
|
198
203
|
const currentNode = routePath.pathNodes[routePath.pathNodes.length - 1];
|
|
@@ -226,6 +231,10 @@ async function generateRoutePath(appView, route, context, params) {
|
|
|
226
231
|
delete routePath.pathNodes[0].context[deName];
|
|
227
232
|
}
|
|
228
233
|
}
|
|
234
|
+
if (srfmenuitem && routePath.pathNodes.length > 1) {
|
|
235
|
+
const tempParams = routePath.pathNodes[1].params || {};
|
|
236
|
+
routePath.pathNodes[1].params = { ...tempParams, srfmenuitem };
|
|
237
|
+
}
|
|
229
238
|
return { path: routePath2string(routePath) };
|
|
230
239
|
}
|
|
231
240
|
async function generateRoutePathByModal(appView, route, context, params) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/vue3-util",
|
|
3
|
-
"version": "0.7.41-alpha.
|
|
3
|
+
"version": "0.7.41-alpha.19",
|
|
4
4
|
"description": "通用组件库(vue3)",
|
|
5
5
|
"main": "lib/index.cjs",
|
|
6
6
|
"types": "es/index.d.ts",
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"license": "MIT",
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@ibiz-template/cli": "^0.3.23",
|
|
40
|
-
"@ibiz-template/core": "^0.7.41-alpha.
|
|
41
|
-
"@ibiz-template/runtime": "^0.7.41-alpha.
|
|
40
|
+
"@ibiz-template/core": "^0.7.41-alpha.18",
|
|
41
|
+
"@ibiz-template/runtime": "^0.7.41-alpha.19",
|
|
42
42
|
"@ibiz-template/theme": "^0.7.39",
|
|
43
43
|
"@ibiz/model-core": "^0.1.79",
|
|
44
44
|
"@types/path-browserify": "^1.0.2",
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
"vue": "^3.3.8",
|
|
68
68
|
"vue-router": "^4.2.4"
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "9ba5057b454bfffcc001d2cf659bc63073277f21"
|
|
71
71
|
}
|