@ibiz-template/vue3-components 0.1.12-dev.0 → 0.1.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/dist/index.min.css +1 -1
  2. package/dist/index.system.min.js +3 -3
  3. package/dist/index.system.min.js.map +1 -1
  4. package/dist/wang-editor-0c05cd5f.js +2 -0
  5. package/dist/wang-editor-0c05cd5f.js.map +1 -0
  6. package/es/common/action-toolbar/action-toolbar.mjs +1 -1
  7. package/es/common/no-data/no-data.mjs +1 -1
  8. package/es/common/rawitem/rawitem.css +1 -1
  9. package/es/common/split/split.css +1 -1
  10. package/es/control/app-menu/app-menu.css +1 -1
  11. package/es/control/app-menu/app-menu.mjs +1 -1
  12. package/es/control/app-menu-icon-view/app-menu-icon-view.mjs +1 -1
  13. package/es/control/calendar/calendar.mjs +1 -1
  14. package/es/control/dashboard/portlet/container-portlet/container-portlet.css +1 -0
  15. package/es/control/dashboard/portlet/container-portlet/container-portlet.d.ts +1 -0
  16. package/es/control/dashboard/portlet/container-portlet/container-portlet.mjs +1 -0
  17. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
  18. package/es/control/dashboard/portlet/portlet-layout/portlet-layout.mjs +1 -1
  19. package/es/control/data-view/data-view.css +1 -1
  20. package/es/control/drbar/drbar.controller.mjs +2 -8
  21. package/es/control/drtab/drtab.controller.mjs +2 -8
  22. package/es/control/exp-bar/data-view-exp-bar/data-view-exp-bar.css +1 -1
  23. package/es/control/exp-bar/grid-exp-bar/grid-exp-bar.css +1 -1
  24. package/es/control/exp-bar/list-exp-bar/list-exp-bar.css +1 -1
  25. package/es/control/exp-bar/render-util.mjs +2 -2
  26. package/es/control/exp-bar/tree-exp-bar/tree-exp-bar.css +1 -1
  27. package/es/control/form/form/form.mjs +1 -1
  28. package/es/control/form/form-detail/form-button/form-button.css +1 -1
  29. package/es/control/form/form-detail/form-button/form-button.mjs +6 -5
  30. package/es/control/form/form-detail/form-group-panel/form-group-panel.mjs +1 -1
  31. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.d.ts +72 -0
  32. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.mjs +157 -0
  33. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.d.ts +1 -3
  34. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.mjs +17 -100
  35. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.d.ts +1 -3
  36. package/es/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.mjs +19 -85
  37. package/es/control/form/form-detail/form-mdctrl/index.mjs +2 -0
  38. package/es/control/form/form-detail/form-page/form-page.css +1 -1
  39. package/es/control/form/search-form/search-form.css +1 -1
  40. package/es/control/form/search-form/search-form.mjs +10 -3
  41. package/es/control/grid/grid-column/grid-field-column/grid-field-column.d.ts +2 -0
  42. package/es/control/grid/grid-column/grid-field-column/grid-field-column.mjs +7 -4
  43. package/es/control/grid/grid-column/grid-field-column/index.d.ts +2 -0
  44. package/es/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.mjs +2 -1
  45. package/es/control/panel/view-layout-panel/index.d.ts +10 -0
  46. package/es/control/panel/view-layout-panel/view-layout-panel.d.ts +11 -3
  47. package/es/control/panel/view-layout-panel/view-layout-panel.mjs +48 -42
  48. package/es/control/toolbar/toolbar.mjs +1 -1
  49. package/es/control/tree/tree.css +1 -1
  50. package/es/devtool/devtool-action.css +1 -0
  51. package/es/devtool/devtool-action.d.ts +26 -0
  52. package/es/devtool/devtool-action.mjs +218 -0
  53. package/es/devtool/index.d.ts +50 -0
  54. package/es/devtool/index.mjs +80 -0
  55. package/es/devtool/interface/devtool-event.d.ts +12 -0
  56. package/es/devtool/interface/devtool-event.mjs +1 -0
  57. package/es/devtool/interface/devtool-view.d.ts +15 -0
  58. package/es/devtool/interface/devtool-view.mjs +1 -0
  59. package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +1 -1
  60. package/es/editor/html/wang-editor/wang-editor.mjs +5 -0
  61. package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  62. package/es/editor/text-box/input/input.d.ts +2 -2
  63. package/es/editor/text-box/input/input.mjs +1 -1
  64. package/es/index.d.ts +1 -0
  65. package/es/index.mjs +3 -0
  66. package/es/node_modules/.pnpm/element-plus@2.3.9_vue@3.3.4/node_modules/element-plus/dist/locale/zh-cn.mjs +131 -0
  67. package/es/panel-component/auth-userinfo/auth-userinfo.css +1 -1
  68. package/es/panel-component/auth-userinfo/auth-userinfo.d.ts +3 -0
  69. package/es/panel-component/auth-userinfo/auth-userinfo.mjs +29 -6
  70. package/es/panel-component/auth-userinfo/index.d.ts +3 -0
  71. package/es/panel-component/index.d.ts +1 -0
  72. package/es/panel-component/index.mjs +4 -1
  73. package/es/panel-component/nav-tabs/nav-tabs.css +1 -1
  74. package/es/panel-component/panel-app-header/panel-app-header.css +1 -1
  75. package/es/panel-component/panel-app-title/panel-app-title.css +1 -1
  76. package/es/panel-component/panel-button/panel-button.css +1 -1
  77. package/es/panel-component/panel-button/panel-button.mjs +5 -4
  78. package/es/panel-component/panel-exp-header/panel-exp-header.css +1 -1
  79. package/es/panel-component/panel-index-view-search/index.d.ts +28 -0
  80. package/es/panel-component/panel-index-view-search/index.mjs +17 -0
  81. package/es/panel-component/panel-index-view-search/panel-index-view-search.css +1 -0
  82. package/es/panel-component/panel-index-view-search/panel-index-view-search.d.ts +30 -0
  83. package/es/panel-component/panel-index-view-search/panel-index-view-search.mjs +82 -0
  84. package/es/panel-component/panel-index-view-search/panel-index-view-search.provider.d.ts +13 -0
  85. package/es/panel-component/panel-index-view-search/panel-index-view-search.provider.mjs +20 -0
  86. package/es/panel-component/single-data-container/index.d.ts +10 -0
  87. package/es/panel-component/single-data-container/single-data-container.controller.d.ts +37 -2
  88. package/es/panel-component/single-data-container/single-data-container.controller.mjs +75 -1
  89. package/es/panel-component/single-data-container/single-data-container.d.ts +11 -2
  90. package/es/panel-component/single-data-container/single-data-container.mjs +34 -21
  91. package/es/util/app-drawer/app-drawer-component.css +1 -1
  92. package/es/view/common/index.d.ts +1 -0
  93. package/es/view/common/view.css +1 -1
  94. package/es/view/common/view.d.ts +1 -0
  95. package/es/view/common/view.mjs +13 -1
  96. package/es/view-engine/tab-exp-view.engine.d.ts +1 -0
  97. package/es/view-engine/tab-exp-view.engine.mjs +8 -1
  98. package/lib/common/action-toolbar/action-toolbar.cjs +1 -1
  99. package/lib/common/no-data/no-data.cjs +1 -1
  100. package/lib/common/rawitem/rawitem.css +1 -1
  101. package/lib/common/split/split.css +1 -1
  102. package/lib/control/app-menu/app-menu.cjs +1 -1
  103. package/lib/control/app-menu/app-menu.css +1 -1
  104. package/lib/control/app-menu-icon-view/app-menu-icon-view.cjs +1 -1
  105. package/lib/control/calendar/calendar.cjs +1 -1
  106. package/lib/control/dashboard/portlet/container-portlet/container-portlet.cjs +1 -0
  107. package/lib/control/dashboard/portlet/container-portlet/container-portlet.css +1 -0
  108. package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.cjs +1 -1
  109. package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
  110. package/lib/control/data-view/data-view.css +1 -1
  111. package/lib/control/drbar/drbar.controller.cjs +2 -8
  112. package/lib/control/drtab/drtab.controller.cjs +2 -8
  113. package/lib/control/exp-bar/data-view-exp-bar/data-view-exp-bar.css +1 -1
  114. package/lib/control/exp-bar/grid-exp-bar/grid-exp-bar.css +1 -1
  115. package/lib/control/exp-bar/list-exp-bar/list-exp-bar.css +1 -1
  116. package/lib/control/exp-bar/render-util.cjs +2 -2
  117. package/lib/control/exp-bar/tree-exp-bar/tree-exp-bar.css +1 -1
  118. package/lib/control/form/form/form.cjs +1 -1
  119. package/lib/control/form/form-detail/form-button/form-button.cjs +6 -5
  120. package/lib/control/form/form-detail/form-button/form-button.css +1 -1
  121. package/lib/control/form/form-detail/form-group-panel/form-group-panel.cjs +1 -1
  122. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form-shell.cjs +159 -0
  123. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form/form-mdctrl-repeater-form.cjs +16 -99
  124. package/lib/control/form/form-detail/form-mdctrl/form-mdctrl-repeater/form-mdctrl-repeater-form-one/form-mdctrl-repeater-form-one.cjs +18 -84
  125. package/lib/control/form/form-detail/form-mdctrl/index.cjs +2 -0
  126. package/lib/control/form/form-detail/form-page/form-page.css +1 -1
  127. package/lib/control/form/search-form/search-form.cjs +10 -3
  128. package/lib/control/form/search-form/search-form.css +1 -1
  129. package/lib/control/grid/grid-column/grid-field-column/grid-field-column.cjs +7 -4
  130. package/lib/control/grid/grid-column/grid-field-edit-column/grid-field-edit-column.cjs +2 -1
  131. package/lib/control/panel/view-layout-panel/view-layout-panel.cjs +47 -41
  132. package/lib/control/toolbar/toolbar.cjs +1 -1
  133. package/lib/control/tree/tree.css +1 -1
  134. package/lib/devtool/devtool-action.cjs +220 -0
  135. package/lib/devtool/devtool-action.css +1 -0
  136. package/lib/devtool/index.cjs +83 -0
  137. package/lib/devtool/interface/devtool-event.cjs +2 -0
  138. package/lib/devtool/interface/devtool-view.cjs +2 -0
  139. package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +1 -1
  140. package/lib/editor/html/wang-editor/wang-editor.cjs +5 -0
  141. package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.css +1 -1
  142. package/lib/editor/text-box/input/input.cjs +1 -1
  143. package/lib/index.cjs +165 -159
  144. package/lib/node_modules/.pnpm/element-plus@2.3.9_vue@3.3.4/node_modules/element-plus/dist/locale/zh-cn.cjs +135 -0
  145. package/lib/panel-component/auth-userinfo/auth-userinfo.cjs +28 -5
  146. package/lib/panel-component/auth-userinfo/auth-userinfo.css +1 -1
  147. package/lib/panel-component/index.cjs +19 -14
  148. package/lib/panel-component/nav-tabs/nav-tabs.css +1 -1
  149. package/lib/panel-component/panel-app-header/panel-app-header.css +1 -1
  150. package/lib/panel-component/panel-app-title/panel-app-title.css +1 -1
  151. package/lib/panel-component/panel-button/panel-button.cjs +5 -4
  152. package/lib/panel-component/panel-button/panel-button.css +1 -1
  153. package/lib/panel-component/panel-exp-header/panel-exp-header.css +1 -1
  154. package/lib/panel-component/panel-index-view-search/index.cjs +23 -0
  155. package/lib/panel-component/panel-index-view-search/panel-index-view-search.cjs +84 -0
  156. package/lib/panel-component/panel-index-view-search/panel-index-view-search.css +1 -0
  157. package/lib/panel-component/panel-index-view-search/panel-index-view-search.provider.cjs +22 -0
  158. package/lib/panel-component/single-data-container/single-data-container.cjs +33 -20
  159. package/lib/panel-component/single-data-container/single-data-container.controller.cjs +74 -0
  160. package/lib/util/app-drawer/app-drawer-component.css +1 -1
  161. package/lib/util/confirm-util/confirm-util.cjs +5 -5
  162. package/lib/util/loading-util/loading-util.cjs +2 -2
  163. package/lib/util/message-util/message-util.cjs +5 -5
  164. package/lib/util/modal-util/modal-util.cjs +6 -6
  165. package/lib/util/notification-util/notification-util.cjs +5 -5
  166. package/lib/view/common/view.cjs +12 -0
  167. package/lib/view/common/view.css +1 -1
  168. package/lib/view-engine/tab-exp-view.engine.cjs +7 -0
  169. package/package.json +6 -6
  170. package/dist/wang-editor-675011c6.js +0 -2
  171. package/dist/wang-editor-675011c6.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ System.register(["vue","@wangeditor/editor-for-vue","qx-util","ramda","@ibiz-template/vue3-util","@ibiz-template/core"],function(N){"use strict";var c,d,i,u,m,f,s,h,g,v,C,p,b,y,E;return{setters:[function(o){c=o.defineComponent,d=o.shallowRef,i=o.ref,u=o.watch,m=o.onBeforeUnmount,f=o.onMounted,s=o.createVNode},function(o){h=o.Toolbar,g=o.Editor},function(o){v=o.getCookie},function(o){C=o.isNil},function(o){p=o.getHtmlProps,b=o.getEditorEmits,y=o.useNamespace},function(o){E=o.CoreConst}],execute:function(){const o=N("default",c({name:"IBizHtml",props:p(),emits:b(),setup(n,{emit:O}){const L=y("html"),F=n.controller,r=d(),a=i(""),P=i({Authorization:`Bearer ${v(E.TOKEN)}`}),k=i(""),U=i("");u(()=>n.data,e=>{if(e){const t=F.calcBaseUrl(e);k.value=t.uploadUrl,U.value=t.downloadUrl}},{immediate:!0,deep:!0});const x=(e,t)=>{if(t)return!0},H=e=>e,z={excludeKeys:["group-video"]},T={placeholder:F.placeHolder,readOnly:n.readonly,MENU_CONF:{uploadImage:{server:k.value,fieldName:"file",maxFileSize:10*1024*1024,maxNumberOfFiles:10,allowedFileTypes:[],headers:P.value,withCredentials:!0,onBeforeUpload(e){return e},onProgress(e){console.log("progress",e)},onSuccess(e,t){console.log(`${e.name} \u4E0A\u4F20\u6210\u529F`,t)},onFailed(e,t){console.log(`${e.name} \u4E0A\u4F20\u5931\u8D25`,t)},onError(e,t,l){console.log(`${e.name} \u4E0A\u4F20\u51FA\u9519`,t,l)},async customInsert(e,t){const l=U.value.replace("%fileId%",e.id),q=e.filename;t(l,q,"")}},insertLink:{checkLink:x,parseLinkUrl:H},editLink:{checkLink:x,parseLinkUrl:H}}};m(()=>{const e=r.value;e?.destroy()});const $=e=>{r.value=e,e.setHtml(a.value)},w=e=>{const t=e.getHtml(),l=t==="<p><br></p>"?"":t;l===n.value||l===""&&C(n.value)||O("change",l)},D=e=>{},I=e=>{},R=e=>{},_=(e,t)=>{alert(`\u3010\u81EA\u5B9A\u4E49\u63D0\u793A\u3011${t} - ${e}`)},M=(e,t,l)=>{l(!0)},S=e=>{const t=r.value;t?.insertText(e)},K=()=>{const e=r.value;e!=null&&console.log(e.getHtml())},A=()=>{const e=r.value;e?.disable()},B=()=>{const e=r.value;e?.enable()};return f(()=>{u(()=>n.value,(e,t)=>{e!==t&&(typeof n.value=="string"||e===null)&&(e===null?a.value="":a.value=e)},{immediate:!0}),u(()=>n.disabled,(e,t)=>{e!==t&&(e===!0?A():B())},{immediate:!0})}),{ns:L,editorRef:r,mode:"default",valueHtml:a,toolbarConfig:z,editorConfig:T,handleCreated:$,handleChange:w,handleDestroyed:D,handleFocus:I,handleBlur:R,customAlert:_,customPaste:M,insertText:S,printHtml:K,disable:A,enable:B}},render(){return s("div",{class:this.ns.b()},[s("div",{style:"border: 1px solid #ccc; margin-top: 10px"},[s(h,{editor:this.editorRef,"default-config":this.toolbarConfig,mode:this.mode,style:"border-bottom: 1px solid #ccc"},null),s(g,{modelValue:this.valueHtml,"onUpdate:modelValue":n=>this.valueHtml=n,"default-config":this.editorConfig,mode:this.mode,style:"height: 400px; overflow-y: hidden",onOnCreated:this.handleCreated,onOnChange:this.handleChange,onOnDestroyed:this.handleDestroyed,onOnFocus:this.handleFocus,onOnBlur:this.handleBlur,oncustomAlert:this.customAlert,oncustomPaste:this.customPaste},null)])])}}))}}});
