@ibiz-template/mob-vue3-components 0.7.41-alpha.17 → 0.7.41-alpha.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/ibiz-markdown-editor-CpFrKPxk.js +2 -0
- package/dist/ibiz-markdown-editor-CpFrKPxk.js.map +1 -0
- package/dist/index-BsnCebyq.js +2 -0
- package/dist/index-BsnCebyq.js.map +1 -0
- package/dist/index-DL4fl2Xq.js +2 -0
- package/dist/index-DL4fl2Xq.js.map +1 -0
- package/dist/index-DwC1-gss.js +76 -0
- package/dist/index-DwC1-gss.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-DcWdzP1t.js} +2 -2
- package/dist/{quill-CG16aqds.js.map → quill-DcWdzP1t.js.map} +1 -1
- package/dist/quill-editor-DlIyufAV.js +2 -0
- package/dist/quill-editor-DlIyufAV.js.map +1 -0
- package/dist/{quill-editor-preview-YXGzGLmQ.js → quill-editor-preview-Cf2qhphz.js} +2 -2
- package/dist/{quill-editor-preview-YXGzGLmQ.js.map → quill-editor-preview-Cf2qhphz.js.map} +1 -1
- package/dist/tree-CGwysqdR.js +2 -0
- package/dist/tree-CGwysqdR.js.map +1 -0
- package/es/_virtual/index12.mjs +2 -2
- package/es/_virtual/index13.mjs +2 -2
- package/es/_virtual/index14.mjs +2 -2
- package/es/_virtual/index15.mjs +3 -1
- package/es/_virtual/index16.mjs +1 -1
- package/es/_virtual/index17.mjs +1 -3
- package/es/_virtual/index18.mjs +2 -2
- package/es/_virtual/index19.mjs +3 -0
- package/es/control/calendar/calendar.mjs +2 -0
- package/es/control/dashboard/dashboard.css +1 -1
- package/es/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
- package/es/control/dashboard/portlet/portlet-layout/portlet-layout.mjs +68 -22
- package/es/control/drbar/drbar.controller.mjs +24 -1
- package/es/control/drtab/drtab.controller.mjs +20 -4
- package/es/control/list/list-render-util.mjs +1 -1
- package/es/control/list/md-ctrl/md-ctrl.css +1 -1
- package/es/control/tab-exp-panel/tab-exp-panel.css +1 -1
- package/es/control/tree/tree.mjs +8 -0
- 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/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
- package/es/editor/data-picker/ibiz-mpicker/ibiz-mpicker.mjs +5 -0
- package/es/editor/data-picker/ibiz-picker/ibiz-picker.mjs +23 -3
- package/es/editor/data-picker/picker-editor.controller.mjs +1 -1
- package/es/editor/date-picker/date-picker-editor.controller.mjs +16 -0
- package/es/editor/date-picker/ibiz-date-picker/ibiz-date-picker.mjs +4 -1
- package/es/editor/date-range/date-range-editor.controller.mjs +20 -1
- package/es/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.mjs +23 -4
- package/es/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.mjs +2 -2
- package/es/editor/html/html-editor.controller.mjs +59 -2
- package/es/editor/html/quill-editor/quill-editor.mjs +10 -1
- package/es/editor/index.mjs +18 -3
- package/es/editor/map-picker/ibiz-map-picker/ibiz-map-picker.css +1 -0
- package/es/editor/map-picker/ibiz-map-picker/ibiz-map-picker.mjs +337 -0
- package/es/editor/map-picker/index.mjs +5 -0
- package/es/editor/map-picker/map-picker-editor.controller.mjs +7 -0
- package/es/editor/map-picker/map-picker-editor.provider.mjs +22 -0
- 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/text-box/signature/signature.css +1 -1
- package/es/editor/text-box/signature/signature.mjs +2 -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/index.mjs +1 -0
- package/es/locale/en/index.mjs +3 -0
- package/es/locale/zh-CN/index.mjs +3 -0
- package/es/mob-app/router/index.mjs +6 -5
- package/es/node_modules/.pnpm/@amap_amap-jsapi-loader@1.0.1_patch_hash_73bpcwbs2m5ip4qppmz6a7epsa/node_modules/@amap/amap-jsapi-loader/dist/index.mjs +41 -0
- package/es/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/packages/frame-talk-client-pc/index.mjs +1 -1
- package/es/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/sdk/middlewares/index.mjs +1 -1
- package/es/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index2.mjs +1 -1
- package/es/node_modules/.pnpm/lodash.clonedeep@4.5.0/node_modules/lodash.clonedeep/index.mjs +1 -1
- package/es/node_modules/.pnpm/lodash.isequal@4.5.0/node_modules/lodash.isequal/index.mjs +1 -1
- package/es/node_modules/.pnpm/quill-delta@5.1.0/node_modules/quill-delta/dist/AttributeMap.mjs +1 -1
- package/es/node_modules/.pnpm/quill-delta@5.1.0/node_modules/quill-delta/dist/Delta.mjs +1 -1
- package/es/platform/ios-platform-provider.mjs +11 -0
- package/es/platform/wechat-official-platform-provider.mjs +11 -0
- package/es/view-engine/mob-mpickup-view-engine.mjs +6 -1
- package/lib/_virtual/index12.cjs +2 -2
- package/lib/_virtual/index13.cjs +2 -2
- package/lib/_virtual/index14.cjs +2 -2
- package/lib/_virtual/index15.cjs +2 -6
- package/lib/_virtual/index16.cjs +2 -2
- package/lib/_virtual/index17.cjs +6 -2
- package/lib/_virtual/index18.cjs +2 -2
- package/lib/_virtual/index19.cjs +5 -0
- package/lib/control/calendar/calendar.cjs +2 -0
- package/lib/control/dashboard/dashboard.css +1 -1
- package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.cjs +67 -21
- package/lib/control/dashboard/portlet/portlet-layout/portlet-layout.css +1 -1
- package/lib/control/drbar/drbar.controller.cjs +24 -1
- package/lib/control/drtab/drtab.controller.cjs +20 -4
- package/lib/control/list/list-render-util.cjs +1 -1
- package/lib/control/list/md-ctrl/md-ctrl.css +1 -1
- package/lib/control/tab-exp-panel/tab-exp-panel.css +1 -1
- package/lib/control/tree/tree.cjs +8 -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/data-picker/ibiz-mpicker/ibiz-mpicker.cjs +5 -0
- package/lib/editor/data-picker/ibiz-mpicker/ibiz-mpicker.css +1 -1
- package/lib/editor/data-picker/ibiz-picker/ibiz-picker.cjs +23 -3
- package/lib/editor/data-picker/picker-editor.controller.cjs +1 -1
- package/lib/editor/date-picker/date-picker-editor.controller.cjs +16 -0
- package/lib/editor/date-picker/ibiz-date-picker/ibiz-date-picker.cjs +3 -0
- package/lib/editor/date-range/date-range-editor.controller.cjs +20 -1
- package/lib/editor/date-range/ibiz-date-range-picker/ibiz-date-range-picker.cjs +22 -3
- package/lib/editor/dropdown-list/ibiz-dropdown/ibiz-dropdown.cjs +2 -2
- package/lib/editor/html/html-editor.controller.cjs +59 -2
- package/lib/editor/html/quill-editor/quill-editor.cjs +10 -1
- package/lib/editor/index.cjs +19 -4
- package/lib/editor/map-picker/ibiz-map-picker/ibiz-map-picker.cjs +339 -0
- package/lib/editor/map-picker/ibiz-map-picker/ibiz-map-picker.css +1 -0
- package/lib/editor/map-picker/index.cjs +11 -0
- package/lib/editor/map-picker/map-picker-editor.controller.cjs +9 -0
- package/lib/editor/map-picker/map-picker-editor.provider.cjs +24 -0
- 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/text-box/signature/signature.cjs +2 -0
- package/lib/editor/text-box/signature/signature.css +1 -1
- 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/index.cjs +2 -0
- package/lib/locale/en/index.cjs +3 -0
- package/lib/locale/zh-CN/index.cjs +3 -0
- package/lib/mob-app/router/index.cjs +6 -5
- package/lib/node_modules/.pnpm/@amap_amap-jsapi-loader@1.0.1_patch_hash_73bpcwbs2m5ip4qppmz6a7epsa/node_modules/@amap/amap-jsapi-loader/dist/index.cjs +45 -0
- package/lib/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/packages/frame-talk-client-pc/index.cjs +1 -1
- package/lib/node_modules/.pnpm/dingtalk-jsapi@3.2.0/node_modules/dingtalk-jsapi/lib/sdk/middlewares/index.cjs +1 -1
- package/lib/node_modules/.pnpm/eventemitter3@5.0.1/node_modules/eventemitter3/index2.cjs +1 -1
- package/lib/node_modules/.pnpm/lodash.clonedeep@4.5.0/node_modules/lodash.clonedeep/index.cjs +1 -1
- package/lib/node_modules/.pnpm/lodash.isequal@4.5.0/node_modules/lodash.isequal/index.cjs +1 -1
- package/lib/node_modules/.pnpm/quill-delta@5.1.0/node_modules/quill-delta/dist/AttributeMap.cjs +1 -1
- package/lib/node_modules/.pnpm/quill-delta@5.1.0/node_modules/quill-delta/dist/Delta.cjs +1 -1
- package/lib/platform/ios-platform-provider.cjs +11 -0
- package/lib/platform/wechat-official-platform-provider.cjs +11 -0
- package/lib/view-engine/mob-mpickup-view-engine.cjs +6 -1
- package/package.json +14 -8
- package/dist/ibiz-markdown-editor-B7D3K0dJ.js +0 -2
- package/dist/ibiz-markdown-editor-B7D3K0dJ.js.map +0 -1
- package/dist/index-BcB2An4e.js +0 -2
- package/dist/index-BcB2An4e.js.map +0 -1
- package/dist/index-CLxzVzNz.js +0 -76
- package/dist/index-CLxzVzNz.js.map +0 -1
- package/dist/index-DuVHtH1z.js +0 -2
- package/dist/index-DuVHtH1z.js.map +0 -1
- package/dist/quill-editor-C7zYyQrk.js +0 -2
- package/dist/quill-editor-C7zYyQrk.js.map +0 -1
- package/dist/tree-Db38FIKx.js +0 -2
- package/dist/tree-Db38FIKx.js.map +0 -1
package/dist/index-DuVHtH1z.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
System.register(["@ibiz-template/runtime","@ibiz-template/vue3-util","@ibiz-template/model-helper","@ibiz-template/core"],function(a){"use strict";var o,r,t,n;return{setters:[function(e){o=e.en},function(e){r=e.en},function(e){t=e.en},function(e){n=e.en}],execute:function(){var e=a("default",{app:{noSupport:"Not supported currently",add:"Add",delete:"Delete",retract:"Retract",close:"Close",search:"Search"},component:{actionToolbar:{noSupportDropDown:"The drop-down mode is not supported"},rawItem:{errorConfig:"{type} type custom parameter configuration error",noSupportVideo:"Your browser does not support video tags"},emojiSelect:{frequently:"Frequently",peoples:"Peoples",nature:"Nature",foods:"Foods",activity:"Activity",objects:"Objects",places:"Places",symbols:"Symbols",flags:"Flags"},mdCtrlSetting:{confirm:"Confirm",sort:"Sort",asc:"ascend",desc:"descend"},dropdown:{pleaseSelect:"Please Select",clear:"Clear",searchPlaceholder:"Search"},dateRangePicker:{headerPlaceholder:"Please select a date range",confirm:"Confirm",today:"Today",startDate:"Start date",endDate:"End date",scopeIsInvalid:"The scope is invalid",overLimit:"Not within the allowed range",year:"Year",month:"Month",day:"Day",formatIsInvalid:"The format is invalid",use:"Use",example:"Example",selectDate:"Please select a date",noSelect:"No Select"},formItemContainer:{more:"More"},mpicker:{simpleErr:"The value of the SIMPLE type address bar {props.value} does not meet the requirements of a JSON string"},signature:{undo:"Undo",rewrite:"Rewrite",confirm:"Confirm",addSignature:"Click here to add signature",signaturePrompt:"Please write horizontally in the blank area"}},control:{common:{loadMore:"Load more"},appmenu:{more:"More",bottomNav:"Bottom Navigation",customNav:"Customize Navigation",save:"Save"},dataView:{end:"The end~"},form:{noSupportDetailType:"Form detail type not supported: {detailType} or corresponding provider cannot be found",formGroupPanel:{showMore:"Show More"},formMDctrlForm:{noFindProvider:"Provider not found for form"},repeaterMultiForm:{confirmTitle:"Tips for deletion",confirmDesc:"Do you want to delete the selection?"},repeaterSingleForm:{errorMessage:"No repeatedForm"},formMDctrlRepeater:{noSupportStyle:"Repeater style {repeaterStyle} is currently not supported"},mdCtrlContainer:{noSlot:"Item slot not provided"},formMDctrl:{errorMessage:"The content type is currently not supported as {contentType}"},searchForm:{search:"Search",reset:"Reset"}},list:{expand:"Expand",selectedData:"Selected data",end:"The end~"},searchBar:{confirm:"Confirm",reset:"Reset",filter:"Filter",add:"Add",remove:"Remove",addCond:"Add filter",value:"Value",when:"When",operate:"Operation",property:"property",and:"AND",or:"OR"},toolbar:{noSupportType:"Toolbar item type: {itemType} is not supported"},tree:{subordinate:"Subordinate"},wizardPanel:{prev:"Previous",next:"Next",finish:"Finish"},calendar:{today:"Today",pickerDate:"Picker Date",customPicker:"Please select a date"}},editor:{common:{entityConfigErr:"Please configure entities and entity datasets",selectViewConfigErr:"Please configure the data selection view",linkViewConfigErr:"Please configure the data link view",cancel:"Cancel",confirm:"Confirm"},html:{expand:"Expand",collapse:"Collapse"},cascader:{ibizCascader:{title:"Title {index}"}},datePicker:{title:"Select a date",cancel:"Cancel",confirm:"Confirm",year:"Year",month:"Month",day:"Day",hour:"Hour",min:"Minute",sec:"Second",clear:"Clear"},dropdownList:{noSupportTreePicker:"Drop-down tree selection is not supported",confirm:"confirm"},markdown:{uploadJsonFormatErr:"The configuration of uploadparams did not follow the standard JSON format",exportJsonFormatErr:"The configuration of exportparams did not follow the standard JSON format",downloadFailedErr:"Download file failed",noExistentErr:"The file stream data does not exist"},notSupportedEditor:{unsupportedType:"Unsupported editor types - {editorType}"},stepper:{pleaseEnter:"Please enter"},upload:{uploadJsonFormatErr:"The configuration of uploadparams did not follow the standard JSON format",exportJsonFormatErr:"The configuration of exportparams did not follow the standard JSON format",cancelUpload:"Cancel Upload",compressError:"Image compression failed"},emojiPicker:{addEmoji:"Add emoji"},dateRangePicker:{selectRange:"Please select a date range"}},locale:{prompt:"Prompt",switchLanguagePrompt:"Switching languages requires refreshing the page, are you sure to switch?"},mobApp:{authGuard:{loginFailed:"Anonymous user login failed",noPermission:"No permission to access!"},unauthorizedHandler:{noFoundEnvParams:"Unable to find environment parameter casLoginUrl",prohibitAccessPrompt:"Access to the current account is prohibited",exitPrompt:"Do you want to exit the current account?"}},panelComponent:{authUserinfo:{visitor:"Visitor"},authSsO:{noSupported:"Login with {type} is not supported",dingLogin:"DingTalk Login in",wechatLogin:"Wechat Login in"},navPosIndex:{noSupportPrompt:"Non routing mode navigation placeholder is not supported"},panelVideoPlayer:{noSupportPrompt:"Your device does not support video tags"},wfStepTrace:{processingComplete:"Processing completion time",processingSteps:"Processing steps",processingPersonnel:"Processing personnel",submissionPath:"Submission path"},userMessage:{notice:"Notice",backendTasks:"Backend tasks",allRead:"All read",all:"All",unread:"unread",asyncActionPreview:{downloadFailedErr:"Download file failed",noExistentErr:"The file stream data does not exist",importDetailPrompt:"Import data details-{name}",parseImportInfoErr:"Abnormal parsing of import information",downloadErrFile:"Download error file",importTime:"Import time: ",importTotal:"Total number of imports: ",successImport:"Number of successful imports: ",ImportFailed:"Number of import failures: "},asyncActionTab:{noSupportType:"Asynchronous operation type {type} is not supported currently",noAsyncAction:"There are currently no asynchronous operations available"},internalMessageContainer:{markAsRead:"Mark as read"},internalMessageJson:{jumpToView:"Jump to view",missingHtml:"Missing HTML in the content of the data"},internalMessageTab:{noSupportType:"The message type {type} on the site is not currently supported",notificationYet:"Current no notification",loadMore:"Load more({length})",onlyShowUnread:"Only show unread"}}},util:{loading:"Loading",notAchieved:"Not implemented",unrealized:"Unrealized",cacheWarningPrompt:"There is only one item in the cache stack and it cannot be navigated back",scanQrcode:{notAllowedError:"You need to grant camera access permission",notFoundError:"No camera on this device",notSupportedError:"Secure context required (HTTPS, localhost)",notReadableError:"Is the camera already in use?",overconstrainedError:"Installed cameras are not suitable",streamApiNotSupportedError:"Stream API is not supported in this browser",insecureContextError:"Camera access is only permitted in secure context. use HTTPS or localhost rather than HTTP."}},view:{fillInUserName:"Please fill in user the name",fillInPassword:"Please fill in the password",loginFailed:"Login failed",enterUserName:"Please enter the username",enterPassword:"Please enter the password",userName:"User name",password:"Password",login:"Login",thirdAuthFail:"Third party login authorization failed",downloading:"Download now...",downloadSuccess:"Download successful!",downloadFailed:"Download failed!",noSupportDownload:"This file is not supported for download. Please click the upper right corner to open and download it with your browser!",immediatelyDownload:"Download now",reDownload:"Download again"},viewEngine:{closeRemind:"Close reminder",confirmClosePrompt:"The form data has been modified, are you sure you want to close it?",noExistVersionErr:"The current workflow version does not exist",noFoundFormModel:"Unable to find the model for form {name}",missingToolbarModel:"Missing toolbar component model",notReceivedPrompt:"No appDataElementId received"},...o,...r,...n,...t})}}});
|
|
2
|
-
//# sourceMappingURL=index-DuVHtH1z.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-DuVHtH1z.js","sources":["../src/locale/en/index.ts"],"sourcesContent":["import { en as runTimeEn } from '@ibiz-template/runtime';\nimport { en as vue3UtilEn } from '@ibiz-template/vue3-util';\nimport { en as modelHelperEn } from '@ibiz-template/model-helper';\nimport { en as coreEn } from '@ibiz-template/core';\n\nexport default {\n // 应用级\n app: {\n noSupport: 'Not supported currently',\n add: 'Add',\n delete: 'Delete',\n retract: 'Retract',\n close: 'Close',\n search: 'Search',\n },\n // 组件\n component: {\n actionToolbar: {\n noSupportDropDown: 'The drop-down mode is not supported',\n },\n rawItem: {\n errorConfig: '{type} type custom parameter configuration error',\n noSupportVideo: 'Your browser does not support video tags',\n },\n emojiSelect: {\n frequently: 'Frequently',\n peoples: 'Peoples',\n nature: 'Nature',\n foods: 'Foods',\n activity: 'Activity',\n objects: 'Objects',\n places: 'Places',\n symbols: 'Symbols',\n flags: 'Flags',\n },\n mdCtrlSetting: {\n confirm: 'Confirm',\n sort: 'Sort',\n asc: 'ascend',\n desc: 'descend',\n },\n dropdown: {\n pleaseSelect: 'Please Select',\n clear: 'Clear',\n searchPlaceholder: 'Search',\n },\n dateRangePicker: {\n headerPlaceholder: 'Please select a date range',\n confirm: 'Confirm',\n today: 'Today',\n startDate: 'Start date',\n endDate: 'End date',\n scopeIsInvalid: 'The scope is invalid',\n overLimit: 'Not within the allowed range',\n year: 'Year',\n month: 'Month',\n day: 'Day',\n formatIsInvalid: 'The format is invalid',\n use: 'Use',\n example: 'Example',\n selectDate: 'Please select a date',\n noSelect: 'No Select',\n },\n formItemContainer: {\n more: 'More',\n },\n mpicker: {\n simpleErr:\n 'The value of the SIMPLE type address bar {props.value} does not meet the requirements of a JSON string',\n },\n signature: {\n undo: 'Undo',\n rewrite: 'Rewrite',\n confirm: 'Confirm',\n addSignature: 'Click here to add signature',\n signaturePrompt: 'Please write horizontally in the blank area',\n },\n },\n // 部件\n control: {\n common: {\n loadMore: 'Load more',\n },\n appmenu: {\n more: 'More',\n bottomNav: 'Bottom Navigation',\n customNav: 'Customize Navigation',\n save: 'Save',\n },\n dataView: { end: 'The end~' },\n form: {\n noSupportDetailType:\n 'Form detail type not supported: {detailType} or corresponding provider cannot be found',\n formGroupPanel: {\n showMore: 'Show More',\n },\n formMDctrlForm: {\n noFindProvider: 'Provider not found for form',\n },\n repeaterMultiForm: {\n confirmTitle: 'Tips for deletion',\n confirmDesc: 'Do you want to delete the selection?',\n },\n repeaterSingleForm: {\n errorMessage: 'No repeatedForm',\n },\n formMDctrlRepeater: {\n noSupportStyle:\n 'Repeater style {repeaterStyle} is currently not supported',\n },\n mdCtrlContainer: {\n noSlot: 'Item slot not provided',\n },\n formMDctrl: {\n errorMessage:\n 'The content type is currently not supported as {contentType}',\n },\n searchForm: {\n search: 'Search',\n reset: 'Reset',\n },\n },\n list: {\n expand: 'Expand',\n selectedData: 'Selected data',\n end: 'The end~',\n },\n searchBar: {\n confirm: 'Confirm',\n reset: 'Reset',\n filter: 'Filter',\n add: 'Add',\n remove: 'Remove',\n addCond: 'Add filter',\n value: 'Value',\n when: 'When',\n operate: 'Operation',\n property: 'property',\n and: 'AND',\n or: 'OR',\n },\n toolbar: {\n noSupportType: 'Toolbar item type: {itemType} is not supported',\n },\n tree: {\n subordinate: 'Subordinate',\n },\n wizardPanel: {\n prev: 'Previous',\n next: 'Next',\n finish: 'Finish',\n },\n calendar: {\n today: 'Today',\n pickerDate: 'Picker Date',\n customPicker: 'Please select a date',\n },\n },\n // 编辑器\n editor: {\n common: {\n entityConfigErr: 'Please configure entities and entity datasets',\n selectViewConfigErr: 'Please configure the data selection view',\n linkViewConfigErr: 'Please configure the data link view',\n cancel: 'Cancel',\n confirm: 'Confirm',\n },\n html: {\n expand: 'Expand',\n collapse: 'Collapse',\n },\n cascader: {\n ibizCascader: {\n title: 'Title {index}',\n },\n },\n datePicker: {\n title: 'Select a date',\n cancel: 'Cancel',\n confirm: 'Confirm',\n year: 'Year',\n month: 'Month',\n day: 'Day',\n hour: 'Hour',\n min: 'Minute',\n sec: 'Second',\n clear: 'Clear',\n },\n dropdownList: {\n noSupportTreePicker: 'Drop-down tree selection is not supported',\n confirm: 'confirm',\n },\n markdown: {\n uploadJsonFormatErr:\n 'The configuration of uploadparams did not follow the standard JSON format',\n exportJsonFormatErr:\n 'The configuration of exportparams did not follow the standard JSON format',\n downloadFailedErr: 'Download file failed',\n noExistentErr: 'The file stream data does not exist',\n },\n notSupportedEditor: {\n unsupportedType: 'Unsupported editor types - {editorType}',\n },\n stepper: {\n pleaseEnter: 'Please enter',\n },\n upload: {\n uploadJsonFormatErr:\n 'The configuration of uploadparams did not follow the standard JSON format',\n exportJsonFormatErr:\n 'The configuration of exportparams did not follow the standard JSON format',\n cancelUpload: 'Cancel Upload',\n compressError: 'Image compression failed',\n },\n emojiPicker: {\n addEmoji: 'Add emoji',\n },\n dateRangePicker: {\n selectRange: 'Please select a date range',\n },\n },\n // 多语言\n locale: {\n prompt: 'Prompt',\n switchLanguagePrompt:\n 'Switching languages requires refreshing the page, are you sure to switch?',\n },\n mobApp: {\n authGuard: {\n loginFailed: 'Anonymous user login failed',\n noPermission: 'No permission to access!',\n },\n unauthorizedHandler: {\n noFoundEnvParams: 'Unable to find environment parameter casLoginUrl',\n prohibitAccessPrompt: 'Access to the current account is prohibited',\n exitPrompt: 'Do you want to exit the current account?',\n },\n },\n // 面板组件\n panelComponent: {\n authUserinfo: {\n visitor: 'Visitor',\n },\n authSsO: {\n noSupported: 'Login with {type} is not supported',\n dingLogin: 'DingTalk Login in',\n wechatLogin: 'Wechat Login in',\n },\n navPosIndex: {\n noSupportPrompt:\n 'Non routing mode navigation placeholder is not supported',\n },\n panelVideoPlayer: {\n noSupportPrompt: 'Your device does not support video tags',\n },\n wfStepTrace: {\n processingComplete: 'Processing completion time',\n processingSteps: 'Processing steps',\n processingPersonnel: 'Processing personnel',\n submissionPath: 'Submission path',\n },\n userMessage: {\n notice: 'Notice',\n backendTasks: 'Backend tasks',\n allRead: 'All read',\n all: 'All',\n unread: 'unread',\n asyncActionPreview: {\n downloadFailedErr: 'Download file failed',\n noExistentErr: 'The file stream data does not exist',\n importDetailPrompt: 'Import data details-{name}',\n parseImportInfoErr: 'Abnormal parsing of import information',\n downloadErrFile: 'Download error file',\n importTime: 'Import time: ',\n importTotal: 'Total number of imports: ',\n successImport: 'Number of successful imports: ',\n ImportFailed: 'Number of import failures: ',\n },\n asyncActionTab: {\n noSupportType:\n 'Asynchronous operation type {type} is not supported currently',\n noAsyncAction:\n 'There are currently no asynchronous operations available',\n },\n internalMessageContainer: {\n markAsRead: 'Mark as read',\n },\n internalMessageJson: {\n jumpToView: 'Jump to view',\n missingHtml: 'Missing HTML in the content of the data',\n },\n internalMessageTab: {\n noSupportType:\n 'The message type {type} on the site is not currently supported',\n notificationYet: 'Current no notification',\n loadMore: 'Load more({length})',\n onlyShowUnread: 'Only show unread',\n },\n },\n },\n // 工具\n util: {\n loading: 'Loading',\n notAchieved: 'Not implemented',\n unrealized: 'Unrealized',\n cacheWarningPrompt:\n 'There is only one item in the cache stack and it cannot be navigated back',\n scanQrcode: {\n notAllowedError: 'You need to grant camera access permission',\n notFoundError: 'No camera on this device',\n notSupportedError: 'Secure context required (HTTPS, localhost)',\n notReadableError: 'Is the camera already in use?',\n overconstrainedError: 'Installed cameras are not suitable',\n streamApiNotSupportedError: 'Stream API is not supported in this browser',\n insecureContextError:\n 'Camera access is only permitted in secure context. use HTTPS or localhost rather than HTTP.',\n },\n },\n // 视图\n view: {\n fillInUserName: 'Please fill in user the name',\n fillInPassword: 'Please fill in the password',\n loginFailed: 'Login failed',\n enterUserName: 'Please enter the username',\n enterPassword: 'Please enter the password',\n userName: 'User name',\n password: 'Password',\n login: 'Login',\n thirdAuthFail: 'Third party login authorization failed',\n downloading: 'Download now...',\n downloadSuccess: 'Download successful!',\n downloadFailed: 'Download failed!',\n noSupportDownload:\n 'This file is not supported for download. Please click the upper right corner to open and download it with your browser!',\n immediatelyDownload: 'Download now',\n reDownload: 'Download again',\n },\n // 视图引擎\n viewEngine: {\n closeRemind: 'Close reminder',\n confirmClosePrompt:\n 'The form data has been modified, are you sure you want to close it?',\n noExistVersionErr: 'The current workflow version does not exist',\n noFoundFormModel: 'Unable to find the model for form {name}',\n missingToolbarModel: 'Missing toolbar component model',\n notReceivedPrompt: 'No appDataElementId received',\n },\n // runTime\n ...runTimeEn,\n // vue3Util\n ...vue3UtilEn,\n // core\n ...coreEn,\n // modelHelper\n ...modelHelperEn,\n};\n"],"names":["index","exports","runTimeEn","vue3UtilEn","coreEn","modelHelperEn"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
System.register(["vue","@ibiz-template/vue3-util","./quill-CG16aqds.js","@ibiz-template/core","lodash-es","./index-CLxzVzNz.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(B){"use strict";var C,n,u,a,h,y,z,w,x,T,E,U,k,H;return{setters:[function(t){C=t.defineComponent,n=t.createVNode,u=t.resolveComponent,a=t.ref,h=t.watch,y=t.isVNode,z=t.nextTick},function(t){w=t.getEditorEmits,x=t.getHtmlProps,T=t.useNamespace},function(t){E=t.Q},function(t){U=t.getAppCookie,k=t.CoreConst,H=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]"&&!y(e)}const I=B("default",C({name:"IBizQuill",props:x(),emits:w(),setup(e,{emit:r}){const d=T("quill"),l=e.controller,m=a(null),q=ibiz.i18n.getLang();let i=null;const L=a({[`${ibiz.env.tokenHeader}Authorization`]:`${ibiz.env.tokenPrefix}Bearer ${U(k.TOKEN)}`}),M=a(""),N=a(""),b=a(!1),g=a(!1),f=a(""),O=a(!0),P=o=>{const s=o.ops.find(c=>c.insert&&c.insert.image);if(s)return s.insert.image},j=()=>l.valueMode==="text"?i.getText():i.getSemanticHTML(),Q=async o=>{const s=H(o),c=await ibiz.util.file.fileUpload(M.value,s,L.value),p=N.value.replace("%fileId%",c.fileid),v=j();f.value=v.replace(o,p)},V=()=>{if(!m.value)return;const o=l.showToolbar?"snow":"bubble";i=new E(m.value,{theme:o,modules:l.modules,readOnly:e.disabled||e.readonly,placeholder:l.placeHolder}),i.on("text-change",(s,c,p)=>{if(p==="user"){const v=P(s);if(v&&l.imageMode==="file"){Q(v);return}f.value=j()}}),l.valueMode==="text"&&i.setText(e.value||"")};return h(()=>[e.disabled,e.readonly],()=>{i&&(e.disabled||e.readonly?i.enable(!1):i.enable())},{immediate:!0}),h(()=>e.data,o=>{if(o){const s=ibiz.util.file.calcFileUpDownUrl(l.context,l.params,o,l.editorParams);M.value=s.uploadUrl,N.value=s.downloadUrl}},{immediate:!0,deep:!0}),h(()=>e.value,()=>{!i||!e.value||(f.value=e.value,l.valueMode==="text"?i.setText(e.value):(g.value=!0,z(()=>{g.value=!1})))},{immediate:!0}),{ns:d,c:l,lang:q,editing:b,updating:g,editorRef:m,isCollapse:O,handleEdit:()=>{i||V()},handleCancel:()=>{b.value=!1},handleConfirm:()=>{r("change",f.value),b.value=!1}}},render(){let e,r;return n("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&&n(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:d=>{this.isCollapse=d}},null),n(u("van-action-sheet"),{show:this.editing,"onUpdate:show":d=>this.editing=d,teleport:"body",class:[this.ns.e("popup"),this.ns.m(this.lang.toLowerCase())],onOpened:this.handleEdit},{default:()=>[n("div",{class:this.ns.e("content")},[n("div",{ref:"editorRef"},[this.controller.valueMode==="html"?n("div",{innerHTML:this.value},null):null])]),n("div",{class:this.ns.e("footer")},[n(u("van-button"),{class:this.ns.e("cancel"),onClick:this.handleCancel},t(e=ibiz.i18n.t("editor.common.cancel"))?e:{default:()=>[e]}),n(u("van-button"),{class:this.ns.e("confirm"),onClick:this.handleConfirm,type:"primary"},t(r=ibiz.i18n.t("editor.common.confirm"))?r:{default:()=>[r]})])]})])}}))}}});
|
|
2
|
-
//# sourceMappingURL=quill-editor-C7zYyQrk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"quill-editor-C7zYyQrk.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:IData,defaultvalue:{},description:上传参数}\n * @editorparams {name:exportParams,parameterType:IData,defaultvalue:{},description:下载参数}\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:IData,description:quill配置}\n * @editorparams {name:DEFAULTHEIGHT,parameterType:number,defaultvalue:200,description:收缩时的高度}\n * @editorparams {name:SHOWCOLLAPSE,parameterType:boolean,defaultvalue:true,description:是否显示伸缩按钮}\n * @ignoreprops autoFocus | overflowMode\n * @ignoreemits 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 urls = ibiz.util.file.calcFileUpDownUrl(\n c.context,\n c.params,\n newVal,\n c.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","downloadUrl","updating","delta","item","image","tokenHeader","file","blob","value","getValue","tempValue","url","init","editing","theme","source","isCollapse","getImage","ops","valueMode","getText","watch","base64ToBlob","ibiz","newVal","Quill","urls","readOnly","placeholder","nextTick","immediate","deep","_slot","_createVNode","_resolveComponent","val","$event","handleCancel","handleConfirm","handleEdit","_isSlot","_slot2","render"],"mappings":"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"}
|
package/dist/tree-Db38FIKx.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
System.register(["vue","@ibiz-template/vue3-util","@ibiz-template/runtime","lodash-es","qx-util","@ibiz-template-package/vs-tree-ex"],function(M){"use strict";var N,a,l,v,u,D,k,x,S,E,L,I,z,T,d,A;return{setters:[function(s){N=s.defineComponent,a=s.createVNode,l=s.resolveComponent,v=s.computed,u=s.ref,D=s.onUnmounted,k=s.isVNode,x=s.h,S=s.createApp},function(s){E=s.useControlController,L=s.useNamespace,I=s.IBizIcon},function(s){z=s.TreeController},function(s){T=s.debounce},function(s){d=s.createUUID},function(s){A=s.VsTreeComponent}],execute:function(){function s(i){return typeof i=="function"||Object.prototype.toString.call(i)==="[object Object]"&&!k(i)}const B=N({name:"IBizTreeControl",components:{"vs-tree":A},props:{modelData:{type:Object,required:!0},context:{type:Object,required:!0},params:{type:Object,default:()=>({})},provider:{type:Object},mdctrlActiveMode:{type:Number,default:2},singleSelect:{type:Boolean,default:!0},navigational:{type:Boolean,default:void 0}},setup(){var i,f;const o=E((...e)=>new z(...e)),_=L(`control-${o.model.controlType.toLowerCase()}`),V=v(()=>o.state.selectedData.map(e=>e._id));let C=[];const p=u(),y=u(d()),Q=u(""),K=d(),j=u(!0),G=e=>{const t=x(I,e),n=S(t),r=document.createElement("span");return n.mount(r),C.push(n),r},q=e=>e.map(t=>{const n=t?._icon?G({icon:t?._icon}):"";return{_id:t._id,_uuid:t._uuid,_leaf:t._leaf,_text:t._text,icon:n,_disableSelect:t._disableSelect}}),w=v(()=>{if(!o.state.isLoaded)return[];const e=o.model.rootVisible?o.state.rootNodes:o.state.rootNodes.reduce((t,n)=>n._children?t.concat(n._children):t,[]);return q(e)});function F(e,t){const n=t.state.items.find(r=>r._id===e);return n||t.state.items.find(r=>r._uuid===e)}const J=async(e,t)=>{if(!o.state.isLoaded)return;let n;const r=F(e.data._uuid,o);if(r&&r._children&&!o.state.query?(ibiz.log.debug("\u8282\u70B9\u5C55\u5F00\u52A0\u8F7D-\u672C\u5730",r),n=r._children):(ibiz.log.debug("\u8282\u70B9\u5C55\u5F00\u52A0\u8F7D-\u8FDC\u7A0B",r),n=await o.loadNodes(r)),n&&o.state.rootNodes.includes(n[0])){t(w.value),o.state.mobExpandedKey="",y.value=d();return}t(q(n))},O=(e,t)=>{if(o.state.singleSelect)return;const{originData:n}=t,{selectedData:r}=o.state,c=F(n._uuid,o),h=r.filter(b=>b._id!==c._id);h.length===r.length?o.setSelection(r.concat([c])):o.setSelection(h)},U=(e,t)=>{e.stopPropagation();const{originData:n}=t;n._leaf&&(O(e,t),o.onTreeNodeClick(n,e))},R=e=>{o.state.mobExpandedKey=e._uuid||""},W=T(async()=>{var e,t,n,r,c,h,b,P,H;if(p.value){const g=(c=(r=(n=(t=(e=p.value)==null?void 0:e.tree)==null?void 0:t.tree)==null?void 0:n.store)==null?void 0:r.breadcrumb)==null?void 0:c.list,m=g?g[g.length-1]:null;m&&(m.childNodes=[],(H=(P=(b=(h=p.value)==null?void 0:h.tree)==null?void 0:b.tree)==null?void 0:P.store)==null||H.nodesChange([]),m.loaded=!1,m.setExpand(!0))}},500),X=async e=>{o.state.query=e,await o.load()};o.evt.on("onAfterRefreshParent",()=>{W()}),o.evt.on("onLoadSuccess",()=>{o.state.mobExpandedKey="",y.value=d()});const Y=e=>({id:e._id,name:e._text,children:e._children,isLeaf:e._leaf}),Z=e=>{const{originData:t,loadingEl:n}=e;V.value.includes(t._id)&&n&&(n.parentNode.parentNode.classList.add("selected"),e.store.selectedCurrent=e)},ee=(e,t)=>{o.state.singleSelect&&Z(t);const{originData:n}=t;if(!n._leaf)return e("div",{text:ibiz.i18n.t("control.tree.subordinate"),className:"tree-button",click:(r,c)=>{c.store.breadcrumb.list.push(c),c.setExpand(!0),R(n)}})},te=(e,t)=>{const{checked:n}=t;t.setChecked(!n),U(e,t)},$={maxHeight:"100%",checkInherit:!1,nocheckParent:!0,rootName:(f=(i=o.model.detreeNodes)==null?void 0:i.find(e=>e.rootNode))==null?void 0:f.name,renderContent:ee,customNodeClick:te};return j.value&&Object.assign($,{breadcrumb:{el:`#breadcrumb${K}`,link:(e,t)=>{const n=document.createElement("span"),r=document.createElement("span");return r.innerText=t.name,t.icon instanceof HTMLElement&&n.appendChild(t.icon.cloneNode(!0)),n.appendChild(r),n.className=`${_.be("header","crumb")} ${_.is("root",t._vsroot)}`,n.onclick=()=>R.bind(this)(t),n}}}),D(()=>{C.forEach(e=>{e.unmount()}),C=[]}),{c:o,ns:_,treeRefreshKey:y,treeData:w,options:$,breadcrumb:j,checkedKeys:V,uuid:K,treeRef:p,onNodeCheck:O,onNodeClick:U,loadData:J,treeDataFormat:Y,currentVal:Q,onInput:X}},render(){const i={searchbar:()=>this.c.enableQuickSearch?a(l("van-search"),{modelValue:this.c.state.query,class:this.ns.b("quick-search"),clearable:!0,placeholder:this.c.state.placeHolder,"onUpdate:model-value":this.onInput},null):null},f=this.c.controlPanel?"tree":"default";return i[f]=()=>{const o=[this.breadcrumb&&a("div",{class:this.ns.be("header","container")},[a(l("van-sticky"),null,{default:()=>[a("div",{id:`breadcrumb${this.uuid}`,class:[this.ns.b("header"),this.ns.is("no-root",!this.c.model.rootVisible)]},null)]})]),this.c.state.isCreated&&this.c.state.isLoaded&&a(l("vs-tree"),{"show-line":!0,ref:"treeRef",key:this.treeRefreshKey,class:[this.ns.b("content")],lazy:!0,strictLeaf:!0,options:this.options,"show-checkbox":!this.c.state.singleSelect,showIcon:!0,data:this.treeData,highlightCurrent:!0,checkedKeys:this.checkedKeys,format:this.treeDataFormat,load:this.loadData,onCheck:this.onNodeCheck},null)];return a("div",{class:this.ns.b("container")},[o])},a(l("iBizControlBase"),{controller:this.c},s(i)?i:{default:()=>[i]})}});M({TreeControl:B,default:B})}}});
|
|
2
|
-
//# sourceMappingURL=tree-Db38FIKx.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tree-Db38FIKx.js","sources":["../src/control/tree/tree.tsx"],"sourcesContent":["import {\n useControlController,\n useNamespace,\n IBizIcon,\n} from '@ibiz-template/vue3-util';\nimport {\n computed,\n defineComponent,\n PropType,\n ref,\n VNode,\n h as vueH,\n createApp,\n App,\n onUnmounted,\n} from 'vue';\nimport { IDETree } from '@ibiz/model-core';\nimport {\n IControlProvider,\n ITreeController,\n ITreeNodeData,\n TreeController,\n} from '@ibiz-template/runtime';\nimport { debounce } from 'lodash-es';\nimport { createUUID } from 'qx-util';\nimport { VsTreeComponent } from '@ibiz-template-package/vs-tree-ex';\nimport './tree.scss';\n\nexport const TreeControl = defineComponent({\n name: 'IBizTreeControl',\n components: {\n 'vs-tree': VsTreeComponent,\n },\n props: {\n /**\n * @description 树控件模型数据\n */\n modelData: { type: Object as PropType<IDETree>, required: true },\n /**\n * @description 应用上下文对象\n */\n context: { type: Object as PropType<IContext>, required: true },\n /**\n * @description 视图参数对象\n * @default {}\n */\n params: { type: Object as PropType<IParams>, default: () => ({}) },\n /**\n * @description 部件适配器\n */\n provider: { type: Object as PropType<IControlProvider> },\n /**\n * @description 部件激活模式,值为0:无激活,值为1:单击激活,值为2:双击激活\n * @default 2\n */\n mdctrlActiveMode: { type: Number, default: 2 },\n /**\n * @description 是否单选\n * @default true\n */\n singleSelect: { type: Boolean, default: true },\n /**\n * @description 是否是导航内的(即树导航里的树)\n */\n navigational: { type: Boolean, default: undefined },\n },\n setup() {\n const c = useControlController<TreeController>(\n (...args) => new TreeController(...args),\n );\n const ns = useNamespace(`control-${c.model.controlType!.toLowerCase()}`);\n // 默认选中项\n const checkedKeys = computed(() => {\n return c.state.selectedData.map(item => item._id);\n });\n\n // 节点创建的app实例,用于组件销毁时销毁所有实例\n let vueApps: App[] = [];\n // 引用的树组件实例\n const treeRef = ref();\n // 用于树强制刷新\n const treeRefreshKey = ref(createUUID());\n\n // 快捷搜索值\n const currentVal = ref('');\n\n const uuid = createUUID();\n\n // 启用面包屑功能\n const breadcrumb = ref(true);\n\n // 创建图标节点\n const createIconNode = (customProps: IData) => {\n const iop = vueH(IBizIcon, customProps);\n const vueApp = createApp(iop);\n const dom = document.createElement('span');\n vueApp.mount(dom);\n vueApps.push(vueApp);\n return dom;\n };\n\n /**\n * 创建新的节点对象,隔离组件数据和controller数据\n * @param {ITreeNodeData[]} nodes\n * @return {*} {IData[]}\n */\n const toElNodes = (nodes: ITreeNodeData[]): IData[] => {\n return nodes.map(node => {\n const iconDom = node?._icon\n ? createIconNode({ icon: node?._icon })\n : '';\n return {\n _id: node._id,\n _uuid: node._uuid,\n _leaf: node._leaf,\n _text: node._text,\n icon: iconDom,\n _disableSelect: node._disableSelect,\n };\n });\n };\n\n /** 树展示数据 */\n const treeData = computed(() => {\n if (!c.state.isLoaded) {\n return [];\n }\n const nodes = c.model.rootVisible\n ? c.state.rootNodes\n : c.state.rootNodes.reduce<ITreeNodeData[]>((result, nodeData) => {\n if (nodeData._children) {\n return result.concat(nodeData._children as ITreeNodeData[]);\n }\n return result;\n }, []);\n return toElNodes(nodes as ITreeNodeData[]);\n });\n\n /**\n * 根据id查找树节点数据对象\n * @export\n * @param {string} key (数据的_uuid 或者 _id)\n * @param {ITreeController} c\n * @return {*} {(ITreeNodeData | undefined)}\n */\n function findNodeData(\n key: string,\n controller: ITreeController,\n ): ITreeNodeData | undefined {\n const find = controller.state.items.find(item => item._id === key);\n if (find) {\n return find;\n }\n return controller.state.items.find(item => item._uuid === key);\n }\n\n /**\n * 触发节点加载数据\n * @author zk\n * @date 2023-05-29 09:16:07\n * @param {IData} item\n * @param {(nodes: IData[]) => void} callback\n */\n const loadData = async (\n item: IData,\n callback: (nodes: IData[]) => void,\n ) => {\n // 没加载前拦截\n if (!c.state.isLoaded) {\n return;\n }\n\n // 加载时拦截点击事件\n let nodes: ITreeNodeData[];\n const nodeData = findNodeData(item.data._uuid, c)!;\n // 有搜索值为搜索框搜索,必须请求后台数据过滤\n if (nodeData && nodeData._children && !c.state.query) {\n ibiz.log.debug('节点展开加载-本地', nodeData);\n nodes = nodeData._children;\n } else {\n ibiz.log.debug('节点展开加载-远程', nodeData);\n nodes = await c.loadNodes(nodeData);\n }\n // 根节点搜索时,返回树展示数据,并强制刷新\n if (nodes && c.state.rootNodes.includes(nodes[0])) {\n callback(treeData.value);\n c.state.mobExpandedKey = '';\n treeRefreshKey.value = createUUID();\n return;\n }\n callback(toElNodes(nodes));\n };\n\n /**\n * 多选时选中节点变更\n *\n * @param {ITreeNodeData} nodeData\n */\n const onNodeCheck = (event: MouseEvent, opts: IData) => {\n if (c.state.singleSelect) {\n return;\n }\n const { originData } = opts;\n // 选中相关处理\n const { selectedData } = c.state;\n const nodeData = findNodeData(originData._uuid, c)!;\n // 选中里没有则添加,有则删除\n const filterArr = selectedData.filter(\n (item: IData) => item._id !== nodeData._id,\n );\n if (filterArr.length === selectedData.length) {\n c.setSelection(selectedData.concat([nodeData]));\n } else {\n c.setSelection(filterArr);\n }\n };\n\n const onNodeClick = (event: MouseEvent, opts: IData) => {\n event.stopPropagation();\n const { originData } = opts;\n if (!originData._leaf) {\n return;\n }\n onNodeCheck(event, opts);\n c.onTreeNodeClick(originData, event);\n };\n\n // 处理展开节点切换\n const handleExpandedLastKey = (data: IData) => {\n c.state.mobExpandedKey = data._uuid || '';\n };\n\n // 搜索\n const debounceSearch = debounce(async () => {\n if (treeRef.value) {\n // 获取最后展开的节点\n const breadcrumbList =\n treeRef.value?.tree?.tree?.store?.breadcrumb?.list;\n const breadcrumbListLast = breadcrumbList\n ? breadcrumbList[breadcrumbList.length - 1]\n : null;\n if (breadcrumbListLast) {\n breadcrumbListLast.childNodes = [];\n treeRef.value?.tree?.tree?.store?.nodesChange([]);\n breadcrumbListLast.loaded = false;\n breadcrumbListLast.setExpand(true);\n }\n }\n }, 500);\n\n const onInput = async (value: string): Promise<void> => {\n c.state.query = value;\n await c.load();\n };\n\n c.evt.on('onAfterRefreshParent', () => {\n debounceSearch();\n });\n\n c.evt.on('onLoadSuccess', () => {\n c.state.mobExpandedKey = '';\n treeRefreshKey.value = createUUID();\n });\n\n /**\n * 树数据格式化\n *\n * @author zk\n * @date 2023-07-03 11:07:59\n * @param {ITreeNodeData} data\n * @return {*}\n */\n const treeDataFormat = (data: ITreeNodeData) => {\n return {\n id: data._id,\n name: data._text,\n children: data._children,\n isLeaf: data._leaf,\n };\n };\n\n /**\n * 处理单选默认选中样式\n *\n * @author ljx\n * @date 2024-12-12 15:07:59\n * @param {IData} opts\n * @return {*}\n */\n const handleSingleSelect = (opts: IData) => {\n const { originData, loadingEl } = opts;\n if (checkedKeys.value.includes(originData._id) && loadingEl) {\n loadingEl.parentNode.parentNode.classList.add('selected');\n opts.store.selectedCurrent = opts;\n }\n };\n\n const renderContent = (\n h: (tag: string, opt: IData) => VNode,\n opts: IData,\n ) => {\n if (c.state.singleSelect) handleSingleSelect(opts);\n const { originData } = opts;\n if (!originData._leaf) {\n return h('div', {\n text: ibiz.i18n.t('control.tree.subordinate'),\n className: 'tree-button',\n click: (e: Event, _opts: IData) => {\n _opts.store.breadcrumb.list.push(_opts);\n _opts.setExpand(true);\n handleExpandedLastKey(originData);\n },\n });\n }\n };\n\n const customNodeClick = (event: MouseEvent, opts: IData) => {\n const { checked } = opts;\n opts.setChecked(!checked);\n onNodeClick(event, opts);\n };\n\n // vs树配置项\n const options = {\n maxHeight: '100%',\n // 继承父状态\n checkInherit: false,\n // 不能选择父节点\n nocheckParent: true,\n rootName: c.model.detreeNodes?.find(item => item.rootNode)?.name,\n renderContent,\n customNodeClick,\n };\n\n if (breadcrumb.value) {\n Object.assign(options, {\n breadcrumb: {\n el: `#breadcrumb${uuid}`,\n link: (node: IData, data: IData) => {\n const content = document.createElement('span');\n const textDom = document.createElement('span');\n textDom.innerText = data.name;\n if (data.icon instanceof HTMLElement) {\n content.appendChild(data.icon.cloneNode(true));\n }\n content.appendChild(textDom);\n content.className = `${ns.be('header', 'crumb')} ${ns.is(\n 'root',\n data._vsroot,\n )}`;\n content.onclick = () => handleExpandedLastKey.bind(this)(data);\n return content;\n },\n },\n });\n }\n\n onUnmounted(() => {\n // 卸载绘制的图标节点\n vueApps.forEach((vueApp: App) => {\n vueApp.unmount();\n });\n vueApps = [];\n });\n\n return {\n c,\n ns,\n treeRefreshKey,\n treeData,\n options,\n breadcrumb,\n checkedKeys,\n uuid,\n treeRef,\n onNodeCheck,\n onNodeClick,\n loadData,\n treeDataFormat,\n currentVal,\n onInput,\n };\n },\n render() {\n const slots: IData = {\n searchbar: () => {\n if (!this.c.enableQuickSearch) {\n return null;\n }\n return (\n <van-search\n modelValue={this.c.state.query}\n class={this.ns.b('quick-search')}\n clearable={true}\n placeholder={this.c.state.placeHolder}\n onUpdate:model-value={this.onInput}\n ></van-search>\n );\n },\n };\n const key = this.c.controlPanel ? 'tree' : 'default';\n slots[key] = () => {\n const content = [\n this.breadcrumb && (\n <div class={this.ns.be('header', 'container')}>\n <van-sticky>\n <div\n id={`breadcrumb${this.uuid}`}\n class={[\n this.ns.b('header'),\n this.ns.is('no-root', !this.c.model.rootVisible),\n ]}\n ></div>\n </van-sticky>\n </div>\n ),\n this.c.state.isCreated && this.c.state.isLoaded && (\n <vs-tree\n show-line\n ref='treeRef'\n key={this.treeRefreshKey}\n class={[this.ns.b('content')]}\n lazy={true}\n strictLeaf={true}\n options={this.options}\n show-checkbox={!this.c.state.singleSelect}\n showIcon={true}\n data={this.treeData}\n highlightCurrent={true}\n checkedKeys={this.checkedKeys}\n format={this.treeDataFormat}\n load={this.loadData}\n onCheck={this.onNodeCheck}\n ></vs-tree>\n ),\n ];\n return <div class={this.ns.b('container')}>{content}</div>;\n };\n return <iBizControlBase controller={this.c}>{slots}</iBizControlBase>;\n },\n});\n\nexport default TreeControl;\n"],"names":["_isSlot","s","_isVNode","TreeControl","defineComponent","components","VsTreeComponent","props","type","Object","required","default","Boolean","setup","c","_a","_b","useControlController","args","TreeController","checkedKeys","computed","selectedData","item","vueApps","ref","treeRefreshKey","createUUID","treeRef","uuid","iop","vueH","IBizIcon","customProps","currentVal","createApp","vueApp","breadcrumb","toElNodes","nodes","createIconNode","node","mount","push","iconDom","map","result","nodeData","_text","icon","findNodeData","key","controller","find","treeData","loadData","callback","state","onNodeCheck","event","opts","originData","filterArr","onNodeClick","ibiz","debug","loadNodes","handleExpandedLastKey","data","rootNodes","mobExpandedKey","value","_e","_i","breadcrumbList","_d","_c","_b2","_a2","breadcrumbListLast","_h","_g","_f","debounceSearch","treeDataFormat","setSelection","stopPropagation","_leaf","loadingEl","renderContent","h","handleSingleSelect","debounce","e","_opts","customNodeClick","onInput","on","evt","options","content","textDom","isLeaf","ns","onUnmounted","className","click","setExpand","_createVNode","_resolveComponent","checked","slots","maxHeight","checkInherit","nocheckParent","rootName","model","name","assign","link","document","createElement","innerText","appendChild","onclick","forEach","unmount","exports"],"mappings":"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"}
|