@ibiz-template/mob-vue3-components 0.7.41-alpha.17 → 0.7.41-alpha.18
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/ibiz-markdown-editor-CpFrKPxk.js +2 -0
- package/dist/ibiz-markdown-editor-CpFrKPxk.js.map +1 -0
- package/dist/{index-CLxzVzNz.js → index-DO9R8HNp.js} +13 -13
- package/dist/index-DO9R8HNp.js.map +1 -0
- package/dist/index.min.css +3 -3
- package/dist/index.system.min.js +1 -1
- package/dist/{quill-CG16aqds.js → quill-DKjojHxx.js} +2 -2
- package/dist/{quill-CG16aqds.js.map → quill-DKjojHxx.js.map} +1 -1
- package/dist/quill-editor-B4FDYSA7.js +2 -0
- package/dist/quill-editor-B4FDYSA7.js.map +1 -0
- package/dist/{quill-editor-preview-YXGzGLmQ.js → quill-editor-preview-6GV-nd2y.js} +2 -2
- package/dist/{quill-editor-preview-YXGzGLmQ.js.map → quill-editor-preview-6GV-nd2y.js.map} +1 -1
- package/es/editor/cascader/ibiz-cascader/ibiz-cascader.mjs +3 -0
- package/es/editor/check-box/ibiz-checkbox/ibiz-checkbox.mjs +8 -2
- package/es/editor/date-range/date-range-editor.controller.mjs +4 -1
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +12 -0
- package/es/editor/html/html-editor.controller.mjs +52 -1
- package/es/editor/html/quill-editor/quill-editor.mjs +10 -1
- package/es/editor/index.mjs +13 -3
- package/es/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.mjs +10 -1
- package/es/editor/slider/ibiz-slider/ibiz-slider.mjs +25 -0
- package/es/editor/upload/ibiz-image-select/ibiz-image-select.mjs +5 -2
- package/es/editor/upload/ibiz-image-upload/ibiz-image-upload.mjs +5 -2
- package/es/editor/upload/upload-editor.controller.mjs +29 -1
- package/es/editor/upload/use/use-van-upload.mjs +8 -1
- package/es/platform/ios-platform-provider.mjs +11 -0
- package/es/platform/wechat-official-platform-provider.mjs +11 -0
- package/lib/editor/cascader/ibiz-cascader/ibiz-cascader.cjs +3 -0
- package/lib/editor/check-box/ibiz-checkbox/ibiz-checkbox.cjs +8 -2
- package/lib/editor/date-range/date-range-editor.controller.cjs +4 -1
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +12 -0
- package/lib/editor/html/html-editor.controller.cjs +52 -1
- package/lib/editor/html/quill-editor/quill-editor.cjs +10 -1
- package/lib/editor/index.cjs +14 -4
- package/lib/editor/markdown/ibiz-markdown-editor/ibiz-markdown-editor.cjs +10 -1
- package/lib/editor/slider/ibiz-slider/ibiz-slider.cjs +25 -0
- package/lib/editor/upload/ibiz-image-select/ibiz-image-select.cjs +5 -2
- package/lib/editor/upload/ibiz-image-upload/ibiz-image-upload.cjs +5 -2
- package/lib/editor/upload/upload-editor.controller.cjs +29 -1
- package/lib/editor/upload/use/use-van-upload.cjs +8 -1
- package/lib/platform/ios-platform-provider.cjs +11 -0
- package/lib/platform/wechat-official-platform-provider.cjs +11 -0
- package/package.json +5 -5
- package/dist/ibiz-markdown-editor-B7D3K0dJ.js +0 -2
- package/dist/ibiz-markdown-editor-B7D3K0dJ.js.map +0 -1
- package/dist/index-CLxzVzNz.js.map +0 -1
- package/dist/quill-editor-C7zYyQrk.js +0 -2
- package/dist/quill-editor-C7zYyQrk.js.map +0 -1
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
System.register(["vue","@ibiz-template/vue3-util","./quill-DKjojHxx.js","@ibiz-template/core","lodash-es","./index-DO9R8HNp.js","vant","ramda","@ibiz-template/runtime","@floating-ui/dom","vue-router","pinia","qx-util","dayjs","vuedraggable","qs","vue-i18n","@ibiz-template/devtool","@ibiz-template/model-helper"],function(O){"use strict";var C,a,u,s,h,x,y,z,w,T,E,N,U,k;return{setters:[function(t){C=t.defineComponent,a=t.createVNode,u=t.resolveComponent,s=t.ref,h=t.watch,x=t.isVNode,y=t.nextTick},function(t){z=t.getEditorEmits,w=t.getHtmlProps,T=t.useNamespace},function(t){E=t.Q},function(t){N=t.getAppCookie,U=t.CoreConst,k=t.base64ToBlob},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],execute:function(){function t(e){return typeof e=="function"||Object.prototype.toString.call(e)==="[object Object]"&&!x(e)}const V=O("default",C({name:"IBizQuill",props:w(),emits:z(),setup(e,{emit:d}){const c=T("quill"),i=e.controller,v=s(null),j=ibiz.i18n.getLang();let n=null;const B=s({[`${ibiz.env.tokenHeader}Authorization`]:`${ibiz.env.tokenPrefix}Bearer ${N(U.TOKEN)}`}),H=s(""),P=s(""),p=s(!1),b=s(!1),f=s(""),S=s(!0),q=o=>{const l=o.ops.find(r=>r.insert&&r.insert.image);if(l)return l.insert.image},M=()=>i.valueMode==="text"?n.getText():n.getSemanticHTML(),L=async o=>{const l=k(o),r=await ibiz.util.file.fileUpload(H.value,l,B.value),g=P.value.replace("%fileId%",r.fileid),m=M();f.value=m.replace(o,g)},Q=()=>{if(!v.value)return;const o=i.showToolbar?"snow":"bubble";n=new E(v.value,{theme:o,modules:i.modules,readOnly:e.disabled||e.readonly,placeholder:i.placeHolder}),n.on("text-change",(l,r,g)=>{if(g==="user"){const m=q(l);if(m&&i.imageMode==="file"){L(m);return}f.value=M()}}),i.valueMode==="text"&&n.setText(e.value||"")};return h(()=>[e.disabled,e.readonly],()=>{n&&(e.disabled||e.readonly?n.enable(!1):n.enable())},{immediate:!0}),h(()=>e.data,o=>{if(o){const l={...i.editorParams};l.uploadparams&&(l.uploadParams=JSON.parse(l.uploadparams)),l.exportparams&&(l.exportParams=JSON.parse(l.exportparams));const r=ibiz.util.file.calcFileUpDownUrl(i.context,i.params,o,l);H.value=r.uploadUrl,P.value=r.downloadUrl}},{immediate:!0,deep:!0}),h(()=>e.value,()=>{!n||!e.value||(f.value=e.value,i.valueMode==="text"?n.setText(e.value):(b.value=!0,y(()=>{b.value=!1})))},{immediate:!0}),{ns:c,c:i,lang:j,editing:p,updating:b,editorRef:v,isCollapse:S,handleEdit:()=>{n||Q()},handleCancel:()=>{p.value=!1},handleConfirm:()=>{d("change",f.value),p.value=!1}}},render(){let e,d;return a("div",{class:[this.ns.b(),this.disabled?this.ns.m("disabled"):"",this.readonly?this.ns.m("readonly"):"",this.ns.m(this.lang.toLowerCase())]},[!this.updating&&a(u("iBizQuillPreview"),{value:this.value,controller:this.controller,disabled:this.disabled,readonly:this.readonly,showCollapse:this.c.showCollapse,defaultHeight:this.c.defaultHeight,isCollapse:this.isCollapse,onEdit:()=>{this.editing=!0},onCollapse:c=>{this.isCollapse=c}},null),a(u("van-action-sheet"),{show:this.editing,"onUpdate:show":c=>this.editing=c,teleport:"body",class:[this.ns.e("popup"),this.ns.m(this.lang.toLowerCase())],onOpened:this.handleEdit},{default:()=>[a("div",{class:this.ns.e("content")},[a("div",{ref:"editorRef"},[this.controller.valueMode==="html"?a("div",{innerHTML:this.value},null):null])]),a("div",{class:this.ns.e("footer")},[a(u("van-button"),{class:this.ns.e("cancel"),onClick:this.handleCancel},t(e=ibiz.i18n.t("editor.common.cancel"))?e:{default:()=>[e]}),a(u("van-button"),{class:this.ns.e("confirm"),onClick:this.handleConfirm,type:"primary"},t(d=ibiz.i18n.t("editor.common.confirm"))?d:{default:()=>[d]})])]})])}}))}}});
|
|
2
|
+
//# sourceMappingURL=quill-editor-B4FDYSA7.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"quill-editor-B4FDYSA7.js","sources":["../src/editor/html/quill-editor/quill-editor.tsx"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nimport { defineComponent, nextTick, Ref, ref, watch } from 'vue';\nimport {\n getHtmlProps,\n getEditorEmits,\n useNamespace,\n} from '@ibiz-template/vue3-util';\nimport 'quill/dist/quill.core.css';\nimport 'quill/dist/quill.snow.css';\nimport 'quill/dist/quill.bubble.css';\nimport Quill from 'quill';\nimport { Delta } from 'quill/core';\nimport { base64ToBlob, CoreConst, getAppCookie } from '@ibiz-template/core';\nimport { HtmlEditorController } from '../html-editor.controller';\nimport './quill-editor.scss';\n\n/**\n * 移动端HTML编辑框\n * @primary\n * @description 基于Quill深度定制可扩展的富文本编辑器,集成文件/图片上传、实时预览及样式配置功能,提供完整的富媒体编辑解决方案。支持编辑器类型包含:`移动端HTML编辑框`\n * @editorparams {name:uploadparams,parameterType:string,description:上传参数,图片或文件上传时,用于计算上传路径}\n * @editorparams {name:exportparams,parameterType:string,description:下载参数,图片或文件下载时,用于计算下载路径}\n * @editorparams {name:osscat,parameterType:string,description:用于计算上传和下载路径的OSS参数}\n * @editorparams {name:showtoolbar,parameterType:boolean,defaultvalue:true,description:显示工具栏}\n * @editorparams {name:valuemode,parameterType:'text' | 'html',defaultvalue:html,description:值模式,暂时只支持html模式}\n * @editorparams {name:imagemode,parameterType:'base64' | 'file',defaultvalue:'file',description:图片模式}\n * @editorparams {name:modules,parameterType:string,description:quill配置}\n * @editorparams {name:defaultheight,parameterType:number,defaultvalue:200,description:收缩时的高度}\n * @editorparams {name:showcollapse,parameterType:boolean,defaultvalue:true,description:是否显示伸缩按钮}\n * @editorparams {name:readonly,parameterType:boolean,defaultvalue:false,description:设置编辑器是否为只读态}\n * @ignoreprops autoFocus | overflowMode\n * @ignoreemits blur | focus | infoTextChange | enter\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst IBizQuill: any = defineComponent({\n name: 'IBizQuill',\n props: getHtmlProps<HtmlEditorController>(),\n emits: getEditorEmits(),\n setup(props, { emit }) {\n const ns = useNamespace('quill');\n const c: HtmlEditorController = props.controller;\n\n const editorRef = ref(null);\n\n const lang = ibiz.i18n.getLang();\n\n // 编辑器对象\n let quill: Quill | null = null;\n\n // 请求头\n const headers: Ref<IData> = ref({\n [`${ibiz.env.tokenHeader}Authorization`]: `${\n ibiz.env.tokenPrefix\n }Bearer ${getAppCookie(CoreConst.TOKEN)}`,\n });\n\n // 上传文件路径\n const uploadUrl: Ref<string> = ref('');\n\n // 下载文件路径\n const downloadUrl: Ref<string> = ref('');\n\n // 编辑状态\n const editing: Ref<boolean> = ref(false);\n\n // 更新中\n const updating: Ref<boolean> = ref(false);\n\n // 临时数据\n const tempValue: Ref<string> = ref('');\n\n // 是否完全展开\n const isCollapse: Ref<boolean> = ref(true);\n\n const getImage = (delta: Delta) => {\n const item = delta.ops.find(x => x.insert && (x.insert as IData).image);\n if (item) {\n return (item.insert as IData).image;\n }\n };\n\n const getValue = () => {\n if (c.valueMode === 'text') {\n return quill!.getText();\n }\n return quill!.getSemanticHTML();\n };\n\n // 处理图片上传(文件模式)\n const handleUpload = async (image: string) => {\n const blob = base64ToBlob(image);\n const file = await ibiz.util.file.fileUpload(\n uploadUrl.value,\n blob,\n headers.value,\n );\n const url = downloadUrl.value.replace('%fileId%', file.fileid);\n const value = getValue();\n tempValue.value = value.replace(image, url);\n };\n\n const init = () => {\n if (!editorRef.value) {\n return;\n }\n const theme = c.showToolbar ? 'snow' : 'bubble';\n quill = new Quill(editorRef.value, {\n theme,\n modules: c.modules,\n readOnly: props.disabled || props.readonly,\n placeholder: c.placeHolder,\n });\n quill.on('text-change', (delta, oldDelta, source) => {\n if (source === 'user') {\n const image = getImage(delta);\n if (image && c.imageMode === 'file') {\n handleUpload(image);\n return;\n }\n tempValue.value = getValue();\n }\n });\n if (c.valueMode === 'text') {\n quill.setText(props.value || '');\n }\n };\n\n watch(\n () => [props.disabled, props.readonly],\n () => {\n if (!quill) {\n return;\n }\n if (props.disabled || props.readonly) {\n quill.enable(false);\n } else {\n quill.enable();\n }\n },\n { immediate: true },\n );\n\n // data响应式变更基础路径\n watch(\n () => props.data,\n newVal => {\n if (newVal) {\n const editorParams = { ...c.editorParams };\n if (editorParams.uploadparams) {\n editorParams.uploadParams = JSON.parse(editorParams.uploadparams);\n }\n if (editorParams.exportparams) {\n editorParams.exportParams = JSON.parse(editorParams.exportparams);\n }\n const urls = ibiz.util.file.calcFileUpDownUrl(\n c.context,\n c.params,\n newVal,\n editorParams,\n );\n uploadUrl.value = urls.uploadUrl;\n downloadUrl.value = urls.downloadUrl;\n }\n },\n { immediate: true, deep: true },\n );\n\n watch(\n () => props.value,\n () => {\n if (!quill || !props.value) {\n return;\n }\n tempValue.value = props.value;\n if (c.valueMode === 'text') {\n quill.setText(props.value);\n } else {\n updating.value = true;\n nextTick(() => {\n updating.value = false;\n });\n }\n },\n { immediate: true },\n );\n\n // 展开编辑\n const handleEdit = () => {\n if (!quill) {\n init();\n }\n };\n\n // 取消编辑\n const handleCancel = () => {\n editing.value = false;\n };\n\n // 确认编辑\n const handleConfirm = () => {\n emit('change', tempValue.value);\n editing.value = false;\n };\n\n return {\n ns,\n c,\n lang,\n editing,\n updating,\n editorRef,\n isCollapse,\n handleEdit,\n handleCancel,\n handleConfirm,\n };\n },\n render() {\n return (\n <div\n class={[\n this.ns.b(),\n this.disabled ? this.ns.m('disabled') : '',\n this.readonly ? this.ns.m('readonly') : '',\n this.ns.m(this.lang.toLowerCase()),\n ]}\n >\n {!this.updating && (\n <iBizQuillPreview\n value={this.value}\n controller={this.controller}\n disabled={this.disabled}\n readonly={this.readonly}\n showCollapse={this.c.showCollapse}\n defaultHeight={this.c.defaultHeight}\n isCollapse={this.isCollapse}\n onEdit={() => {\n this.editing = true;\n }}\n onCollapse={(val: boolean) => {\n this.isCollapse = val;\n }}\n />\n )}\n <van-action-sheet\n v-model:show={this.editing}\n teleport='body'\n class={[this.ns.e('popup'), this.ns.m(this.lang.toLowerCase())]}\n onOpened={this.handleEdit}\n >\n <div class={this.ns.e('content')}>\n <div ref='editorRef'>\n {this.controller.valueMode === 'html' ? (\n <div v-html={this.value}></div>\n ) : null}\n </div>\n </div>\n <div class={this.ns.e('footer')}>\n <van-button class={this.ns.e('cancel')} onClick={this.handleCancel}>\n {ibiz.i18n.t('editor.common.cancel')}\n </van-button>\n <van-button\n class={this.ns.e('confirm')}\n onClick={this.handleConfirm}\n type='primary'\n >\n {ibiz.i18n.t('editor.common.confirm')}\n </van-button>\n </div>\n </van-action-sheet>\n </div>\n );\n },\n});\n\nexport default IBizQuill;\n"],"names":["s","_isVNode","IBizQuill","exports","defineComponent","getHtmlProps","getEditorEmits","props","emit","ns","useNamespace","c","editorRef","ref","lang","quill","headers","getAppCookie","CoreConst","uploadUrl","editing","updating","isCollapse","delta","emits","x","setup","controller","getLang","blob","base64ToBlob","image","downloadUrl","env","value","getValue","Quill","theme","oldDelta","source","tempValue","getImage","item","watch","handleUpload","file","init","newVal","editorParams","readOnly","placeholder","placeHolder","urls","disabled","nextTick","immediate","deep","uploadparams","_slot","_slot2","valueMode","setText","_resolveComponent","val","handleEdit","_createVNode","$event","handleCancel","handleConfirm","render"],"mappings":"kvBAgBA,OAAA,OAAAA,GAAA,YAAA,OAAA,UAAA,SAAA,KAAAA,CAAA,IAAA,mBAAA,CAAAC,EAAAD,CAAA,CACA,CACA,MAAAE,EAAAC,EAAA,UAAAC,EAAA,CACA,KAAA,YACA,MAAAC,EAAA,EACA,MAAAC,EAAA,EACA,MAAAC,EAAA,CACA,KAAAC,CACA,EAAA,CACA,MAAAC,EAAAC,EAAA,OAAA,EACAC,EAAAJ,EAAA,WACAK,EAAAC,EAAA,IAAA,EACAC,EAAA,KAAA,KAAA,QAAA,EACA,IAAAC,EAAA,KACA,MAAAC,EAAAH,EAAA,CACA,CAAA,GAAA,KAAA,IAAA,WAAA,eAAA,EAAA,GAAA,KAAA,IAAA,WAAA,UAAAI,EAAAC,EAAA,KAAA,CAAA,EACA,CAAA,EACAC,EAAAN,EAAA,EAAA,IAAAA,EAAA,EAAA,EAAAO,EAAAP,EAAA,EAAA,EAAAQ,EAAAR,EAAA,EAAA,EACMX,EAAiBE,EAAAA,EAAAA,EACfkB,EAAWT,EAAA,EAAA,EACVR,EAAmCkB,GAAC,CAC3CC,MAAOlB,EAAAA,EAAgB,IAAA,KAAAmB,GAAAA,EAAA,QAAAA,EAAA,OAAA,KAAA,EACvBC,KAAelB,OAAAA,EAAAA,OAAAA,KACb,EACMG,EAAgCgB,IAEhCf,EAAAA,YAAgB,SAEL,QAAMgB,EAEvBb,EAAA,gBAAA,cAGA,MAAAc,EAAAC,EAAAC,CAAA,EACMf,EAAmB,MAAO,KAAA,KAAA,KAAA,WAAAG,EAAA,MAAAU,EAAAb,EAAA,KAAA,IAClBgB,EAAY,MAAA,QAAA,WACjBC,UAEPC,EAAAC,EAAA,wBAEF,EACMhB,EAAAA,IAAyBN,aAE/B,6CAGAE,EAAA,IAAAqB,EAAAxB,EAAA,MAAA,CACA,MAAAyB,oBAEA,SAAA9B,EAAA,UAAAA,EAAA,SACA,YAA+BM,EAAAA,cAE/BE,EAAA,GAAA,cAAA,CAAAQ,EAAAe,EAAAC,IAAA,CACA,GAAMC,IAAyB3B,OAAO,cAEtC,GAAAkB,GAAApB,EAAA,YAAA,OAAA,CACMW,EAA2BT,GAE3B4B,MACJ,CACIC,EAAM,MAAAP,EAAA,CACR,CACF,CAAA,EACDxB,EAAA,YAAA,QAEDI,EAAMoB,QAAW5B,EAAM,OAAA,EAAA,CAEnB,EACF,OAAAoC,EAAA,IAAA,CAAApC,EAAA,SAAAA,EAAA,QAAA,EAAA,IAAA,CACAQ,IAGFR,EAAA,UAAAA,EAAA,SACAQ,EAAM6B,OAAAA,EAAe,EAEnB7B,EAAM8B,OAAO,EAMb,EAAA,CACAL,UAAUN,GACX,EAEDS,EAAMG,IAAIvC,EAAG,KAAMwC,GAAA,CACjB,GAAIA,EAACnC,CACH,MAAAoC,EAAA,CACF,GAAArC,EAAA,gBAEkBC,eAChByB,EAAK,aAAA,KAAA,MAAAW,EAAA,YAAA,GAELC,iBACAC,EAAeC,aAAAA,KAAAA,MAAAA,EAAAA,YAAAA,GAEjBpC,MAAQqC,EAAC,KAAA,KAAgB7B,KAAK,kBAAkBZ,EAAA,QAAKA,EAAA,OAAAoC,EAAAC,CAAA,EACnD7B,EAAU,MAAKiC,EAAQ,UACrBpB,EAAMD,MAAQU,EAASlB,WACvB,IAEE,UAAA,GACF,KAAA,EACAiB,CAAAA,EACFG,EAAA,IAAApC,EAAA,MAAA,IAAA,CACA,CAAAQ,GAAA,CAAAR,EAAA,QAGFiC,EAAA,MAAAjC,EAAA,MACDI,EAAA,YAAA,OAEDgC,EACE,QAAYpC,EAAC8C,KAAU9C,GAGnBc,EAAA,MAAA,GACFiC,EAAA,IAAA,CACI/C,EAAM8C,QACRtC,CAAAA,MAGF,UAAA,EACF,CAAC,EAaG,MAEA,EAAAJ,SAOAQ,QAAAA,EACAa,SAAAA,EACF,UAAApB,EACD,WAAAU,EACCiC,WAzBW,IAAA,CACdxC,MAGD4B,EAqBqBa,aAlBL,IAAA,CACVpC,EAAM4B,QAAiB,EAkB5B,cAlB+C,IAAA,GAC1C,SAAIA,EAAaS,KAAAA,IACfT,MAAY,EACd,CAiBNL,CAGI,EACE,QAAA,CACF,IAAAe,EAAAC,EACAnB,OAAAA,EAAkBjC,MAAM2B,CACxB,MAAM0B,CAAAA,KAAS,GAAA,EAAA,OAAa,SAAA,KAAA,GAAA,EAAA,UAAA,EAAA,GAAA,KAAA,SAAA,KAAA,GAAA,EAAA,UAAA,EAAA,GAAA,KAAA,GAAA,EAAA,KAAA,KAAA,YAAA,CAAA,CAAA,CAC1B7C,EAAAA,CAAAA,CAAAA,KAAM8C,UAAQtD,EAAYuD,EAAA,kBAAA,EAAA,CAC5B,MAAO,KAAA,iBACI5B,KAAQ,WACjBoB,SAAS,KAAM,kBACL,KAACpB,SACX,aAAE,KAAA,EAAA,aACJ,cAAA,KAAA,EAAA,cACD,WACD,KAAA,WAAEqB,OAAS,IAAE,CACd,KAAA,QAAA,IAED,WAAAQ,GAAA,CACA,KAAMC,WAAaD,CACjB,CACEjB,EAAAA,IAAAA,EAAMmB,EAAAH,EAAA,kBAAA,EAAA,CACR,KAAA,KAAA,QACD,gBAAAI,GAAA,KAAA,QAAAA,kBAED,MAAA,CAAA,KAAA,GAAA,EAAA,OAAA,EAAA,KAAA,GAAA,EAAA,KAAA,KAAA,YAAA,CAAA,CAAA,EACA,SAAMC,KAAY,YAChB/C,CACD,QAAA,IAAA,CAAA6C,EAAA,MAAA,2BAED,EAAA,CAAAA,EAAA,MAAA,CACA,IAAMG,WACJ5D,EAAAA,CAAI,KAAC,WAAUgC,YAAgB,OAAAyB,EAAA,MAAA,CAC/B7C,UAAa,KAAG,OACjB,IAAA,EAAA,IAAA,CAAA,CAAA,CAAA,EAAA6C,EAAA,MAAA,CAED,MAAO,KAAA,GAAA,EAAA,QAAA,GACH,CAAAA,EAAAH,EAAA,YAAA,EAAA,CACD,MAAA,KAAA,GAAA,EAAA,QAAA,EACDhD,QAAI,KAAA,cACJM,EAAOsC,EAAA,KAAA,KAAA,EAAA,sBAAA,CAAA,EAAAA,EAAA,CACPrC,QAAQ,IAAA,CAAAqC,CAAA,EACR9C,EAAAA,EAASkD,EAAA,YAAA,EAAA,CACTxC,MAAU,KAAA,GAAA,EAAA,SAAA,EACV0C,QAAU,KAAA,cACVG,KAAAA,SACAC,EAAAA,EAAAA,EAAAA,KAAAA,KAAAA,EAAAA,uBAAAA,CAAAA,EAAAA,EAAAA,CACD,QAAA,IAAA,CAAAT,CAAA,EACF,CAAA,CAAA,CAAA,CACDU,CAAAA,CAAAA,CAAAA,EACE,CAAA,CAAA"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
System.register(["vue","@ibiz-template/vue3-util","./quill-
|
|
2
|
-
//# sourceMappingURL=quill-editor-preview-
|
|
1
|
+
System.register(["vue","@ibiz-template/vue3-util","./quill-DKjojHxx.js","lodash-es","./index-DO9R8HNp.js","vant","@ibiz-template/core","ramda","@ibiz-template/runtime","@floating-ui/dom","vue-router","pinia","qx-util","dayjs","vuedraggable","qs","vue-i18n","@ibiz-template/devtool","@ibiz-template/model-helper"],function(k){"use strict";var v,l,r,s,p,f,m,g,C,w;return{setters:[function(e){v=e.defineComponent,l=e.createVNode,r=e.resolveComponent,s=e.ref,p=e.onMounted,f=e.nextTick,m=e.watch},function(e){g=e.getHtmlProps,C=e.useNamespace},function(e){w=e.Q},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],execute:function(){const e=k("default",v({name:"IBizQuillPreview",props:{...g(),showCollapse:{type:Boolean},defaultHeight:{type:Number,default:200},isCollapse:{type:Boolean,default:!1}},setup(t,{emit:b}){const H=C("quill-preview"),c=t.controller,i=s(null),B=ibiz.i18n.getLang();let x=null;const h=s(""),o=s("auto"),u=s(!1),I=()=>{i.value&&(x=new w(i.value,{theme:"bubble",modules:c.modules,readOnly:!0,placeholder:c.placeHolder}),c.valueMode==="text"&&x.setText(t.value||""))},d=()=>{if(t.isCollapse&&i.value){const n=i.value.offsetHeight;n<t.defaultHeight?(o.value=`${n}px`,u.value=!1):(o.value=`${t.defaultHeight}px`,u.value=!0)}},P=n=>{if(!n)return;const a=n.querySelectorAll("img");let y=0;a.forEach(z=>{z.addEventListener("load",()=>{const T=z.offsetHeight;y+=T,y>t.defaultHeight&&(o.value=`${t.defaultHeight}px`,u.value=!0)})})};p(()=>{I(),f(()=>{d(),P(i.value)})});const q=()=>{b("edit")},M=()=>{h.value=""},N=n=>{const a=n.target;a&&a.tagName==="IMG"&&(h.value=a.src)},L=()=>{b("collapse",!t.isCollapse),d()},Q=()=>l("div",{class:H.b("collapse-btn"),onClick:L},[l("span",null,[t.isCollapse?ibiz.i18n.t("editor.html.expand"):ibiz.i18n.t("editor.html.collapse")]),t.isCollapse&&l("ion-icon",{name:"caret-down-outline"},null),!t.isCollapse&&l("ion-icon",{name:"caret-up-outline"},null)]);return m(()=>t.value,()=>{d()},{immediate:!0}),{ns:H,lang:B,editorRef:i,previewImage:h,collapseHeight:o,showCollapseBtn:u,handleClick:q,handleContentClick:N,handlePreviewClose:M,renderCollapseBtn:Q}},render(){return l("div",{class:[this.ns.b(),this.disabled?this.ns.m("disabled"):"",this.readonly?this.ns.m("readonly"):"",this.ns.m(this.lang.toLowerCase()),this.showCollapse?this.ns.m("show-collapse"):"",this.ns.is("collapse",this.isCollapse)],style:`--default-height: ${this.collapseHeight}`},[l("div",{ref:"editorRef",onClick:this.handleContentClick},[this.controller.valueMode==="html"?l("div",{innerHTML:this.value},null):null]),!this.readonly&&!this.disabled?l("div",{onClick:this.handleClick,class:this.ns.e("edit")},[l("ion-icon",{name:"create-outline"},null)]):null,this.showCollapse&&this.showCollapseBtn&&this.renderCollapseBtn(),l(r("van-popup"),{class:this.ns.e("image-popup"),show:!!this.previewImage,"close-on-popstate":!0,onClose:this.handlePreviewClose},{default:()=>[l(r("iBizPreviewImage"),{url:this.previewImage},null)]})])}}))}}});
|
|
2
|
+
//# sourceMappingURL=quill-editor-preview-6GV-nd2y.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quill-editor-preview-
|
|
1
|
+
{"version":3,"file":"quill-editor-preview-6GV-nd2y.js","sources":["../src/editor/html/quill-editor-preview/quill-editor-preview.tsx"],"sourcesContent":["/* eslint-disable import/no-extraneous-dependencies */\nimport { defineComponent, nextTick, onMounted, ref, watch } from 'vue';\nimport { getHtmlProps, useNamespace } from '@ibiz-template/vue3-util';\nimport Quill from 'quill';\nimport { HtmlEditorController } from '../html-editor.controller';\nimport './quill-editor-preview.scss';\n\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nconst IBizQuillPreview: any = defineComponent({\n name: 'IBizQuillPreview',\n props: {\n ...getHtmlProps<HtmlEditorController>(),\n showCollapse: {\n type: Boolean,\n },\n defaultHeight: {\n type: Number,\n default: 200,\n },\n isCollapse: {\n type: Boolean,\n default: false,\n },\n },\n setup(props, { emit }) {\n const ns = useNamespace('quill-preview');\n const c: HtmlEditorController = props.controller;\n\n const editorRef = ref(null);\n\n const lang = ibiz.i18n.getLang();\n\n // 编辑器对象\n let quill: Quill | null = null;\n\n // 预览图片路径\n const previewImage = ref('');\n\n // 伸缩内容高度\n const collapseHeight = ref('auto');\n\n // 显示伸缩按钮\n const showCollapseBtn = ref(false);\n\n const init = () => {\n if (!editorRef.value) {\n return;\n }\n quill = new Quill(editorRef.value, {\n theme: 'bubble',\n modules: c.modules,\n readOnly: true,\n placeholder: c.placeHolder,\n });\n if (c.valueMode === 'text') {\n quill.setText(props.value || '');\n }\n };\n\n // 重置伸缩高度\n const resetCollapseHeight = () => {\n if (props.isCollapse && editorRef.value) {\n // 收缩时\n const height = (editorRef.value as HTMLElement).offsetHeight;\n // 内容高度低于设置的默认高度时,拿内容高度作为伸缩高度\n if (height < props.defaultHeight) {\n collapseHeight.value = `${height}px`;\n showCollapseBtn.value = false;\n } else {\n collapseHeight.value = `${props.defaultHeight}px`;\n showCollapseBtn.value = true;\n }\n }\n };\n\n // 监听img加载情况\n const watchHtmlImages = (container: HTMLElement | null) => {\n if (!container) return;\n const images = container.querySelectorAll('img');\n let totalHieght = 0;\n images.forEach(image => {\n image.addEventListener('load', () => {\n const height = image.offsetHeight;\n totalHieght += height;\n if (totalHieght > props.defaultHeight) {\n collapseHeight.value = `${props.defaultHeight}px`;\n showCollapseBtn.value = true;\n }\n });\n });\n };\n\n onMounted(() => {\n init();\n nextTick(() => {\n resetCollapseHeight();\n watchHtmlImages(editorRef.value);\n });\n });\n\n const handleClick = () => {\n emit('edit');\n };\n\n const handlePreviewClose = () => {\n previewImage.value = '';\n };\n\n const handleContentClick = (event: MouseEvent) => {\n const target = event.target as HTMLElement;\n if (target && target.tagName === 'IMG') {\n previewImage.value = (target as IData).src;\n }\n };\n\n // 点击伸缩按钮\n const onClick = () => {\n // isCollapse.value = !isCollapse.value;\n emit('collapse', !props.isCollapse);\n resetCollapseHeight();\n };\n\n // 绘制伸缩按钮\n const renderCollapseBtn = () => {\n return (\n <div class={ns.b('collapse-btn')} onClick={onClick}>\n <span>\n {props.isCollapse\n ? ibiz.i18n.t('editor.html.expand')\n : ibiz.i18n.t('editor.html.collapse')}\n </span>\n {props.isCollapse && <ion-icon name='caret-down-outline'></ion-icon>}\n {!props.isCollapse && <ion-icon name='caret-up-outline'></ion-icon>}\n </div>\n );\n };\n\n watch(\n () => props.value,\n () => {\n resetCollapseHeight();\n },\n {\n immediate: true,\n },\n );\n\n return {\n ns,\n lang,\n editorRef,\n previewImage,\n collapseHeight,\n showCollapseBtn,\n handleClick,\n handleContentClick,\n handlePreviewClose,\n renderCollapseBtn,\n };\n },\n render() {\n return (\n <div\n class={[\n this.ns.b(),\n this.disabled ? this.ns.m('disabled') : '',\n this.readonly ? this.ns.m('readonly') : '',\n this.ns.m(this.lang.toLowerCase()),\n this.showCollapse ? this.ns.m('show-collapse') : '',\n this.ns.is('collapse', this.isCollapse),\n ]}\n style={`--default-height: ${this.collapseHeight}`}\n >\n <div ref='editorRef' onClick={this.handleContentClick}>\n {this.controller.valueMode === 'html' ? (\n <div v-html={this.value}></div>\n ) : null}\n </div>\n {!this.readonly && !this.disabled ? (\n <div onClick={this.handleClick} class={this.ns.e('edit')}>\n <ion-icon name='create-outline'></ion-icon>\n </div>\n ) : null}\n {this.showCollapse && this.showCollapseBtn && this.renderCollapseBtn()}\n <van-popup\n class={this.ns.e('image-popup')}\n show={!!this.previewImage}\n close-on-popstate={true}\n onClose={this.handlePreviewClose}\n >\n <iBizPreviewImage url={this.previewImage}></iBizPreviewImage>\n </van-popup>\n </div>\n );\n },\n});\n\nexport default IBizQuillPreview;\n"],"names":["IBizQuillPreview","name","props","getHtmlProps","showCollapse","type","Boolean","defaultHeight","default","isCollapse","emit","setup","ns","useNamespace","c","controller","quill","editorRef","lang","getLang","showCollapseBtn","ref","collapseHeight","init","value","theme","modules","readOnly","placeholder","placeHolder","resetCollapseHeight","container","images","offsetHeight","totalHieght","height","image","onMounted","watchHtmlImages","nextTick","previewImage","handleContentClick","event","target","renderCollapseBtn","_createVNode","handlePreviewClose","watch","handleClick","immediate","_resolveComponent","render"],"mappings":"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"}
|
|
@@ -36,6 +36,9 @@ const IBizCascader = /* @__PURE__ */ defineComponent({
|
|
|
36
36
|
if (editorModel.editorParams.editorStyle) {
|
|
37
37
|
editorStyle = editorModel.editorParams.editorStyle;
|
|
38
38
|
}
|
|
39
|
+
if (editorModel.editorParams.editorstyle) {
|
|
40
|
+
editorStyle = editorModel.editorParams.editorstyle;
|
|
41
|
+
}
|
|
39
42
|
if (editorModel.editorParams.separator) {
|
|
40
43
|
separator = editorModel.editorParams.separator;
|
|
41
44
|
}
|
|
@@ -10,7 +10,7 @@ const IBizCheckbox = /* @__PURE__ */ defineComponent({
|
|
|
10
10
|
setup(props, {
|
|
11
11
|
emit
|
|
12
12
|
}) {
|
|
13
|
-
var _a, _b;
|
|
13
|
+
var _a, _b, _c, _d;
|
|
14
14
|
const ns = useNamespace("checkbox");
|
|
15
15
|
const c = props.controller;
|
|
16
16
|
const editorModel = c.model;
|
|
@@ -19,9 +19,15 @@ const IBizCheckbox = /* @__PURE__ */ defineComponent({
|
|
|
19
19
|
if ((_a = editorModel.editorParams) == null ? void 0 : _a.selectValue) {
|
|
20
20
|
selectValue = editorModel.editorParams.selectValue;
|
|
21
21
|
}
|
|
22
|
-
if ((_b = editorModel.editorParams) == null ? void 0 : _b.
|
|
22
|
+
if ((_b = editorModel.editorParams) == null ? void 0 : _b.selectvalue) {
|
|
23
|
+
selectValue = editorModel.editorParams.selectvalue;
|
|
24
|
+
}
|
|
25
|
+
if ((_c = editorModel.editorParams) == null ? void 0 : _c.nullValue) {
|
|
23
26
|
nullValue = editorModel.editorParams.nullValue;
|
|
24
27
|
}
|
|
28
|
+
if ((_d = editorModel.editorParams) == null ? void 0 : _d.nullvalue) {
|
|
29
|
+
nullValue = editorModel.editorParams.nullvalue;
|
|
30
|
+
}
|
|
25
31
|
const currentVal = computed({
|
|
26
32
|
get() {
|
|
27
33
|
if (props.value === selectValue) {
|
|
@@ -26,7 +26,7 @@ class DateRangeEditorController extends EditorController {
|
|
|
26
26
|
* @memberof DateRangeEditorController
|
|
27
27
|
*/
|
|
28
28
|
async onInit() {
|
|
29
|
-
var _a;
|
|
29
|
+
var _a, _b;
|
|
30
30
|
super.onInit();
|
|
31
31
|
if (!this.placeHolder) {
|
|
32
32
|
this.placeHolder = ibiz.i18n.t("editor.dateRangePicker.selectRange");
|
|
@@ -34,6 +34,9 @@ class DateRangeEditorController extends EditorController {
|
|
|
34
34
|
if (((_a = this.editorParams) == null ? void 0 : _a.SHOWMODE) === "CALENDAR") {
|
|
35
35
|
this.showmode = "CALENDAR";
|
|
36
36
|
}
|
|
37
|
+
if (((_b = this.editorParams) == null ? void 0 : _b.showmode) === "CALENDAR") {
|
|
38
|
+
this.showmode = "CALENDAR";
|
|
39
|
+
}
|
|
37
40
|
}
|
|
38
41
|
/**
|
|
39
42
|
* 根据编辑器类型获取格式化
|
|
@@ -47,15 +47,27 @@ const IBizDateRangePicker = /* @__PURE__ */ defineComponent({
|
|
|
47
47
|
if (editorModel.editorParams.valueSeparator) {
|
|
48
48
|
valueSeparator = editorModel.editorParams.valueSeparator;
|
|
49
49
|
}
|
|
50
|
+
if (editorModel.editorParams.valueseparator) {
|
|
51
|
+
valueSeparator = editorModel.editorParams.valueseparator;
|
|
52
|
+
}
|
|
50
53
|
if (editorModel.editorParams.startPlaceHolder) {
|
|
51
54
|
startPlaceHolder = editorModel.editorParams.startPlaceHolder;
|
|
52
55
|
}
|
|
56
|
+
if (editorModel.editorParams.startplaceholder) {
|
|
57
|
+
startPlaceHolder = editorModel.editorParams.startplaceholder;
|
|
58
|
+
}
|
|
53
59
|
if (editorModel.editorParams.endPlaceHolder) {
|
|
54
60
|
endPlaceHolder = editorModel.editorParams.endPlaceHolder;
|
|
55
61
|
}
|
|
62
|
+
if (editorModel.editorParams.endplaceholder) {
|
|
63
|
+
endPlaceHolder = editorModel.editorParams.endplaceholder;
|
|
64
|
+
}
|
|
56
65
|
if (editorModel.editorParams.rangeSeparator) {
|
|
57
66
|
rangeSeparator = editorModel.editorParams.rangeSeparator;
|
|
58
67
|
}
|
|
68
|
+
if (editorModel.editorParams.rangeseparator) {
|
|
69
|
+
rangeSeparator = editorModel.editorParams.rangeseparator;
|
|
70
|
+
}
|
|
59
71
|
}
|
|
60
72
|
const format = ref("YYYY-MM-DD");
|
|
61
73
|
const valueFormat = c.valueFormat;
|
|
@@ -81,7 +81,15 @@ class HtmlEditorController extends EditorController {
|
|
|
81
81
|
IMAGEMODE,
|
|
82
82
|
MODULES,
|
|
83
83
|
DEFAULTHEIGHT,
|
|
84
|
-
SHOWCOLLAPSE
|
|
84
|
+
SHOWCOLLAPSE,
|
|
85
|
+
uploadparams,
|
|
86
|
+
exportparams,
|
|
87
|
+
showtoolbar,
|
|
88
|
+
valuemode,
|
|
89
|
+
imagemode,
|
|
90
|
+
modules,
|
|
91
|
+
defaultheight,
|
|
92
|
+
showcollapse
|
|
85
93
|
} = this.editorParams;
|
|
86
94
|
if (uploadParams) {
|
|
87
95
|
try {
|
|
@@ -94,6 +102,17 @@ class HtmlEditorController extends EditorController {
|
|
|
94
102
|
);
|
|
95
103
|
}
|
|
96
104
|
}
|
|
105
|
+
if (uploadparams) {
|
|
106
|
+
try {
|
|
107
|
+
this.uploadParams = JSON.parse(uploadparams);
|
|
108
|
+
} catch (error) {
|
|
109
|
+
ibiz.log.error(
|
|
110
|
+
`\u7F16\u8F91\u5668[${ibiz.log.error(
|
|
111
|
+
error
|
|
112
|
+
)}]\u7F16\u8F91\u5668\u53C2\u6570 uploadParams \u975E json \u683C\u5F0F`
|
|
113
|
+
);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
97
116
|
if (exportParams) {
|
|
98
117
|
try {
|
|
99
118
|
this.exportParams = JSON.parse(exportParams);
|
|
@@ -105,27 +124,59 @@ class HtmlEditorController extends EditorController {
|
|
|
105
124
|
);
|
|
106
125
|
}
|
|
107
126
|
}
|
|
127
|
+
if (exportparams) {
|
|
128
|
+
try {
|
|
129
|
+
this.exportParams = JSON.parse(exportparams);
|
|
130
|
+
} catch (error) {
|
|
131
|
+
ibiz.log.error(
|
|
132
|
+
`\u7F16\u8F91\u5668[${ibiz.log.error(
|
|
133
|
+
error
|
|
134
|
+
)}]\u7F16\u8F91\u5668\u53C2\u6570 exportParams \u975E json \u683C\u5F0F`
|
|
135
|
+
);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
108
138
|
if (SHOWTOOLBAR) {
|
|
109
139
|
this.showToolbar = this.toBoolean(SHOWTOOLBAR);
|
|
110
140
|
}
|
|
141
|
+
if (showtoolbar) {
|
|
142
|
+
this.showToolbar = this.toBoolean(showtoolbar);
|
|
143
|
+
}
|
|
111
144
|
if (VALUEMODE) {
|
|
112
145
|
this.valueMode = VALUEMODE.toLowerCase();
|
|
113
146
|
}
|
|
147
|
+
if (valuemode) {
|
|
148
|
+
this.valueMode = valuemode.toLowerCase();
|
|
149
|
+
}
|
|
114
150
|
if (IMAGEMODE) {
|
|
115
151
|
this.imageMode = IMAGEMODE.toLowerCase();
|
|
116
152
|
}
|
|
153
|
+
if (imagemode) {
|
|
154
|
+
this.imageMode = imagemode.toLowerCase();
|
|
155
|
+
}
|
|
117
156
|
if (MODULES) {
|
|
118
157
|
this.modules = ScriptFactory.execScriptFn(
|
|
119
158
|
{ controller: this },
|
|
120
159
|
MODULES
|
|
121
160
|
);
|
|
122
161
|
}
|
|
162
|
+
if (modules) {
|
|
163
|
+
this.modules = ScriptFactory.execScriptFn(
|
|
164
|
+
{ controller: this },
|
|
165
|
+
modules
|
|
166
|
+
);
|
|
167
|
+
}
|
|
123
168
|
if (DEFAULTHEIGHT) {
|
|
124
169
|
this.defaultHeight = Number(DEFAULTHEIGHT);
|
|
125
170
|
}
|
|
171
|
+
if (defaultheight) {
|
|
172
|
+
this.defaultHeight = Number(defaultheight);
|
|
173
|
+
}
|
|
126
174
|
if (SHOWCOLLAPSE) {
|
|
127
175
|
this.showCollapse = this.toBoolean(SHOWCOLLAPSE);
|
|
128
176
|
}
|
|
177
|
+
if (showcollapse) {
|
|
178
|
+
this.showCollapse = this.toBoolean(showcollapse);
|
|
179
|
+
}
|
|
129
180
|
}
|
|
130
181
|
}
|
|
131
182
|
}
|
|
@@ -91,7 +91,16 @@ const IBizQuill = /* @__PURE__ */ defineComponent({
|
|
|
91
91
|
});
|
|
92
92
|
watch(() => props.data, (newVal) => {
|
|
93
93
|
if (newVal) {
|
|
94
|
-
const
|
|
94
|
+
const editorParams = {
|
|
95
|
+
...c.editorParams
|
|
96
|
+
};
|
|
97
|
+
if (editorParams.uploadparams) {
|
|
98
|
+
editorParams.uploadParams = JSON.parse(editorParams.uploadparams);
|
|
99
|
+
}
|
|
100
|
+
if (editorParams.exportparams) {
|
|
101
|
+
editorParams.exportParams = JSON.parse(editorParams.exportparams);
|
|
102
|
+
}
|
|
103
|
+
const urls = ibiz.util.file.calcFileUpDownUrl(c.context, c.params, newVal, editorParams);
|
|
95
104
|
uploadUrl.value = urls.uploadUrl;
|
|
96
105
|
downloadUrl.value = urls.downloadUrl;
|
|
97
106
|
}
|
package/es/editor/index.mjs
CHANGED
|
@@ -52,6 +52,7 @@ import { IBizPickerSelectView } from './data-picker/ibiz-picker-select-view/ibiz
|
|
|
52
52
|
import { IBizEditorCarousel } from './upload/ibiz-carousel/ibiz-carousel.mjs';
|
|
53
53
|
import { IBizQrcode } from './qrcode/ibiz-qrcode/ibiz-qrcode.mjs';
|
|
54
54
|
import { IBizImageCropping } from './upload/ibiz-image-cropping/ibiz-image-cropping.mjs';
|
|
55
|
+
import { IBizCheckbox } from './check-box/ibiz-checkbox/ibiz-checkbox.mjs';
|
|
55
56
|
import { SpanEditorProvider } from './span/span-editor.provider.mjs';
|
|
56
57
|
import { TextBoxEditorProvider } from './text-box/text-box-editor.provider.mjs';
|
|
57
58
|
import { DropDownListEditorProvider } from './dropdown-list/dropdown-list-editor.provider.mjs';
|
|
@@ -70,12 +71,11 @@ import { DataPickerEditorProvider } from './data-picker/picker-editor.provider.m
|
|
|
70
71
|
import { FileUploaderEditorProvider } from './upload/upload-editor.provider.mjs';
|
|
71
72
|
import { NumberRangeEditorProvider } from './number-range/number-range-editor.provider.mjs';
|
|
72
73
|
import { DateRangeEditorProvider } from './date-range/date-range-editor.provider.mjs';
|
|
74
|
+
import { CheckBoxEditorProvider } from './check-box/check-box-editor.provider.mjs';
|
|
73
75
|
import { CheckBoxListEditorProvider } from './check-box-list/checkbox-list-editor.provider.mjs';
|
|
74
76
|
import { QrcodeEditorProvider } from './qrcode/qrcode-editor.provider.mjs';
|
|
75
77
|
export { CascaderEditorController } from './cascader/cascader-editor.controller.mjs';
|
|
76
|
-
export { IBizCheckbox } from './check-box/ibiz-checkbox/ibiz-checkbox.mjs';
|
|
77
78
|
export { CheckBoxEditorController } from './check-box/check-box-editor.controller.mjs';
|
|
78
|
-
export { CheckBoxEditorProvider } from './check-box/check-box-editor.provider.mjs';
|
|
79
79
|
export { CheckBoxListEditorController } from './check-box-list/checkbox-list-editor.controller.mjs';
|
|
80
80
|
export { PickerEditorController } from './data-picker/picker-editor.controller.mjs';
|
|
81
81
|
export { DatePickerEditorController } from './date-picker/date-picker-editor.controller.mjs';
|
|
@@ -130,6 +130,7 @@ const IBizEditor = {
|
|
|
130
130
|
v.component(IBizEditorCarousel.name, IBizEditorCarousel);
|
|
131
131
|
v.component(IBizQrcode.name, IBizQrcode);
|
|
132
132
|
v.component(IBizImageCropping.name, IBizImageCropping);
|
|
133
|
+
v.component(IBizCheckbox.name, IBizCheckbox);
|
|
133
134
|
v.component(
|
|
134
135
|
"IBizMarkDown",
|
|
135
136
|
defineAsyncComponent(
|
|
@@ -167,6 +168,10 @@ const IBizEditor = {
|
|
|
167
168
|
"MOBTEXT_SIGNATURE",
|
|
168
169
|
() => new TextBoxEditorProvider("SIGNATURE")
|
|
169
170
|
);
|
|
171
|
+
registerEditorProvider(
|
|
172
|
+
"TEXTBOX_SIGNATURE",
|
|
173
|
+
() => new TextBoxEditorProvider("SIGNATURE")
|
|
174
|
+
);
|
|
170
175
|
registerEditorProvider(
|
|
171
176
|
"MOBDROPDOWNLIST",
|
|
172
177
|
() => new DropDownListEditorProvider()
|
|
@@ -179,6 +184,10 @@ const IBizEditor = {
|
|
|
179
184
|
"MOBDROPDOWNLIST_EMOJI_PICKER",
|
|
180
185
|
() => new DropDownListEditorProvider("EMOJI_PICKER")
|
|
181
186
|
);
|
|
187
|
+
registerEditorProvider(
|
|
188
|
+
"DROPDOWNLIST_EMOJI_PICKER",
|
|
189
|
+
() => new DropDownListEditorProvider("EMOJI_PICKER")
|
|
190
|
+
);
|
|
182
191
|
registerEditorProvider(
|
|
183
192
|
"ROPDOWNLIST_CASCADER",
|
|
184
193
|
() => new DropDownListEditorProvider("MOBDROPDOWNLIST_CASCADER")
|
|
@@ -330,6 +339,7 @@ const IBizEditor = {
|
|
|
330
339
|
"DATERANGE_NOTIME",
|
|
331
340
|
() => new DateRangeEditorProvider()
|
|
332
341
|
);
|
|
342
|
+
registerEditorProvider("CHECKBOX", () => new CheckBoxEditorProvider());
|
|
333
343
|
registerEditorProvider(
|
|
334
344
|
"FIELD_IMAGE_PICTURE_ONE",
|
|
335
345
|
() => new FileUploaderEditorProvider("MOBPICTURE_RAW")
|
|
@@ -394,4 +404,4 @@ const IBizEditor = {
|
|
|
394
404
|
}
|
|
395
405
|
};
|
|
396
406
|
|
|
397
|
-
export { CascaderEditorProvider, CheckBoxListEditorProvider, ColorPickerEditorProvider, DataPickerEditorProvider, DatePickerEditorProvider, DateRangeEditorProvider, DropDownListEditorProvider, FileUploaderEditorProvider, HtmlEditorProvider, IBizCascader, IBizCascaderDropdown, IBizCheckboxList, IBizColorPicker, IBizDatePicker, IBizDateRangePicker, IBizDropdown, IBizEditor, IBizEditorCarousel, IBizEmojiPicker, IBizFileUpload, IBizImageCropping, IBizImageSelect, IBizImageUpload, IBizInput, IBizInputNumber, IBizMPicker, IBizNumberRangePicker, IBizPicker, IBizPickerSelectView, IBizRadio, IBizRate, IBizSignature, IBizSlider, IBizSpan, IBizStepper, IBizSwitch, MarkDownEditorProvider, NumberRangeEditorProvider, RadioButtonListEditorProvider, RateEditorProvider, SliderEditorProvider, SpanEditorProvider, StepperEditorProvider, SwitchEditorProvider, TextBoxEditorProvider, IBizEditor as default };
|
|
407
|
+
export { CascaderEditorProvider, CheckBoxEditorProvider, CheckBoxListEditorProvider, ColorPickerEditorProvider, DataPickerEditorProvider, DatePickerEditorProvider, DateRangeEditorProvider, DropDownListEditorProvider, FileUploaderEditorProvider, HtmlEditorProvider, IBizCascader, IBizCascaderDropdown, IBizCheckbox, IBizCheckboxList, IBizColorPicker, IBizDatePicker, IBizDateRangePicker, IBizDropdown, IBizEditor, IBizEditorCarousel, IBizEmojiPicker, IBizFileUpload, IBizImageCropping, IBizImageSelect, IBizImageUpload, IBizInput, IBizInputNumber, IBizMPicker, IBizNumberRangePicker, IBizPicker, IBizPickerSelectView, IBizRadio, IBizRate, IBizSignature, IBizSlider, IBizSpan, IBizStepper, IBizSwitch, MarkDownEditorProvider, NumberRangeEditorProvider, RadioButtonListEditorProvider, RateEditorProvider, SliderEditorProvider, SpanEditorProvider, StepperEditorProvider, SwitchEditorProvider, TextBoxEditorProvider, IBizEditor as default };
|
|
@@ -34,7 +34,16 @@ const IBizMarkDown = /* @__PURE__ */ defineComponent({
|
|
|
34
34
|
const cssVars = ref({});
|
|
35
35
|
watch(() => props.data, (newVal) => {
|
|
36
36
|
if (newVal) {
|
|
37
|
-
const
|
|
37
|
+
const editorParams = {
|
|
38
|
+
...c.editorParams
|
|
39
|
+
};
|
|
40
|
+
if (editorParams.uploadparams) {
|
|
41
|
+
editorParams.uploadParams = JSON.parse(editorParams.uploadparams);
|
|
42
|
+
}
|
|
43
|
+
if (editorParams.exportparams) {
|
|
44
|
+
editorParams.exportParams = JSON.parse(editorParams.exportparams);
|
|
45
|
+
}
|
|
46
|
+
const urls = ibiz.util.file.calcFileUpDownUrl(c.context, c.params, newVal, editorParams);
|
|
38
47
|
uploadUrl.value = urls.uploadUrl;
|
|
39
48
|
downloadUrl.value = urls.downloadUrl;
|
|
40
49
|
}
|
|
@@ -31,12 +31,21 @@ const IBizSlider = /* @__PURE__ */ defineComponent({
|
|
|
31
31
|
if (editorModel.editorParams.stepValue) {
|
|
32
32
|
step = toNumber(editorModel.editorParams.stepValue);
|
|
33
33
|
}
|
|
34
|
+
if (editorModel.editorParams.stepvalue) {
|
|
35
|
+
step = toNumber(editorModel.editorParams.stepvalue);
|
|
36
|
+
}
|
|
34
37
|
if (editorModel.editorParams.maxValue) {
|
|
35
38
|
max = toNumber(editorModel.editorParams.maxValue);
|
|
36
39
|
}
|
|
40
|
+
if (editorModel.editorParams.maxvalue) {
|
|
41
|
+
max = toNumber(editorModel.editorParams.maxvalue);
|
|
42
|
+
}
|
|
37
43
|
if (editorModel.editorParams.minValue) {
|
|
38
44
|
min = toNumber(editorModel.editorParams.minValue);
|
|
39
45
|
}
|
|
46
|
+
if (editorModel.editorParams.minvalue) {
|
|
47
|
+
min = toNumber(editorModel.editorParams.minvalue);
|
|
48
|
+
}
|
|
40
49
|
if (editorModel.editorParams.range) {
|
|
41
50
|
range = c.toBoolean(editorModel.editorParams.range);
|
|
42
51
|
}
|
|
@@ -46,9 +55,15 @@ const IBizSlider = /* @__PURE__ */ defineComponent({
|
|
|
46
55
|
if (editorModel.editorParams.textItem) {
|
|
47
56
|
textItem = editorModel.editorParams.textItem;
|
|
48
57
|
}
|
|
58
|
+
if (editorModel.editorParams.textitem) {
|
|
59
|
+
textItem = editorModel.editorParams.textitem;
|
|
60
|
+
}
|
|
49
61
|
if (editorModel.editorParams.showText) {
|
|
50
62
|
showText = c.toBoolean(editorModel.editorParams.showText);
|
|
51
63
|
}
|
|
64
|
+
if (editorModel.editorParams.showtext) {
|
|
65
|
+
showText = c.toBoolean(editorModel.editorParams.showtext);
|
|
66
|
+
}
|
|
52
67
|
if (editorModel.editorParams.format) {
|
|
53
68
|
format = editorModel.editorParams.format;
|
|
54
69
|
}
|
|
@@ -139,6 +154,16 @@ const IBizSlider = /* @__PURE__ */ defineComponent({
|
|
|
139
154
|
return createVNode("div", {
|
|
140
155
|
"class": this.ns.b("button")
|
|
141
156
|
}, [this.currentVal]);
|
|
157
|
+
},
|
|
158
|
+
"left-button": () => {
|
|
159
|
+
return createVNode("div", {
|
|
160
|
+
"class": this.ns.b("button")
|
|
161
|
+
}, [Array.isArray(this.currentVal) ? this.currentVal[0] : this.currentVal]);
|
|
162
|
+
},
|
|
163
|
+
"right-button": () => {
|
|
164
|
+
return createVNode("div", {
|
|
165
|
+
"class": this.ns.b("button")
|
|
166
|
+
}, [Array.isArray(this.currentVal) ? this.currentVal[1] : this.currentVal]);
|
|
142
167
|
}
|
|
143
168
|
});
|
|
144
169
|
}
|
|
@@ -12,10 +12,13 @@ const IBizImageSelect = /* @__PURE__ */ defineComponent({
|
|
|
12
12
|
setup(props, {
|
|
13
13
|
emit
|
|
14
14
|
}) {
|
|
15
|
-
var _a;
|
|
15
|
+
var _a, _b;
|
|
16
16
|
const ns = useNamespace("image-select");
|
|
17
17
|
const c = props.controller;
|
|
18
|
-
|
|
18
|
+
let result = ((_a = c.editorParams) == null ? void 0 : _a.STOPPROPAGATION) !== "false";
|
|
19
|
+
if ((_b = c.editorParams) == null ? void 0 : _b.stoppropagation) {
|
|
20
|
+
result = c.editorParams.stoppropagation !== "false";
|
|
21
|
+
}
|
|
19
22
|
const svg = ref("");
|
|
20
23
|
const {
|
|
21
24
|
files
|
|
@@ -12,10 +12,13 @@ const IBizImageUpload = /* @__PURE__ */ defineComponent({
|
|
|
12
12
|
setup(props, {
|
|
13
13
|
emit
|
|
14
14
|
}) {
|
|
15
|
-
var _a;
|
|
15
|
+
var _a, _b;
|
|
16
16
|
const ns = useNamespace("image-upload");
|
|
17
17
|
const c = props.controller;
|
|
18
|
-
|
|
18
|
+
let result = ((_a = c.editorParams) == null ? void 0 : _a.STOPPROPAGATION) !== "false";
|
|
19
|
+
if ((_b = c.editorParams) == null ? void 0 : _b.stoppropagation) {
|
|
20
|
+
result = c.editorParams.stoppropagation !== "false";
|
|
21
|
+
}
|
|
19
22
|
const {
|
|
20
23
|
uploadUrl,
|
|
21
24
|
headers,
|
|
@@ -144,7 +144,15 @@ class UploadEditorController extends EditorController {
|
|
|
144
144
|
this.multiple = false;
|
|
145
145
|
}
|
|
146
146
|
if (this.editorParams) {
|
|
147
|
-
const {
|
|
147
|
+
const {
|
|
148
|
+
isDrag,
|
|
149
|
+
multiple,
|
|
150
|
+
accept,
|
|
151
|
+
uploadParams,
|
|
152
|
+
exportParams,
|
|
153
|
+
uploadparams,
|
|
154
|
+
exportparams
|
|
155
|
+
} = this.editorParams;
|
|
148
156
|
if (isDrag) {
|
|
149
157
|
this.isDrag = Boolean(isDrag);
|
|
150
158
|
}
|
|
@@ -164,6 +172,16 @@ class UploadEditorController extends EditorController {
|
|
|
164
172
|
);
|
|
165
173
|
}
|
|
166
174
|
}
|
|
175
|
+
if (uploadparams) {
|
|
176
|
+
try {
|
|
177
|
+
this.uploadParams = JSON.parse(uploadparams);
|
|
178
|
+
} catch (error) {
|
|
179
|
+
throw new RuntimeModelError(
|
|
180
|
+
uploadparams,
|
|
181
|
+
ibiz.i18n.t("editor.upload.uploadJsonFormatErr")
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
167
185
|
if (exportParams) {
|
|
168
186
|
try {
|
|
169
187
|
this.exportParams = JSON.parse(exportParams);
|
|
@@ -174,6 +192,16 @@ class UploadEditorController extends EditorController {
|
|
|
174
192
|
);
|
|
175
193
|
}
|
|
176
194
|
}
|
|
195
|
+
if (exportparams) {
|
|
196
|
+
try {
|
|
197
|
+
this.exportParams = JSON.parse(exportparams);
|
|
198
|
+
} catch (error) {
|
|
199
|
+
throw new RuntimeModelError(
|
|
200
|
+
exportparams,
|
|
201
|
+
ibiz.i18n.t("editor.upload.exportJsonFormatErr")
|
|
202
|
+
);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
177
205
|
}
|
|
178
206
|
}
|
|
179
207
|
/**
|
|
@@ -21,11 +21,18 @@ function useVanUpload(props, valueChange, c) {
|
|
|
21
21
|
() => props.data,
|
|
22
22
|
(newVal) => {
|
|
23
23
|
if (newVal) {
|
|
24
|
+
const editorParams = { ...c.editorParams };
|
|
25
|
+
if (editorParams.uploadparams) {
|
|
26
|
+
editorParams.uploadParams = JSON.parse(editorParams.uploadparams);
|
|
27
|
+
}
|
|
28
|
+
if (editorParams.exportparams) {
|
|
29
|
+
editorParams.exportParams = JSON.parse(editorParams.exportparams);
|
|
30
|
+
}
|
|
24
31
|
const urls = ibiz.util.file.calcFileUpDownUrl(
|
|
25
32
|
c.context,
|
|
26
33
|
c.params,
|
|
27
34
|
newVal,
|
|
28
|
-
|
|
35
|
+
editorParams
|
|
29
36
|
);
|
|
30
37
|
uploadUrl.value = urls.uploadUrl;
|
|
31
38
|
downloadUrl.value = urls.downloadUrl;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { PlatformProviderBase } from '@ibiz-template/runtime';
|
|
2
2
|
import { nextTick } from 'vue';
|
|
3
|
+
import '../util/index.mjs';
|
|
4
|
+
import { useViewStack } from '../util/store/view-stack/view-stack.mjs';
|
|
3
5
|
|
|
4
6
|
"use strict";
|
|
5
7
|
class IosPlatformProvider extends PlatformProviderBase {
|
|
@@ -32,6 +34,15 @@ class IosPlatformProvider extends PlatformProviderBase {
|
|
|
32
34
|
true
|
|
33
35
|
);
|
|
34
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* 返回事件
|
|
39
|
+
*
|
|
40
|
+
* @memberof IosPlatformProvider
|
|
41
|
+
*/
|
|
42
|
+
back() {
|
|
43
|
+
const { goBack } = useViewStack();
|
|
44
|
+
goBack();
|
|
45
|
+
}
|
|
35
46
|
}
|
|
36
47
|
|
|
37
48
|
export { IosPlatformProvider };
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { getToken, UrlHelper } from '@ibiz-template/core';
|
|
2
2
|
import { PlatformProviderBase, isAndroid } from '@ibiz-template/runtime';
|
|
3
|
+
import '../util/index.mjs';
|
|
4
|
+
import { useViewStack } from '../util/store/view-stack/view-stack.mjs';
|
|
3
5
|
|
|
4
6
|
"use strict";
|
|
5
7
|
class WeChatOfficialPlatformProvider extends PlatformProviderBase {
|
|
@@ -22,6 +24,15 @@ class WeChatOfficialPlatformProvider extends PlatformProviderBase {
|
|
|
22
24
|
}
|
|
23
25
|
return super.download(url, name);
|
|
24
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* 返回事件
|
|
29
|
+
*
|
|
30
|
+
* @memberof WeChatOfficialPlatformProvider
|
|
31
|
+
*/
|
|
32
|
+
back() {
|
|
33
|
+
const { goBack } = useViewStack();
|
|
34
|
+
goBack();
|
|
35
|
+
}
|
|
25
36
|
}
|
|
26
37
|
|
|
27
38
|
export { WeChatOfficialPlatformProvider };
|
|
@@ -38,6 +38,9 @@ const IBizCascader = /* @__PURE__ */ vue.defineComponent({
|
|
|
38
38
|
if (editorModel.editorParams.editorStyle) {
|
|
39
39
|
editorStyle = editorModel.editorParams.editorStyle;
|
|
40
40
|
}
|
|
41
|
+
if (editorModel.editorParams.editorstyle) {
|
|
42
|
+
editorStyle = editorModel.editorParams.editorstyle;
|
|
43
|
+
}
|
|
41
44
|
if (editorModel.editorParams.separator) {
|
|
42
45
|
separator = editorModel.editorParams.separator;
|
|
43
46
|
}
|