2
+ //# sourceMappingURL=wang-editor-0c05cd5f.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wang-editor-0c05cd5f.js","sources":["../src/editor/html/wang-editor/wang-editor.tsx"],"sourcesContent":["import {\n onBeforeUnmount,\n ref,\n shallowRef,\n onMounted,\n watch,\n Ref,\n defineComponent,\n} from 'vue';\nimport { Editor, Toolbar } from '@wangeditor/editor-for-vue';\nimport { IEditorConfig, IToolbarConfig } from '@wangeditor/editor';\nimport type { IDomEditor } from '@wangeditor/editor';\nimport { getCookie } from 'qx-util';\nimport { isNil } from 'ramda';\nimport {\n getEditorEmits,\n getHtmlProps,\n useNamespace,\n} from '@ibiz-template/vue3-util';\nimport { CoreConst } from '@ibiz-template/core';\nimport { HtmlEditorController } from '../html-editor.controller';\nimport './wang-editor.scss';\n\ntype InsertFnType = (_url: string, _alt: string, _href: string) => void;\n\nconst IBizHtml = defineComponent({\n name: 'IBizHtml',\n props: getHtmlProps<HtmlEditorController>(),\n emits: getEditorEmits(),\n setup(props, { emit }) {\n const ns = useNamespace('html');\n\n const c = props.controller!;\n\n // 编辑器实例,必须用 shallowRef,重要!\n const editorRef = shallowRef();\n\n // 内容 HTML\n const valueHtml = ref('');\n\n // 请求头\n const headers: Ref<IData> = ref({\n Authorization: `Bearer ${getCookie(CoreConst.TOKEN)}`,\n });\n\n // 上传文件路径\n const uploadUrl: Ref<string> = ref('');\n\n // 下载文件路径\n const downloadUrl: Ref<string> = ref('');\n\n // data响应式变更基础路径\n watch(\n () => props.data,\n newVal => {\n if (newVal) {\n const urls = c.calcBaseUrl(newVal);\n uploadUrl.value = urls.uploadUrl;\n downloadUrl.value = urls.downloadUrl;\n }\n },\n { immediate: true, deep: true },\n );\n\n // 自定义校验链接\n const customCheckLinkFn = (\n text: string,\n url: string,\n ): string | boolean | undefined => {\n if (!url) {\n return;\n }\n // if (url.indexOf('http') !== 0) {\n // return '链接必须以 http/https 开头';\n // }\n return true;\n\n // 返回值有三种选择:\n // 1. 返回 true ,说明检查通过,编辑器将正常插入链接\n // 2. 返回一个字符串,说明检查未通过,编辑器会阻止插入。会 alert 出错误信息(即返回的字符串)\n // 3. 返回 undefined(即没有任何返回),说明检查未通过,编辑器会阻止插入。但不会提示任何信息\n };\n\n // 自定义转换链接 url\n const customParseLinkUrl = (url: string): string => {\n // if (url.indexOf('http') !== 0) {\n // return `http://${url}`;\n // }\n return url;\n };\n\n // 工具栏配置\n const toolbarConfig: Partial<IToolbarConfig> = {\n excludeKeys: ['group-video'],\n };\n\n // 编辑器配置\n const editorConfig: Partial<IEditorConfig> = {\n placeholder: c.placeHolder,\n readOnly: props.readonly,\n MENU_CONF: {\n // 图片上传\n uploadImage: {\n // 上传地址\n server: uploadUrl.value,\n\n // form-data fieldName ,默认值 'wangeditor-uploaded-image'\n fieldName: 'file',\n\n // 单个文件的最大体积限制,默认为 2M\n maxFileSize: 10 * 1024 * 1024, // 10M\n\n // 最多可上传几个文件,默认为 100\n maxNumberOfFiles: 10,\n\n // 选择文件时的类型限制,默认为 ['image/*'] 。如不想限制,则设置为 []\n allowedFileTypes: [],\n\n // 自定义增加 http header\n headers: headers.value,\n\n // 跨域是否传递 cookie ,默认为 false\n withCredentials: true,\n\n // 上传之前触发\n onBeforeUpload(file: File) {\n // TS 语法\n // onBeforeUpload(file) { // JS 语法\n // file 选中的文件,格式如 { key: file }\n return file;\n\n // 可以 return\n // 1. return file 或者 new 一个 file ,接下来将上传\n // 2. return false ,不上传这个 file\n },\n\n // 上传进度的回调函数\n onProgress(progress: number) {\n console.log('progress', progress);\n },\n\n // 单个文件上传成功之后\n onSuccess(file: File, res: IData) {\n console.log(`${file.name} 上传成功`, res);\n },\n\n // 单个文件上传失败\n onFailed(file: File, res: IData) {\n console.log(`${file.name} 上传失败`, res);\n },\n\n // 上传错误,或者触发 timeout 超时\n onError(file: File, err: IData, res: IData) {\n console.log(`${file.name} 上传出错`, err, res);\n },\n\n // 自定义插入图片\n async customInsert(res: IData, insertFn: InsertFnType) {\n const url = downloadUrl.value.replace('%fileId%', res.id);\n const alt = res.filename;\n // 从 res 中找到 url alt href ,然后插入图片\n insertFn(url, alt, '');\n },\n },\n // 插入链接\n insertLink: {\n checkLink: customCheckLinkFn, // 也支持 async 函数\n parseLinkUrl: customParseLinkUrl, // 也支持 async 函数\n },\n // 更新链接\n editLink: {\n checkLink: customCheckLinkFn, // 也支持 async 函数\n parseLinkUrl: customParseLinkUrl, // 也支持 async 函数\n },\n },\n };\n\n // 组件销毁时,也及时销毁编辑器,重要!\n onBeforeUnmount(() => {\n const editor = editorRef.value;\n if (editor == null) return;\n\n editor.destroy();\n });\n\n // 编辑器回调函数\n // 编辑器创建完毕时的回调函数\n const handleCreated = (editor: IDomEditor) => {\n editorRef.value = editor; // 记录 editor 实例,重要!\n editor.setHtml(valueHtml.value);\n // 配置菜单\n // setTimeout(() => {\n // const toolbar = DomEditor.getToolbar(editor);\n // const curToolbarConfig = toolbar?.getConfig();\n // console.log(curToolbarConfig?.toolbarKeys); // 当前菜单排序和分组\n // }, 3000);\n };\n // 编辑器内容、选区变化时的回调函数\n const handleChange = (editor: IDomEditor) => {\n // console.log('change:', editor.getHtml());\n const html = editor.getHtml();\n // wangEditor初始值抛空字符串给后台\n const emitValue = html === '<p><br></p>' ? '' : html;\n if (\n emitValue === props.value ||\n (emitValue === '' && isNil(props.value))\n ) {\n return;\n }\n emit('change', emitValue);\n };\n // 编辑器销毁时的回调函数。调用 editor.destroy() 即可销毁编辑器\n const handleDestroyed = (_editor: IDomEditor) => {\n // console.log('destroyed', _editor);\n };\n // 编辑器 focus 时的回调函数\n const handleFocus = (_editor: IDomEditor) => {\n // console.log('focus', _editor);\n };\n // 编辑器 blur 时的回调函数。\n const handleBlur = (_editor: IDomEditor) => {\n // console.log('blur', _editor);\n };\n // 自定义编辑器 alert\n const customAlert = (info: string, type: string) => {\n // eslint-disable-next-line no-alert\n alert(`【自定义提示】${type} - ${info}`);\n };\n // 自定义粘贴。可阻止编辑器的默认粘贴,实现自己的粘贴逻辑\n const customPaste = (\n editor: IDomEditor,\n event: ClipboardEvent,\n callback: (_n: boolean) => void,\n ) => {\n // 返回值(注意,vue 事件的返回值,不能用 return)\n // callback(false); // 返回 false ,阻止默认粘贴行为\n callback(true); // 返回 true ,继续默认的粘贴行为\n };\n\n // 插入文本\n const insertText = (str: string) => {\n const editor = editorRef.value;\n if (editor == null) return;\n\n editor.insertText(str);\n };\n\n // 获取非格式化的 html\n const printHtml = () => {\n const editor = editorRef.value;\n if (editor == null) return;\n console.log(editor.getHtml());\n };\n\n // 禁用编辑器\n const disable = () => {\n const editor = editorRef.value;\n if (editor == null) return;\n editor.disable();\n };\n\n // 取消禁用编辑器\n const enable = () => {\n const editor = editorRef.value;\n if (editor == null) return;\n editor.enable();\n };\n\n onMounted(() => {\n // 监听值变化赋值\n watch(\n () => props.value,\n (newVal, oldVal) => {\n if (\n newVal !== oldVal &&\n (typeof props.value === 'string' || newVal === null)\n ) {\n if (newVal === null) {\n valueHtml.value = '';\n } else {\n valueHtml.value = newVal as string;\n }\n }\n },\n { immediate: true },\n );\n\n // 监听disabled禁用\n watch(\n () => props.disabled,\n (newVal, oldVal) => {\n if (newVal !== oldVal) {\n if (newVal === true) {\n disable();\n } else {\n enable();\n }\n }\n },\n { immediate: true },\n );\n });\n\n return {\n ns,\n editorRef,\n mode: 'default',\n valueHtml,\n toolbarConfig,\n editorConfig,\n handleCreated,\n handleChange,\n handleDestroyed,\n handleFocus,\n handleBlur,\n customAlert,\n customPaste,\n insertText,\n printHtml,\n disable,\n enable,\n };\n },\n render() {\n return (\n <div class={this.ns.b()}>\n <div style='border: 1px solid #ccc; margin-top: 10px'>\n <Toolbar\n editor={this.editorRef}\n default-config={this.toolbarConfig}\n mode={this.mode}\n style='border-bottom: 1px solid #ccc'\n />\n <Editor\n v-model={this.valueHtml}\n default-config={this.editorConfig}\n mode={this.mode}\n style='height: 400px; overflow-y: hidden'\n onOnCreated={this.handleCreated}\n onOnChange={this.handleChange}\n onOnDestroyed={this.handleDestroyed}\n onOnFocus={this.handleFocus}\n onOnBlur={this.handleBlur}\n oncustomAlert={this.customAlert}\n oncustomPaste={this.customPaste}\n />\n </div>\n </div>\n );\n },\n});\n\nexport default IBizHtml;\n"],"names":["IBizHtml","exports","defineComponent","name","props","getHtmlProps","emits","getEditorEmits","setup","emit","ns","useNamespace","c","controller","valueHtml","ref","editorRef","watch","newVal","headers","Authorization","getCookie","CoreConst","uploadUrl","urls","url","downloadUrl","immediate","deep","customParseLinkUrl","file","toolbarConfig","progress","res","MENU_CONF","uploadImage","server","err","fieldName","maxFileSize","insertFn","alt","maxNumberOfFiles","customCheckLinkFn","withCredentials","editor","onSuccess","onFailed","console","emitValue","html","isNil","handleDestroyed","handleFocus","_editor","customAlert","info","type","insertLink","checkLink","event","callback","insertText","str","parseLinkUrl","onBeforeUnmount","value","enable","setHtml","onMounted","oldVal","disable","handleBlur","editorConfig","handleCreated","alert","customPaste","printHtml","log","$event"],"mappings":"8fAyBMA,MAAAA,EAAQC,EAAA,UAAGC,EAAgB,CAC/BC,KAAM,WACNC,MAAOC,EAAoC,EAC3CC,MAAOC,EAAgB,EACvBC,MAAMJ,EAAO,CAAEK,KAAAA,CAAK,EAAG,CACrB,MAAMC,EAAKC,EAAa,MAAM,EAExBC,EAAIR,EAAMS,iBAEhBC,EAAAC,EAAA,EAAA,EACMC,EAASD,EAAa,qCAE5B,CAAA,EACMD,EAAYC,EAAI,EAAE,UAExBE,EAAA,IAAAb,EAAA,KAAAc,GAAA,CACMC,GAAAA,EAAsBJ,CAC1BK,MAAAA,EAAgBR,EAASS,YAAAA,CAAUC,EACnCC,EAAA,MAAAC,EAAA,+BAEF,CACA,EAAA,cAEA,KAAA,EACA,CAAA,kBAEA,GAAAC,EAKM,MAAA,EACAF,EACAG,EAAwBD,GAC1BA,EAEAE,EAAe,CAAEC,YAAM,CAAA,aAAA,CAAK,KAGhC,YAAAhB,EAAA,YACA,oBAIE,UAAU,CAEV,YAAA,CAEA,OAAAW,EAAA,MAEA,UAAW,OAEX,YAAA,GAAA,KAAA,KAGA,iBAAA,uBAIIM,QAAAA,EAAAA,MAEJ,gBAAA,GAEA,eAAUC,EAAA,CACX,OAAAA,GAGKC,aAAyC,CAClC,QAAG,IAAa,WAAAC,CAAA,CAC5B,EAED,UAAAF,EAAAG,EAAA,aAC6C,GAAAH,EAAA,IAAA,4BAAAG,CAAA,CAChC,EAEXC,SAAWJ,EAAAG,EAAA,CACT,QAAA,IAAA,GAAAH,EAAA,IAAA,4BAAAG,CAAA,CACAE,EAEEC,QAAQb,EAASc,EAAMJ,EAAA,CAEvB,QAAA,IAAA,GAAAH,EAAA,IAAA,4BAAAO,EAAAJ,CAAA,CACAK,EAGAC,MAAAA,aAAkBN,IAAW,CAAE,MAAAR,EAAAC,EAAA,MAAA,QAAA,WAAAO,EAAA,EAAA,eAE/BO,EAAAf,EAAAgB,EAAA,EAAA,CACAC,CAEA,EAGA,WAAA,CACAvB,UAAgBwB,EAGhBC,aAAAA,GAKE,SAAA,CACA,UAAAD,gBAIA,CACA,UAGF,MAAAE,EAAA7B,EAAA,SAGC,QAAA,CAED,CAAA,EACA8B,MAAAA,EAAsBb,GAAY,GACzB,MAAMY,IACd,QAAA/B,EAAA,KAAA,CAED,EACAiC,EAAqBd,GAAY,OAC/Be,EAAOH,EAAQf,UAChBmB,EAAAC,IAAA,cAAA,GAAAA,EAEDD,IAAA7C,EAAA,OAAA6C,IAAA,IAAAE,EAAA/C,EAAA,KAAA,KAGC,SAAA6C,CAAA,CAED,EACAG,EAAmBnB,IACjB,EACAoB,EAAeC,GAAS,CACxB,EACAd,EAAYc,GAAU,CACxB,EACDC,EAAA,CAAAC,EAAAC,IAAA,CACD,MAAA,6CAAAA,CAAA,MAAAD,CAAA,EAAA,CACAE,EACEC,EAA4B,CAAAd,EAAAe,EAAAC,IAAA,CAAEA,EAAA,EAAA,GAE/BC,EAAAC,GAAA,iBAGCJ,GAAAA,WAA4BI,CAAA,CAAE,EAC9BC,EAAY,KACd,MAAAnB,EAAA7B,EAAA,MACF6B,GAAA,8BAGF,EACAoB,EAAgB,IAAM,CACpB,MAAMpB,EAAS7B,EAAUkD,MAIzBrB,GAAA,QAAA,GAEFsB,EAAA,IAAA,CACA,MAAAtB,EAAA7B,EAAA,MAGE6B,GAAOuB,OAAO,CACd,EACA,OAAAC,EAAA,IAAA,CACApD,EAAA,IAAAb,EAAA,MAAA,CAAAc,EAAAoD,IAAA,CACApD,IAAAoD,IAAA,OAAAlE,EAAA,OAAA,UAAAc,IAAA,QACAA,IAAA,KACAJ,EAAA,MAAA,GAEFA,EAAA,MAAAI,EAGE,EAAA,CACA,UAAA,GACM+B,EACNhC,QACgBb,SAAM8D,CAAKhD,EACfoD,IAAO,CAEjBpD,IAAAoD,IACFpD,IAAA,GACKqD,IAEPJ,MAGC,CACD,UAAA,GACMd,CACJ,CAAA,EACD,CACD,GAAA3C,EACM8D,UAAAA,EACJ,KAAA,UACD,UAAA1D,EACD,cAAAiB,EACA,aAAA0C,EACE,cAAAC,EACAC,aAAAA,EACD,gBAAAvB,EACD,YAAAC,EACMuB,WAAAA,EAKJ,YAAArB,EACA,YAAAqB,EACAf,WAAAA,EACD,UAAAgB,YAED,OAAAV,EAEE,UACItB,CAEJA,OAAAA,EAAkBkB,MAAI,CACvB,MAAA,KAAA,GAAA,EAAA,aAED,MAAA,4CACMc,CAAAA,EAAYA,EAAM,CACtB,OAAY,KAAG7D,UACf,iBAAkB,KAAE,cACpBgC,KAAQ8B,KAAIjC,KACb,MAAA,4CAED,WAAA,KAAA,UACM0B,sBAAgBQ,GAAA,KAAA,UAAAA,EACpB,iBAAwB,KAAA,aACxB,KAAIlC,KAAU,KACdA,MAAc,oCACf,YAAA,KAAA,2CAED,cAAA,KAAA,gBACMsB,UAASA,KAAM,YACnB,SAAY,KAAY,WACxB,cAAc,KAAM,YACpBtB,cAAe,KAAA,aAChB,IAAA,CAAA,CAAA,CAAA,CAAA,CAEDwB,CACE,CAAA,CAAA"}
@@ -42,7 +42,7 @@ const IBizActionToolbar = /* @__PURE__ */ defineComponent({
42
42
  if (this.actionsState[detail.id].visible) {
43
43
  let caption = detail.caption;
44
44
  if (detail.capLanguageRes) {
45
- caption = ibiz.i18n.t(detail.capLanguageRes.lanResTag, detail.capLanguageRes.defaultContent || detail.caption);
45
+ caption = ibiz.i18n.t(detail.capLanguageRes.lanResTag, detail.caption);
46
46
  }
47
47
  return [detail.addSeparator && createVNode("div", {
48
48
  "class": this.ns.e("separator")
@@ -18,7 +18,7 @@ const IBizNoData = /* @__PURE__ */ defineComponent({
18
18
  const ns = useNamespace("no-data");
19
19
  const label = ref(props.text);
20
20
  if (props.emptyTextLanguageRes) {
21
- label.value = ibiz.i18n.t(props.emptyTextLanguageRes.lanResTag, props.emptyTextLanguageRes.defaultContent || "\u6682\u65E0\u6570\u636E");
21
+ label.value = ibiz.i18n.t(props.emptyTextLanguageRes.lanResTag, "\u6682\u65E0\u6570\u636E");
22
22
  }
23
23
  return {
24
24
  ns,
@@ -1 +1 @@
1
- .ibiz-rawitem{width:100%;height:100%;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-editor-default-text-color)}
1
+ .ibiz-rawitem{width:100%;height:100%;font-size:var(--ibiz-font-size-regular);color:var(--ibiz-editor-default-text-color)}.ibiz-rawitem .ibiz-icon{width:100%;height:100%}
@@ -1 +1 @@
1
- .ibiz-split-wrapper{position:relative;width:100%;height:100%}.ibiz-split-wrapper.is-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibiz-split--horizontal .ibiz-split-trigger-con{top:50%;width:0;height:100%}.ibiz-split--vertical .ibiz-split-trigger-con{left:50%;width:100%;height:0}.ibiz-split-pane{position:absolute}.ibiz-split-pane--left{top:0;bottom:0;left:0}.ibiz-split-pane--right{top:0;right:0;bottom:0}.ibiz-split-pane--top{top:0;right:0;left:0}.ibiz-split-pane--bottom{right:0;bottom:0;left:0}.ibiz-split-pane--moving{-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibiz-split-trigger-con{position:absolute;z-index:10;transform:translate(-50%,-50%)}
1
+ .ibiz-split-wrapper{position:relative;width:100%;height:100%}.ibiz-split-wrapper.is-no-select{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibiz-split--horizontal .ibiz-split-trigger-con{top:50%;width:0;height:100%}.ibiz-split--horizontal .ibiz-split-pane--right{padding-left:6px}.ibiz-split--vertical .ibiz-split-trigger-con{left:50%;width:100%;height:0}.ibiz-split--vertical .ibiz-split-pane--bottom{padding-top:6px}.ibiz-split-pane{position:absolute}.ibiz-split-pane--left{top:0;bottom:0;left:0}.ibiz-split-pane--right{top:0;right:0;bottom:0}.ibiz-split-pane--top{top:0;right:0;left:0}.ibiz-split-pane--bottom{right:0;bottom:0;left:0}.ibiz-split-pane--moving{-webkit-user-select:none;-moz-user-select:none;user-select:none}.ibiz-split-trigger-con{position:absolute;z-index:10;transform:translate(-50%,-50%)}
@@ -1 +1 @@
1
- @charset "UTF-8";.ibiz-control-appmenu{position:static;width:100%;height:100%;overflow-y:auto;--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-5);--ibiz-control-appmenu-item-height:52px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-5);--ibiz-control-appmenu-item-horizontal-height:40px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-medium);--ibiz-control-appmenu-item-horizontal-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose)}.ibiz-control-appmenu .el-menu{border-right:0}.ibiz-control-appmenu .el-sub-menu .el-sub-menu__icon-arrow{right:14px;width:12px}.ibiz-control-appmenu .el-sub-menu .el-menu-item{padding:calc(var(--ibiz-control-appmenu-item-padding) * .875) calc(var(--ibiz-control-appmenu-item-padding) * 2.5)}.ibiz-control-appmenu .el-menu--vertical{width:100%}.ibiz-control-appmenu .el-menu--vertical .el-menu-item,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;width:100%;height:var(--ibiz-control-appmenu-item-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-color);white-space:nowrap}.ibiz-control-appmenu .el-menu--vertical .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-selected-color);background-color:var(--ibiz-control-appmenu-item-selected-bg-color)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item:hover,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-hover-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal{gap:16px;align-items:center;height:100%;background-color:transparent;border-bottom:none}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{height:var(--ibiz-control-appmenu-item-horizontal-height);padding:var(--ibiz-control-appmenu-item-horizontal-padding);font-size:var(--ibiz-control-appmenu-item-horizontal-font-size);line-height:initial;color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border:none;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-color)!important;background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item:hover,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item .el-sub-menu__icon-arrow,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title .el-sub-menu__icon-arrow{position:absolute;top:50%;right:16px}.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{padding-right:var(--ibiz-control-appmenu-item-horizontal-padding-right)}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:var(--ibiz-control-appmenu-item-horizontal-selected-bg-color)}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-white)}.ibiz-control-appmenu__icon{margin:var(--ibiz-control-appmenu-icon-margin)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__item{display:flex;align-items:center;justify-content:center;padding:calc(var(--ibiz-control-appmenu-collapse-item-padding) * .875) calc(var(--ibiz-control-appmenu-collapse-item-padding) * 1.5)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__item:hover{color:var(--ibiz-control-appmenu-collapse-item-hover-color)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-tooltip{width:100%}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu{display:block}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu>.el-sub-menu__title{display:flex;align-items:center;justify-content:center;display:flex;align-items:center;justify-content:center;padding:calc(var(--ibiz-control-appmenu-collapse-item-padding) * .875) calc(var(--ibiz-control-appmenu-collapse-item-padding) * 1.5);white-space:nowrap;cursor:pointer}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu>.el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-collapse-item-hover-color)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu .ibiz-control-appmenu-submenu__item{padding:0}.ibiz-control-appmenu .ibiz-control-appmenu__counter{position:absolute;top:50%;right:5px;height:20px;padding:0 6px;line-height:initial;color:#fff;background-color:#f56c6c;border-radius:10px;transform:translateY(-50%)}.el-menu--popup-container{--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-5);--ibiz-control-appmenu-item-height:52px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-5);--ibiz-control-appmenu-item-horizontal-height:40px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-medium);--ibiz-control-appmenu-item-horizontal-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);border:none;box-shadow:var(--ibiz-shadow-elevated)}.el-menu--popup-container .el-menu--popup{padding:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-color-primary)}.el-menu--popup-container .el-menu--popup .el-menu-item,.el-menu--popup-container .el-menu--popup .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;width:100%;height:var(--ibiz-control-appmenu-item-horizontal-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap}.el-menu--popup-container .el-menu--popup .el-menu-item.is-active,.el-menu--popup-container .el-menu--popup .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:var(--ibiz-control-appmenu-item-selected-bg-color)}.el-menu--popup-container .el-menu--popup .el-menu-item:hover,.el-menu--popup-container .el-menu--popup .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.el-menu--popup-container .el-menu--popup .el-menu-item .el-icon,.el-menu--popup-container .el-menu--popup .el-sub-menu__title .el-icon{display:none}
1
+ @charset "UTF-8";.ibiz-control-appmenu{position:static;width:100%;height:100%;padding:0 var(--ibiz-spacing-tight);overflow-y:auto;--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base-tight);--ibiz-control-appmenu-item-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-height:40px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-horizontal-height:32px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-horizontal-padding:0 var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-horizontal-popup-height:40px}.ibiz-control-appmenu .el-menu{border-right:0}.ibiz-control-appmenu .el-sub-menu .el-sub-menu__icon-arrow{right:14px;width:12px}.ibiz-control-appmenu .el-sub-menu .el-menu-item{padding:calc(var(--ibiz-control-appmenu-item-padding) * .875) calc(var(--ibiz-control-appmenu-item-padding) * 2.5)}.ibiz-control-appmenu .el-menu--vertical{width:100%}.ibiz-control-appmenu .el-menu--vertical .el-menu-item,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;--el-menu-base-level-padding:var(--ibiz-control-appmenu-item-padding);width:100%;height:var(--ibiz-control-appmenu-item-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-color);white-space:nowrap;border-radius:var(--ibiz-control-appmenu-item-border-radius)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-selected-color)!important;background-color:var(--ibiz-control-appmenu-item-selected-bg-color)}.ibiz-control-appmenu .el-menu--vertical .el-menu-item:hover,.ibiz-control-appmenu .el-menu--vertical .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-hover-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal{gap:16px;align-items:center;height:100%;background-color:transparent;border-bottom:none}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{height:var(--ibiz-control-appmenu-item-horizontal-height);padding:var(--ibiz-control-appmenu-item-horizontal-padding);font-size:var(--ibiz-control-appmenu-item-horizontal-font-size);line-height:var(--ibiz-control-appmenu-item-horizontal-height);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border:none;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item.is-active,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-color)!important;background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item:hover,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal .el-menu-item .el-sub-menu__icon-arrow,.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title .el-sub-menu__icon-arrow{position:absolute;top:50%;right:16px}.ibiz-control-appmenu .el-menu--horizontal .el-sub-menu__title{padding-right:var(--ibiz-control-appmenu-item-horizontal-padding-right)}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu.is-active .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:transparent}.ibiz-control-appmenu .el-menu--horizontal>.el-sub-menu:hover .el-sub-menu__title{color:var(--ibiz-control-appmenu-item-horizontal-hover-color);background-color:var(--ibiz-control-appmenu-item-horizontal-hover-bg-color)}.ibiz-control-appmenu .el-menu--horizontal::-webkit-scrollbar-thumb{background-color:var(--ibiz-color-white)}.ibiz-control-appmenu__icon{display:flex;justify-content:center;width:16px;margin:var(--ibiz-control-appmenu-icon-margin)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__item{display:flex;align-items:center;justify-content:center;padding:calc(var(--ibiz-control-appmenu-collapse-item-padding) * .875) calc(var(--ibiz-control-appmenu-collapse-item-padding) * 1.5)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu__item:hover{color:var(--ibiz-control-appmenu-collapse-item-hover-color)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-tooltip{width:100%}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu{display:block}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu>.el-sub-menu__title{display:flex;align-items:center;justify-content:center;display:flex;align-items:center;justify-content:center;padding:calc(var(--ibiz-control-appmenu-collapse-item-padding) * .875) calc(var(--ibiz-control-appmenu-collapse-item-padding) * 1.5);white-space:nowrap;cursor:pointer}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu>.el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-collapse-item-hover-color)}.ibiz-control-appmenu.is-collapse .ibiz-control-appmenu-submenu .ibiz-control-appmenu-submenu__item{padding:0}.ibiz-control-appmenu .ibiz-control-appmenu__counter{position:absolute;top:50%;right:5px;height:20px;padding:0 6px;line-height:initial;color:#fff;background-color:#f56c6c;border-radius:10px;transform:translateY(-50%)}.el-menu--popup-container{--ibiz-control-appmenu-collapse-item-hover-color:var(--ibiz-color-primary);--ibiz-control-appmenu-collapse-item-padding:var(--ibiz-spacing-base);--ibiz-control-appmenu-icon-width:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-height:var(--ibiz-width-icon-extra-large);--ibiz-control-appmenu-icon-margin:0 10px 0 0;--ibiz-control-appmenu-item-selected-color:var(--ibiz-color-text-1);--ibiz-control-appmenu-item-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-hover-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-padding:var(--ibiz-spacing-base-tight);--ibiz-control-appmenu-item-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-height:40px;--ibiz-control-appmenu-item-color:var(--ibiz-color-text-0);--ibiz-control-appmenu-item-horizontal-selected-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-selected-bg-color:var(--ibiz-color-primary-active);--ibiz-control-appmenu-item-horizontal-hover-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-hover-bg-color:var(--ibiz-color-primary-hover);--ibiz-control-appmenu-item-horizontal-color:var(--ibiz-color-white);--ibiz-control-appmenu-item-horizontal-font-size:var(--ibiz-font-size-header-6);--ibiz-control-appmenu-item-horizontal-height:32px;--ibiz-control-appmenu-item-horizontal-border-radius:var(--ibiz-border-radius-small);--ibiz-control-appmenu-item-horizontal-padding:0 var(--ibiz-spacing-base);--ibiz-control-appmenu-item-horizontal-padding-right:var(--ibiz-spacing-super-loose);--ibiz-control-appmenu-item-horizontal-popup-height:40px;border:none;box-shadow:var(--ibiz-shadow-elevated)}.el-menu--popup-container .el-menu--popup{padding:var(--ibiz-spacing-extra-tight);background-color:var(--ibiz-color-primary)}.el-menu--popup-container .el-menu--popup .el-menu-item,.el-menu--popup-container .el-menu--popup .el-sub-menu__title{display:flex;align-items:center;justify-content:flex-start;width:100%;height:var(--ibiz-control-appmenu-item-horizontal-popup-height);font-size:var(--ibiz-control-appmenu-item-font-size);color:var(--ibiz-control-appmenu-item-horizontal-color);white-space:nowrap;border-radius:var(--ibiz-control-appmenu-item-horizontal-border-radius)}.el-menu--popup-container .el-menu--popup .el-menu-item.is-active,.el-menu--popup-container .el-menu--popup .el-sub-menu__title.is-active{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:transparent}.el-menu--popup-container .el-menu--popup .el-menu-item:hover,.el-menu--popup-container .el-menu--popup .el-sub-menu__title:hover{color:var(--ibiz-control-appmenu-item-horizontal-selected-color);background-color:var(--ibiz-control-appmenu-item-hover-bg-color)}.el-menu--popup-container .el-menu--popup .el-menu-item .el-icon,.el-menu--popup-container .el-menu--popup .el-sub-menu__title .el-icon{display:none}
@@ -13,7 +13,7 @@ function getMenus(items) {
13
13
  var _a;
14
14
  let label = item.caption;
15
15
  if (item.capLanguageRes) {
16
- label = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.capLanguageRes.defaultContent || item.caption);
16
+ label = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.caption);
17
17
  }
18
18
  const data = {
19
19
  key: item.id,
@@ -45,7 +45,7 @@ const AppMenuIconViewControl = /* @__PURE__ */ defineComponent({
45
45
  }
46
46
  let label = item.caption;
47
47
  if (item.capLanguageRes) {
48
- label = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.capLanguageRes.defaultContent || item.caption);
48
+ label = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.caption);
49
49
  }
50
50
  return createVNode("div", {
51
51
  "class": [ns.b("item"), ns.is("disabled", !item.appFuncId)],
@@ -195,7 +195,7 @@ const CalendarControl = /* @__PURE__ */ defineComponent({
195
195
  }, [(_a = this.c.model.sysCalendarItems) == null ? void 0 : _a.map((calendarItem) => {
196
196
  let label = calendarItem.name;
197
197
  if (calendarItem.nameLanguageRes) {
198
- label = ibiz.i18n.t(calendarItem.nameLanguageRes.lanResTag, calendarItem.nameLanguageRes.defaultContent || calendarItem.name);
198
+ label = ibiz.i18n.t(calendarItem.nameLanguageRes.lanResTag, calendarItem.name);
199
199
  }
200
200
  return createVNode("div", {
201
201
  "class": this.ns.e("calendar-item")
@@ -0,0 +1 @@
1
+ .ibiz-portlet-container.ibiz-portlet-layout{padding:0}.ibiz-portlet-container>.ibiz-portlet-layout-content{background-color:transparent}
@@ -1,6 +1,7 @@
1
1
  import { PropType } from 'vue';
2
2
  import { IDBContainerPortletPart } from '@ibiz/model-core';
3
3
  import { ContainerPortletController } from '@ibiz-template/runtime';
4
+ import './container-portlet.scss';
4
5
  export declare const ContainerPortlet: import("vue").DefineComponent<{
5
6
  modelData: {
6
7
  type: PropType<IDBContainerPortletPart>;
@@ -1,6 +1,7 @@
1
1
  import { isVNode, defineComponent, createVNode, resolveComponent } from 'vue';
2
2
  import { useNamespace } from '@ibiz-template/vue3-util';
3
3
  import { ContainerPortletController } from '@ibiz-template/runtime';
4
+ import './container-portlet.css';
4
5
 
5
6
  function _isSlot(s) {
6
7
  return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
@@ -1 +1 @@
1
- .ibiz-portlet-layout{--ibiz-portlet-layout-bg-color:transparent;--ibiz-portlet-layout-header-height:50px;--ibiz-portlet-layout-header-padding:14px 16px;--ibiz-portlet-layout-header-margin:0;--ibiz-portlet-layout-header-bg-color:transparent;--ibiz-portlet-layout-header-border-bottom:var(--ibiz-border);--ibiz-portlet-layout-caption-max-width:300px;--ibiz-portlet-layout-caption-font-weight:600;--ibiz-portlet-layout-caption-font-size:var(--ibiz-font-size-medium);--ibiz-portlet-layout-caption-color:var(--ibiz-text-color-primary);--ibiz-portlet-layout-content-bg-color:transparent;--ibiz-portlet-layout-content-padding:0;--ibiz-portlet-layout-content-margin:0;width:100%;height:100%;background-color:var(--ibiz-portlet-layout-bg-color)}.ibiz-portlet-layout__caption{max-width:var(--ibiz-portlet-layout-caption-max-width)}.ibiz-portlet-layout__caption-text{font-size:var(--ibiz-portlet-layout-caption-font-size);font-weight:var(--ibiz-portlet-layout-caption-font-weight);color:var(--ibiz-portlet-layout-caption-color)}.ibiz-portlet-layout.is-no-header>.ibiz-portlet-layout-content{height:100%}.ibiz-portlet-layout-header{display:flex;justify-content:space-between;height:var(--ibiz-portlet-layout-header-height);padding:var(--ibiz-portlet-layout-header-padding);margin:var(--ibiz-portlet-layout-header-margin);background-color:var(--ibiz-portlet-layout-header-bg-color);border-bottom:var(--ibiz-portlet-layout-header-border-bottom)}.ibiz-portlet-layout-content{height:calc(100% - var(--ibiz-portlet-layout-header-height));padding:var(--ibiz-portlet-layout-content-padding);margin:var(--ibiz-portlet-layout-content-margin);background-color:var(--ibiz-portlet-layout-content-bg-color)}
1
+ .ibiz-portlet-layout{--ibiz-portlet-layout-bg-color:transparent;--ibiz-portlet-layout-header-height:50px;--ibiz-portlet-layout-header-padding:14px 16px;--ibiz-portlet-layout-header-margin:0;--ibiz-portlet-layout-header-bg-color:var(--ibiz-color-bg-1);--ibiz-portlet-layout-header-border-bottom:var(--ibiz-border);--ibiz-portlet-layout-caption-max-width:300px;--ibiz-portlet-layout-caption-font-weight:600;--ibiz-portlet-layout-caption-font-size:var(--ibiz-font-size-medium);--ibiz-portlet-layout-caption-color:var(--ibiz-text-color-primary);--ibiz-portlet-layout-content-bg-color:var(--ibiz-color-bg-1);--ibiz-portlet-layout-content-padding:0;--ibiz-portlet-layout-content-margin:0;--ibiz-portlet-layout-padding:var(--ibiz-spacing-tight);width:100%;height:100%;background-color:var(--ibiz-portlet-layout-bg-color);padding:var(--ibiz-portlet-layout-padding)}.ibiz-portlet-layout__caption{max-width:var(--ibiz-portlet-layout-caption-max-width)}.ibiz-portlet-layout__caption-text{font-size:var(--ibiz-portlet-layout-caption-font-size);font-weight:var(--ibiz-portlet-layout-caption-font-weight);color:var(--ibiz-portlet-layout-caption-color)}.ibiz-portlet-layout.is-no-header>.ibiz-portlet-layout-content{height:100%}.ibiz-portlet-layout-header{display:flex;justify-content:space-between;height:var(--ibiz-portlet-layout-header-height);padding:var(--ibiz-portlet-layout-header-padding);margin:var(--ibiz-portlet-layout-header-margin);background-color:var(--ibiz-portlet-layout-header-bg-color);border-bottom:var(--ibiz-portlet-layout-header-border-bottom)}.ibiz-portlet-layout-content{height:calc(100% - var(--ibiz-portlet-layout-header-height));padding:var(--ibiz-portlet-layout-content-padding);margin:var(--ibiz-portlet-layout-content-margin);background-color:var(--ibiz-portlet-layout-content-bg-color)}
@@ -35,7 +35,7 @@ const PortletLayout = /* @__PURE__ */ defineComponent({
35
35
  } = this.controller;
36
36
  let title = model.title;
37
37
  if (model.titleLanguageRes) {
38
- title = ibiz.i18n.t(model.titleLanguageRes.lanResTag, model.titleLanguageRes.defaultContent || model.title);
38
+ title = ibiz.i18n.t(model.titleLanguageRes.lanResTag, model.title);
39
39
  }
40
40
  return createVNode("div", {
41
41
  "class": [this.ns.b(), this.ns.is("no-header", !this.isShowHeader)]
@@ -1 +1 @@
1
- .ibiz-control-dataview{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-0);width:100%;height:100%}.ibiz-control-dataview-scroll{display:flex;flex-wrap:wrap;gap:12px;align-content:flex-start;width:100%;height:100%;overflow:auto}.ibiz-control-dataview-item{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-0);color:var(--ibiz-control-dataview-text-color);cursor:pointer}.ibiz-control-dataview-item:hover{background-color:var(--ibiz-control-dataview-hover-bg-color)}.ibiz-control-dataview-item.is-active{background-color:var(--ibiz-control-dataview-active-bg-color)}.ibiz-control-dataview-item-content{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-0)}.ibiz-control-dataview-item-content__top--title{text-align:center}.ibiz-control-dataview-item-content__top--description{min-width:150px;text-align:justify;text-justify:newspaper;word-break:break-all}.ibiz-control-dataview-item-content__bottom--actions{display:flex;justify-content:center}.ibiz-control-dataview-group-content{width:100%;overflow:auto}.ibiz-control-dataview-group-content__item .el-collapse-item__content{display:flex;flex-wrap:wrap}.ibiz-control-dataview-group-content__item--empty{width:100%;text-align:center}
1
+ .ibiz-control-dataview{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;width:100%;height:100%}.ibiz-control-dataview-scroll{display:flex;flex-wrap:wrap;gap:12px;align-content:flex-start;width:100%;height:100%;padding:var(--ibiz-control-dataview-padding);overflow:auto}.ibiz-control-dataview-item{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0;color:var(--ibiz-control-dataview-text-color);cursor:pointer}.ibiz-control-dataview-item:hover{background-color:var(--ibiz-control-dataview-hover-bg-color)}.ibiz-control-dataview-item.is-active{background-color:var(--ibiz-control-dataview-active-bg-color)}.ibiz-control-dataview-item-content{--ibiz-control-dataview-text-color:var(--ibiz-color-text-0);--ibiz-control-dataview-hover-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-active-bg-color:var(--ibiz-color-fill-0);--ibiz-control-dataview-padding:var(--ibiz-spacing-tight) var(--ibiz-spacing-base) 0}.ibiz-control-dataview-item-content__top--title{text-align:center}.ibiz-control-dataview-item-content__top--description{min-width:150px;text-align:justify;text-justify:newspaper;word-break:break-all}.ibiz-control-dataview-item-content__bottom--actions{display:flex;justify-content:center}.ibiz-control-dataview-group-content{width:100%;overflow:auto}.ibiz-control-dataview-group-content__item .el-collapse-item__content{display:flex;flex-wrap:wrap}.ibiz-control-dataview-group-content__item--empty{width:100%;text-align:center}
@@ -148,10 +148,7 @@ class DRBarController extends ControlController {
148
148
  const drBarItems = [];
149
149
  let caption = editItemCaption;
150
150
  if (editItemCapLanguageRes) {
151
- caption = ibiz.i18n.t(
152
- editItemCapLanguageRes.lanResTag,
153
- editItemCapLanguageRes.defaultContent
154
- );
151
+ caption = ibiz.i18n.t(editItemCapLanguageRes.lanResTag, editItemCaption);
155
152
  }
156
153
  drBarItems.push({
157
154
  tag: uniqueTag,
@@ -164,10 +161,7 @@ class DRBarController extends ControlController {
164
161
  dedrctrlItems == null ? void 0 : dedrctrlItems.forEach((item) => {
165
162
  let itemCaption = item.caption;
166
163
  if (item.capLanguageRes) {
167
- itemCaption = ibiz.i18n.t(
168
- item.capLanguageRes.lanResTag,
169
- item.capLanguageRes.defaultContent
170
- );
164
+ itemCaption = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.caption);
171
165
  }
172
166
  drBarItems.push({
173
167
  tag: item.id,
@@ -145,10 +145,7 @@ class DRTabController extends ControlController {
145
145
  const drTabPages = [];
146
146
  let caption = editItemCaption;
147
147
  if (editItemCapLanguageRes) {
148
- caption = ibiz.i18n.t(
149
- editItemCapLanguageRes.lanResTag,
150
- editItemCapLanguageRes.defaultContent
151
- );
148
+ caption = ibiz.i18n.t(editItemCapLanguageRes.lanResTag, editItemCaption);
152
149
  }
153
150
  drTabPages.push({
154
151
  tag: uniqueTag,
@@ -161,10 +158,7 @@ class DRTabController extends ControlController {
161
158
  dedrtabPages == null ? void 0 : dedrtabPages.forEach((item) => {
162
159
  let itemCaption = item.caption;
163
160
  if (item.capLanguageRes) {
164
- itemCaption = ibiz.i18n.t(
165
- item.capLanguageRes.lanResTag,
166
- item.capLanguageRes.defaultContent
167
- );
161
+ itemCaption = ibiz.i18n.t(item.capLanguageRes.lanResTag, item.caption);
168
162
  }
169
163
  drTabPages.push({
170
164
  tag: item.id,
@@ -1 +1 @@
1
- .ibiz-control-dataviewexpbar{height:100%;overflow-y:scroll}
1
+ .ibiz-control-dataviewexpbar{height:100%;overflow-y:auto}
@@ -1 +1 @@
1
- .ibiz-control-gridexpbar{min-width:300px;height:100%;overflow-y:scroll}
1
+ .ibiz-control-gridexpbar{min-width:300px;height:100%;overflow-y:auto}
@@ -1 +1 @@
1
- .ibiz-control-listexpbar{min-width:300px;height:100%;overflow-y:scroll}
1
+ .ibiz-control-listexpbar{min-width:300px;height:100%;overflow-y:auto}
@@ -18,7 +18,7 @@ function useExpBarRender(c, ns) {
18
18
  }
19
19
  let title = model.title;
20
20
  if (model.titleLanguageRes) {
21
- title = ibiz.i18n.t(model.titleLanguageRes.lanResTag, model.titleLanguageRes.defaultContent || model.title);
21
+ title = ibiz.i18n.t(model.titleLanguageRes.lanResTag, model.title);
22
22
  }
23
23
  return createVNode("div", {
24
24
  "class": [ns.b("caption")]
@@ -39,7 +39,7 @@ function useExpBarRender(c, ns) {
39
39
  return createVNode(resolveComponent("el-input"), {
40
40
  "model-value": c.state.query,
41
41
  "class": ns.b("quick-search"),
42
- "placeholder": "\u641C\u7D22\u9879",
42
+ "placeholder": c.state.placeHolder,
43
43
  "onInput": onInput
44
44
  }, {
45
45
  prefix: () => {
@@ -1 +1 @@
1
- .ibiz-control-treeexpbar{min-width:300px;height:100%;overflow-y:scroll}
1
+ .ibiz-control-treeexpbar{min-width:300px;height:100%;overflow-y:auto}
@@ -92,7 +92,7 @@ const FormControl = /* @__PURE__ */ defineComponent({
92
92
  return this.renderByDetailType(page);
93
93
  })];
94
94
  }
95
- }), this.$slots.searchFooter && this.$slots.searchFooter({})]]
95
+ }), this.$slots.searchButtons && this.$slots.searchButtons({})]]
96
96
  });
97
97
  }
98
98
  });
@@ -1 +1 @@
1
- .ibiz-form-button{--ibiz-form-button-icon-margin:0 var(--ibiz-spacing-extra-tight) 0 0;--ibiz-form-button-icon-max-width:var(--ibiz-width-icon-medium);--ibiz-form-button-icon-max-height:var(--ibiz-width-icon-medium);overflow:hidden}.ibiz-form-button i,.ibiz-form-button img{display:inline-block;max-width:var(--ibiz-form-button-icon-max-width);max-height:var(--ibiz-form-button-icon-max-height);margin:var(--ibiz-form-button-icon-margin)}
1
+ .ibiz-form-button{--ibiz-form-button-icon-margin:0 var(--ibiz-spacing-extra-tight) 0 0;--ibiz-form-button-icon-max-width:var(--ibiz-width-icon-medium);--ibiz-form-button-icon-max-height:var(--ibiz-width-icon-medium);overflow:hidden;padding:var(--ibiz-spacing-tight)}.ibiz-form-button .el-button{width:100%}.ibiz-form-button .el-button i,.ibiz-form-button .el-button img{display:inline-block;max-width:var(--ibiz-form-button-icon-max-width);max-height:var(--ibiz-form-button-icon-max-height);margin:var(--ibiz-form-button-icon-margin)}
@@ -28,7 +28,7 @@ const FormButton = /* @__PURE__ */ defineComponent({
28
28
  }
29
29
  let text = caption;
30
30
  if (capLanguageRes) {
31
- text = ibiz.i18n.t(capLanguageRes.lanResTag, capLanguageRes.defaultContent || caption);
31
+ text = ibiz.i18n.t(capLanguageRes.lanResTag, caption);
32
32
  }
33
33
  return text;
34
34
  });
@@ -41,12 +41,13 @@ const FormButton = /* @__PURE__ */ defineComponent({
41
41
  if (!this.controller.state.visible) {
42
42
  return null;
43
43
  }
44
- return createVNode(resolveComponent("el-button"), {
44
+ return createVNode("div", {
45
+ "class": [this.ns.b(), this.ns.m(this.modelData.codeName), ...this.controller.containerClass]
46
+ }, [createVNode(resolveComponent("el-button"), {
45
47
  "sime": "small",
46
48
  "onClick": this.controller.onClick.bind(this.controller),
47
49
  "loading": this.controller.state.loading,
48
- "disabled": this.controller.state.disabled,
49
- "class": [this.ns.b(), this.ns.m(this.modelData.codeName), ...this.controller.containerClass]
50
+ "disabled": this.controller.state.disabled
50
51
  }, {
51
52
  default: () => [createVNode("div", {
52
53
  "class": this.ns.b("content")
@@ -56,7 +57,7 @@ const FormButton = /* @__PURE__ */ defineComponent({
56
57
  }, null), createVNode("span", {
57
58
  "class": this.ns.bm("content", "caption")
58
59
  }, [this.modelData.showCaption ? this.captionText : null])])]
59
- });
60
+ })]);
60
61
  }
61
62
  });
62
63
 
@@ -40,7 +40,7 @@ const FormGroupPanel = /* @__PURE__ */ defineComponent({
40
40
  }
41
41
  let text = caption;
42
42
  if (capLanguageRes) {
43
- text = ibiz.i18n.t(capLanguageRes.lanResTag, capLanguageRes.defaultContent || caption);
43
+ text = ibiz.i18n.t(capLanguageRes.lanResTag, caption);
44
44
  }
45
45
  return text;
46
46
  });
@@ -0,0 +1,72 @@
1
+ import { FormMDCtrlItemController, FormMDCtrlRepeaterFormController } from '@ibiz-template/runtime';
2
+ import { IDEEditForm, IDEFormDetail } from '@ibiz/model-core';
3
+ import { PropType, VNode } from 'vue';
4
+ export declare const FormMDCtrlRepeaterFormShell: import("vue").DefineComponent<{
5
+ modelData: {
6
+ type: PropType<IDEEditForm>;
7
+ required: true;
8
+ };
9
+ context: {
10
+ type: PropType<IContext>;
11
+ required: true;
12
+ };
13
+ params: {
14
+ type: PropType<IParams>;
15
+ default: () => {};
16
+ };
17
+ data: {
18
+ type: PropType<IData>;
19
+ required: true;
20
+ };
21
+ index: {
22
+ type: NumberConstructor;
23
+ required: true;
24
+ };
25
+ controller: {
26
+ type: PropType<FormMDCtrlRepeaterFormController>;
27
+ required: true;
28
+ };
29
+ buttonVisible: {
30
+ type: BooleanConstructor;
31
+ default: boolean;
32
+ required: false;
33
+ };
34
+ }, {
35
+ c: FormMDCtrlItemController;
36
+ ns: import("@ibiz-template/core").Namespace;
37
+ renderByDetailType: (detail: IDEFormDetail, item: IData, index: number) => VNode | VNode[] | undefined;
38
+ init: import("vue").Ref<boolean>;
39
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
40
+ modelData: {
41
+ type: PropType<IDEEditForm>;
42
+ required: true;
43
+ };
44
+ context: {
45
+ type: PropType<IContext>;
46
+ required: true;
47
+ };
48
+ params: {
49
+ type: PropType<IParams>;
50
+ default: () => {};
51
+ };
52
+ data: {
53
+ type: PropType<IData>;
54
+ required: true;
55
+ };
56
+ index: {
57
+ type: NumberConstructor;
58
+ required: true;
59
+ };
60
+ controller: {
61
+ type: PropType<FormMDCtrlRepeaterFormController>;
62
+ required: true;
63
+ };
64
+ buttonVisible: {
65
+ type: BooleanConstructor;
66
+ default: boolean;
67
+ required: false;
68
+ };
69
+ }>>, {
70
+ params: IParams;
71
+ buttonVisible: boolean;
72
+ }, {}>;
@@ -0,0 +1,157 @@
1
+ import { isVNode, defineComponent, ref, reactive, renderSlot, createVNode, createTextVNode, resolveComponent, h } from 'vue';
2
+ import { FormMDCtrlItemController, findChildFormDetails } from '@ibiz-template/runtime';
3
+ import { useControlController, useNamespace } from '@ibiz-template/vue3-util';
4
+
5
+ function _isSlot(s) {
6
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
7
+ }
8
+ const FormMDCtrlRepeaterFormShell = /* @__PURE__ */ defineComponent({
9
+ name: "IBizFormMDCtrlRepeaterFormShell",
10
+ props: {
11
+ modelData: {
12
+ type: Object,
13
+ required: true
14
+ },
15
+ context: {
16
+ type: Object,
17
+ required: true
18
+ },
19
+ params: {
20
+ type: Object,
21
+ default: () => ({})
22
+ },
23
+ data: {
24
+ type: Object,
25
+ required: true
26
+ },
27
+ index: {
28
+ type: Number,
29
+ required: true
30
+ },
31
+ controller: {
32
+ type: Object,
33
+ required: true
34
+ },
35
+ buttonVisible: {
36
+ type: Boolean,
37
+ default: true,
38
+ required: false
39
+ }
40
+ },
41
+ setup(props, {
42
+ slots
43
+ }) {
44
+ const c = useControlController((...args) => new FormMDCtrlItemController(...args, props.data));
45
+ const ns = useNamespace("form-mdctrl");
46
+ c.state.isLoaded = true;
47
+ const init = ref(false);
48
+ c.evt.on("onCreated", () => {
49
+ const keys = Object.keys(c.details);
50
+ keys.forEach((key) => {
51
+ const detail = c.details[key];
52
+ detail.state = reactive(detail.state);
53
+ });
54
+ init.value = true;
55
+ });
56
+ c.evt.on("onFormDataChange", (arg) => {
57
+ if (arg.data.length > 0) {
58
+ props.controller.onDataItemChange(arg.data[0], props.index);
59
+ }
60
+ });
61
+ const slotProps = {
62
+ form: c
63
+ };
64
+ const renderByDetailType = (detail, item, index) => {
65
+ let _slot;
66
+ if (detail.hidden) {
67
+ return;
68
+ }
69
+ const detailId = detail.id;
70
+ const controller = c.details[detailId];
71
+ const detailProps = {
72
+ modelData: detail,
73
+ controller,
74
+ key: detail.id
75
+ };
76
+ if (slots[detailId]) {
77
+ return renderSlot(slots, detailId, {
78
+ ...slotProps,
79
+ ...detailProps
80
+ });
81
+ }
82
+ const childSlots = {};
83
+ if (detail.detailType === "FORMITEM" && slots[`${detailId}_editor`]) {
84
+ childSlots.default = (...args) => {
85
+ return slots[`${detailId}_editor`](...args);
86
+ };
87
+ }
88
+ const childDetails = findChildFormDetails(detail);
89
+ if (childDetails.length) {
90
+ childSlots.default = () => childDetails.map((child) => {
91
+ return renderByDetailType(child, item, index);
92
+ });
93
+ }
94
+ const provider = (controller == null ? void 0 : controller.form).providers[detailId];
95
+ if (!provider) {
96
+ return createVNode("div", null, [createTextVNode("\u6682\u672A\u652F\u6301\u7684\u8868\u5355\u9879\u7C7B\u578B: "), detail.detailType, createTextVNode("\u6216\u627E\u4E0D\u5230\u5BF9\u5E94\u9002\u914D\u5668")]);
97
+ }
98
+ const component = resolveComponent(provider.component);
99
+ return createVNode(resolveComponent("iBizCol"), {
100
+ "layoutPos": detailProps.modelData.layoutPos,
101
+ "state": detailProps.controller.state
102
+ }, _isSlot(_slot = h(component, {
103
+ ...detailProps
104
+ }, childSlots)) ? _slot : {
105
+ default: () => [_slot]
106
+ });
107
+ };
108
+ return {
109
+ c,
110
+ ns,
111
+ renderByDetailType,
112
+ init
113
+ };
114
+ },
115
+ render() {
116
+ let _slot2;
117
+ if (!this.init) {
118
+ return;
119
+ }
120
+ const renderDetails = (item, index) => {
121
+ var _a;
122
+ if (!this.c.data) {
123
+ return null;
124
+ }
125
+ return (_a = this.controller.model.deformDetails) == null ? void 0 : _a.map((detail) => {
126
+ return this.renderByDetailType(detail, item, index);
127
+ });
128
+ };
129
+ return createVNode("div", {
130
+ "class": this.ns.b("form-content")
131
+ }, [createVNode("div", {
132
+ "class": this.ns.b("form-content-container")
133
+ }, [createVNode(resolveComponent("iBizRow"), {
134
+ "layout": this.c.model.layout
135
+ }, _isSlot(_slot2 = renderDetails(this.data, this.index)) ? _slot2 : {
136
+ default: () => [_slot2]
137
+ })]), this.buttonVisible && createVNode("div", {
138
+ "class": this.ns.b("btn")
139
+ }, [createVNode(resolveComponent("el-popconfirm"), {
140
+ "title": "\u662F\u5426\u5220\u9664\u8BE5\u9879",
141
+ "confirm-button-text": "\u786E\u8BA4",
142
+ "cancel-button-text": "\u53D6\u6D88",
143
+ "onConfirm": () => this.controller.onDataRemove(this.index)
144
+ }, {
145
+ reference: () => {
146
+ return createVNode(resolveComponent("el-button"), {
147
+ "type": "danger",
148
+ "class": this.ns.b("remove-btn")
149
+ }, {
150
+ default: () => [createTextVNode("\u5220\u9664")]
151
+ });
152
+ }
153
+ })])]);
154
+ }
155
+ });
156
+
157
+ export { FormMDCtrlRepeaterFormShell };
@@ -1,5 +1,4 @@
1
- import { PropType, VNode } from 'vue';
2
- import { IDEFormDetail } from '@ibiz/model-core';
1
+ import { PropType } from 'vue';
3
2
  import { FormMDCtrlRepeaterFormController } from '@ibiz-template/runtime';
4
3
  export declare const FormMDCtrlRepeaterForm: import("vue").DefineComponent<{
5
4
  controller: {
@@ -9,7 +8,6 @@ export declare const FormMDCtrlRepeaterForm: import("vue").DefineComponent<{
9
8
  }, {
10
9
  ns: import("@ibiz-template/core").Namespace;
11
10
  c: FormMDCtrlRepeaterFormController;
12
- renderByDetailType: (detail: IDEFormDetail, item: IData, index: number) => VNode | VNode[] | undefined;
13
11
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
14
12
  controller: {
15
13
  type: PropType<FormMDCtrlRepeaterFormController>;