morghulis 4.2.16 → 4.3.2
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/README.md +64 -113
- package/dist/index.cjs +4 -0
- package/dist/index.js +10021 -0
- package/dist/style.css +2 -0
- package/dist/types/components/basic/DataWrapper.vue.d.ts +28 -0
- package/dist/types/components/basic/MButton.vue.d.ts +23 -0
- package/dist/types/components/basic/MIcon.vue.d.ts +18 -0
- package/dist/types/components/basic/MOptionContent.vue.d.ts +16 -0
- package/dist/types/components/basic/MOptionItem.vue.d.ts +20 -0
- package/dist/types/components/basic/MOptionList.vue.d.ts +23 -0
- package/dist/types/components/basic/MText.vue.d.ts +22 -0
- package/dist/types/components/basic/types.d.ts +35 -0
- package/dist/types/components/cell/MCell.vue.d.ts +14 -0
- package/dist/types/components/cell/instances/char/CharCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/char/ColorCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/char/IconCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/char/MultiSetCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/char/SetCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/char/index.d.ts +6 -0
- package/dist/types/components/cell/instances/date/DateArrayCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/date/DateCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/date/DateRangeCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/date/TimeCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/date/TimeRangeCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/date/index.d.ts +6 -0
- package/dist/types/components/cell/instances/date/methods.d.ts +1 -0
- package/dist/types/components/cell/instances/index.d.ts +5 -0
- package/dist/types/components/cell/instances/refer/AutoCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/refer/CascadeCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/refer/SelectCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/refer/TransferCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/refer/TreeCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/refer/hooks.d.ts +16 -0
- package/dist/types/components/cell/instances/refer/index.d.ts +6 -0
- package/dist/types/components/cell/instances/simple/BooleanCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/simple/DefaultCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/simple/NumberCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/simple/index.d.ts +4 -0
- package/dist/types/components/cell/instances/special/FileCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/special/ObjectCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/special/RichCell.vue.d.ts +12 -0
- package/dist/types/components/cell/instances/special/index.d.ts +4 -0
- package/dist/types/components/cell/methods.d.ts +1 -0
- package/dist/types/components/cell/types.d.ts +7 -0
- package/dist/types/components/cell/widgets/MappingEditor.vue.d.ts +10 -0
- package/dist/types/components/editor/MCharts.vue.d.ts +12 -0
- package/dist/types/components/editor/MObjectEditor.vue.d.ts +11 -0
- package/dist/types/components/editor/MRichEditor.vue.d.ts +11 -0
- package/dist/types/components/editor/MTransferEditor.vue.d.ts +19 -0
- package/dist/types/components/feedback/MDialog.vue.d.ts +44 -0
- package/dist/types/components/feedback/MPopover.vue.d.ts +25 -0
- package/dist/types/components/feedback/types.d.ts +21 -0
- package/dist/types/components/form/MForm.vue.d.ts +21 -0
- package/dist/types/components/form/types.d.ts +2 -0
- package/dist/types/components/index.d.ts +19 -0
- package/dist/types/components/meta/MetaPanel.vue.d.ts +15 -7
- package/dist/types/components/meta/contents/MetaFieldForm.vue.d.ts +7 -0
- package/dist/types/components/meta/contents/MetaFieldList.vue.d.ts +8 -0
- package/dist/types/components/meta/contents/MetaViewForm.vue.d.ts +12 -0
- package/dist/types/components/meta/contents/MetaViewList.vue.d.ts +17 -0
- package/dist/types/components/meta/plugins/FormatDialog.vue.d.ts +10 -0
- package/dist/types/components/meta/plugins/FormatPlugin.vue.d.ts +4 -0
- package/dist/types/components/meta/plugins/ReferDialog.vue.d.ts +10 -0
- package/dist/types/components/meta/plugins/ReferPlugin.vue.d.ts +4 -0
- package/dist/types/components/meta/plugins/ViewCodePlugin.vue.d.ts +4 -0
- package/dist/types/components/meta/plugins/format/FormatEditor.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/format/instances/DateFormats.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/format/instances/FileFormats.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/format/instances/NumberFormats.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/format/instances/SetFormats.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/format/instances/TextFormats.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/format/instances/index.d.ts +6 -0
- package/dist/types/components/meta/plugins/refer/ReferEditor.vue.d.ts +13 -0
- package/dist/types/components/meta/plugins/refer/tools/ReferOption.vue.d.ts +12 -0
- package/dist/types/components/meta/plugins/refer/tools/ReferTree.vue.d.ts +3 -0
- package/dist/types/components/meta/widgets/CustomFields.vue.d.ts +12 -0
- package/dist/types/components/meta/widgets/MetaNameInput.vue.d.ts +6 -0
- package/dist/types/components/meta/widgets/MetaSelect.vue.d.ts +23 -0
- package/dist/types/components/meta/widgets/TreeRootSelection.vue.d.ts +13 -0
- package/dist/types/components/plugin/PluginButtonContent.vue.d.ts +15 -0
- package/dist/types/components/plugin/PluginColumnContent.vue.d.ts +10 -0
- package/dist/types/components/table/DataTable.vue.d.ts +33 -0
- package/dist/types/components/table/consts.d.ts +14 -0
- package/dist/types/components/table/hooks/table-sort.d.ts +6 -0
- package/dist/types/components/table/tools/DTCell.vue.d.ts +17 -0
- package/dist/types/components/table/tools/DTCellEditor.vue.d.ts +16 -0
- package/dist/types/components/table/tools/DTController.vue.d.ts +26 -0
- package/dist/types/components/table/tools/DTFooter.vue.d.ts +9 -0
- package/dist/types/components/table/tools/DTHeader.vue.d.ts +20 -0
- package/dist/types/components/table/tools/DTIndex.vue.d.ts +16 -0
- package/dist/types/components/table/tools/DTSave.vue.d.ts +16 -0
- package/dist/types/components/table/tools/DTSaveHeader.vue.d.ts +6 -0
- package/dist/types/components/table/tools/DTSearch.vue.d.ts +15 -0
- package/dist/types/components/table/tools/DTViews.vue.d.ts +12 -0
- package/dist/types/components/table/types.d.ts +18 -0
- package/dist/types/components/tree/DataTree.vue.d.ts +115 -0
- package/dist/types/components/tree/methods.d.ts +1 -0
- package/dist/types/components/tree/tools/DTreeController.vue.d.ts +22 -0
- package/dist/types/components/tree/tools/DTreeNode.vue.d.ts +11 -0
- package/dist/types/components/tree/tools/DTreeNodeEdit.vue.d.ts +27 -0
- package/dist/types/components/tree/tools/DTreeTable.vue.d.ts +10 -0
- package/dist/types/components/tree/types.d.ts +16 -0
- package/dist/types/components/tree/widgets/DTreeTablePath.vue.d.ts +3 -0
- package/dist/types/components/tree/widgets/DTreeTablePlugin.vue.d.ts +4 -0
- package/dist/types/components/types.d.ts +4 -2
- package/dist/types/components/uploader/MUploader.vue.d.ts +10 -0
- package/dist/types/components/uploader/UploadTable.vue.d.ts +15 -0
- package/dist/types/components/uploader/hooks.d.ts +5 -0
- package/dist/types/components/uploader/tools/ClipUploader.vue.d.ts +12 -0
- package/dist/types/components/uploader/tools/DictDialog.vue.d.ts +7 -0
- package/dist/types/components/uploader/tools/FileUploader.vue.d.ts +13 -0
- package/dist/types/components/uploader/tools/UploadControl.vue.d.ts +22 -0
- package/dist/types/components/uploader/widgets/UploadDictionary.vue.d.ts +7 -0
- package/dist/types/components/uploader/widgets/UploadSwitcher.vue.d.ts +16 -0
- package/dist/types/components/viewer/MFileView.vue.d.ts +8 -0
- package/dist/types/components/viewer/instances/MDataViewer.vue.d.ts +6 -0
- package/dist/types/components/viewer/instances/MImageViewer.vue.d.ts +6 -0
- package/dist/types/components/viewer/instances/MPdfViewer.vue.d.ts +7 -0
- package/dist/types/components/viewer/instances/MTxtView.vue.d.ts +6 -0
- package/dist/types/components/viewer/instances/MUnsupportedViewer.vue.d.ts +3 -0
- package/dist/types/components/viewer/instances/index.d.ts +6 -0
- package/dist/types/components/viewer/use-file.d.ts +6 -0
- package/dist/types/contents/MApp.vue.d.ts +15 -0
- package/dist/types/contents/MSystem.vue.d.ts +3 -0
- package/dist/types/contents/MWelcome.vue.d.ts +3 -0
- package/dist/types/contents/common/NoPermission.vue.d.ts +3 -0
- package/dist/types/contents/common/NotFound.vue.d.ts +3 -0
- package/dist/types/contents/frame/MFrame.vue.d.ts +17 -0
- package/dist/types/contents/frame/menu/FrameMenu.vue.d.ts +10 -0
- package/dist/types/contents/frame/menu/FrameNavigate.vue.d.ts +7 -0
- package/dist/types/contents/frame/menu/MMenu.vue.d.ts +12 -0
- package/dist/types/contents/frame/menu/MenuTreeNode.vue.d.ts +10 -0
- package/dist/types/contents/frame/user/FrameAuth.vue.d.ts +3 -0
- package/dist/types/{components/view/login/SignIn.vue.d.ts → contents/frame/user/edit/AccountManage.vue.d.ts} +4 -6
- package/dist/types/{components/view/login/MLogin.vue.d.ts → contents/frame/user/edit/PasswordManage.vue.d.ts} +4 -2
- package/dist/types/{components/view/login/SignUp.vue.d.ts → contents/frame/user/edit/ProfileManage.vue.d.ts} +4 -7
- package/dist/types/contents/frame/user/login/AuthDropdown.vue.d.ts +3 -0
- package/dist/types/contents/frame/user/login/LoginForm.vue.d.ts +15 -0
- package/dist/types/contents/index.d.ts +2 -0
- package/dist/types/contents/system/AccountManage.vue.d.ts +3 -0
- package/dist/types/contents/system/MenuManage.vue.d.ts +3 -0
- package/dist/types/contents/system/RoleManage.vue.d.ts +3 -0
- package/dist/types/contents/system/UserManage.vue.d.ts +3 -0
- package/dist/types/contents/system/menu/AuthSetting.vue.d.ts +11 -0
- package/dist/types/contents/system/menu/MenuAuthPlugin.vue.d.ts +4 -0
- package/dist/types/contents/system/menu/RouteSetting.vue.d.ts +12 -0
- package/dist/types/contents/system/role/AccountSetting.vue.d.ts +11 -0
- package/dist/types/contents/system/role/RoleMenuView.vue.d.ts +8 -0
- package/dist/types/global-components.d.ts +23 -0
- package/dist/types/index.d.ts +8 -34
- package/dist/types/library/index.d.ts +19 -0
- package/dist/types/library/store-options/index.d.ts +12 -0
- package/dist/types/library/store-options/types.d.ts +12 -0
- package/dist/types/library/store-user/index.d.ts +12 -0
- package/dist/types/library/store-user/types.d.ts +15 -0
- package/dist/types/library/types.d.ts +15 -0
- package/dist/types/library/use-auth/consts.d.ts +1 -0
- package/dist/types/library/use-auth/index.d.ts +6 -0
- package/dist/types/library/use-auth/types.d.ts +7 -0
- package/dist/types/library/use-channel/index.d.ts +27 -0
- package/dist/types/library/use-channel/types.d.ts +21 -0
- package/dist/types/library/use-channel-container/index.d.ts +16 -0
- package/dist/types/library/use-dao/consts.d.ts +17 -0
- package/dist/types/library/use-dao/index.d.ts +26 -0
- package/dist/types/library/use-dao/methods.d.ts +2 -0
- package/dist/types/library/use-dao/types.d.ts +27 -0
- package/dist/types/library/use-data/index.d.ts +5 -0
- package/dist/types/library/use-data/methods.d.ts +3 -0
- package/dist/types/library/use-data/types.d.ts +38 -0
- package/dist/types/library/use-excel/index.d.ts +8 -0
- package/dist/types/library/use-excel/types.d.ts +20 -0
- package/dist/types/library/use-feedback/consts.d.ts +1 -0
- package/dist/types/library/use-feedback/index.d.ts +16 -0
- package/dist/types/{hooks/utils/use-icon → library/use-feedback}/types.d.ts +5 -1
- package/dist/types/library/use-item/types.d.ts +48 -0
- package/dist/types/library/use-menu/index.d.ts +62 -0
- package/dist/types/library/use-meta-query/consts.d.ts +9 -0
- package/dist/types/library/use-meta-query/index.d.ts +13 -0
- package/dist/types/library/use-meta-query/methods.d.ts +15 -0
- package/dist/types/library/use-meta-query/types/field.d.ts +74 -0
- package/dist/types/library/use-meta-query/types/meta.d.ts +27 -0
- package/dist/types/library/use-meta-query/types/query.d.ts +44 -0
- package/dist/types/library/use-meta-query/types/view.d.ts +33 -0
- package/dist/types/library/use-pagination/index.d.ts +16 -0
- package/dist/types/{hooks/utils → library}/use-paster/index.d.ts +1 -0
- package/dist/types/library/use-plugin/index.d.ts +9 -0
- package/dist/types/library/use-plugin/types.d.ts +47 -0
- package/dist/types/library/use-request/index.d.ts +5 -0
- package/dist/types/{components/view/admin/hooks/size.d.ts → library/use-size/index.d.ts} +1 -1
- package/dist/types/library/use-socket/index.d.ts +11 -0
- package/dist/types/library/use-socket/url.d.ts +1 -0
- package/dist/types/library/use-socket-callback/index.d.ts +1 -0
- package/dist/types/library/use-valar/index.d.ts +130 -0
- package/dist/types/library/use-valar/types.d.ts +24 -0
- package/dist/types/style.d.ts +1 -0
- package/dist/types/types.d.ts +2 -0
- package/package.json +72 -48
- package/dist/full-width-button-handler-D8h6mHdo-D4lDweZZ.js +0 -6
- package/dist/full-width-button-handler-D8h6mHdo-D4lDweZZ.js.map +0 -1
- package/dist/index-Crd-M4dc.js +0 -45199
- package/dist/index-Crd-M4dc.js.map +0 -1
- package/dist/index.css +0 -1
- package/dist/morghulis-core.es.js +0 -32840
- package/dist/morghulis-core.es.js.map +0 -1
- package/dist/morghulis-core.umd.js +0 -4667
- package/dist/morghulis-core.umd.js.map +0 -1
- package/dist/string-styles-DT93GIY_-DT93GIY_.js +0 -122
- package/dist/string-styles-DT93GIY_-DT93GIY_.js.map +0 -1
- package/dist/styles-handler-nPP1xL5s-CTGOF8Su.js +0 -16
- package/dist/styles-handler-nPP1xL5s-CTGOF8Su.js.map +0 -1
- package/dist/types/components/MApp.vue.d.ts +0 -20
- package/dist/types/components/data/cell/MCell.vue.d.ts +0 -19
- package/dist/types/components/data/cell/char/CharCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/char/ColorCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/char/IconCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/char/MultiSetCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/char/SetCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/date/DateArrayCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/date/DateCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/date/DateRangeCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/date/DateTypes.d.ts +0 -1
- package/dist/types/components/data/cell/date/TimeCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/date/TimeRangeCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/refer/AutoCell.vue.d.ts +0 -16
- package/dist/types/components/data/cell/refer/CascadeCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/refer/FieldTransfer.vue.d.ts +0 -14
- package/dist/types/components/data/cell/refer/SelectCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/refer/TransferCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/refer/TreeCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/refer/hooks.d.ts +0 -223
- package/dist/types/components/data/cell/simple/BooleanCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/simple/DefaultCell.vue.d.ts +0 -7
- package/dist/types/components/data/cell/simple/NumberCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/special/FileCell.vue.d.ts +0 -14
- package/dist/types/components/data/cell/special/FileTypes.d.ts +0 -1
- package/dist/types/components/data/cell/special/FilesCell.vue.d.ts +0 -2
- package/dist/types/components/data/cell/special/ObjectCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/special/RichCell.vue.d.ts +0 -9
- package/dist/types/components/data/cell/types.d.ts +0 -21
- package/dist/types/components/data/form/DForm.vue.d.ts +0 -133
- package/dist/types/components/data/form/MForm.vue.d.ts +0 -21
- package/dist/types/components/data/form/hooks.d.ts +0 -36
- package/dist/types/components/data/form/types.d.ts +0 -4
- package/dist/types/components/data/form/widgets/MFormFiles.vue.d.ts +0 -8
- package/dist/types/components/data/form/widgets/MFormLabel.vue.d.ts +0 -12
- package/dist/types/components/data/plugin/MPluginButtons.vue.d.ts +0 -11
- package/dist/types/components/data/plugin/MPluginColumn.vue.d.ts +0 -11
- package/dist/types/components/data/plugin/types.d.ts +0 -56
- package/dist/types/components/data/table/MTable.vue.d.ts +0 -41
- package/dist/types/components/data/table/hooks/rest.d.ts +0 -10
- package/dist/types/components/data/table/hooks/selection.d.ts +0 -17
- package/dist/types/components/data/table/hooks/sortable.d.ts +0 -6
- package/dist/types/components/data/table/hooks/style.d.ts +0 -22
- package/dist/types/components/data/table/types.d.ts +0 -27
- package/dist/types/components/data/table/usages/data-table/DTable.vue.d.ts +0 -220
- package/dist/types/components/data/table/usages/data-table/hooks.d.ts +0 -332
- package/dist/types/components/data/table/usages/data-table/types.d.ts +0 -17
- package/dist/types/components/data/table/usages/plain-table/PTable.vue.d.ts +0 -25
- package/dist/types/components/data/table/usages/plain-table/hooks.d.ts +0 -93
- package/dist/types/components/data/table/usages/plain-table/types.d.ts +0 -28
- package/dist/types/components/data/table/widgets/MTableButtons.vue.d.ts +0 -10
- package/dist/types/components/data/table/widgets/MTableCell.vue.d.ts +0 -19
- package/dist/types/components/data/table/widgets/MTableColumns.vue.d.ts +0 -10
- package/dist/types/components/data/table/widgets/MTableControl.vue.d.ts +0 -25
- package/dist/types/components/data/table/widgets/MTableFinder.vue.d.ts +0 -22
- package/dist/types/components/data/table/widgets/MTableHeaderCell.vue.d.ts +0 -19
- package/dist/types/components/data/table/widgets/MTableIndexCell.vue.d.ts +0 -11
- package/dist/types/components/data/table/widgets/MTablePage.vue.d.ts +0 -12
- package/dist/types/components/data/table/widgets/MTableSelection.vue.d.ts +0 -18
- package/dist/types/components/data/table/widgets/MTableSize.vue.d.ts +0 -10
- package/dist/types/components/data/tree/MTree.vue.d.ts +0 -63
- package/dist/types/components/data/tree/hooks/disclosure.d.ts +0 -11
- package/dist/types/components/data/tree/hooks/selection.d.ts +0 -10
- package/dist/types/components/data/tree/types.d.ts +0 -32
- package/dist/types/components/data/tree/usages/data-tree/DTree.vue.d.ts +0 -54
- package/dist/types/components/data/tree/usages/data-tree/DTreeTable.vue.d.ts +0 -12
- package/dist/types/components/data/tree/usages/data-tree/DTreeTablePlugin.vue.d.ts +0 -3
- package/dist/types/components/data/tree/usages/data-tree/hooks.d.ts +0 -248
- package/dist/types/components/data/tree/usages/data-tree/types.d.ts +0 -15
- package/dist/types/components/data/tree/usages/menu-tree/MenuTree.vue.d.ts +0 -12
- package/dist/types/components/data/tree/usages/menu-tree/MenuTreeNode.vue.d.ts +0 -9
- package/dist/types/components/data/tree/usages/menu-tree/hooks.d.ts +0 -19
- package/dist/types/components/data/tree/widgets/MTreeBatchInsert.vue.d.ts +0 -13
- package/dist/types/components/data/tree/widgets/MTreeNode.vue.d.ts +0 -30
- package/dist/types/components/data/tree/widgets/MTreeRootControl.vue.d.ts +0 -24
- package/dist/types/components/data/tree/widgets/MTreeToggleButton.vue.d.ts +0 -13
- package/dist/types/components/data/upload/DUpload.vue.d.ts +0 -12
- package/dist/types/components/data/upload/FieldMapping.vue.d.ts +0 -10
- package/dist/types/components/data/upload/PUpload.vue.d.ts +0 -10
- package/dist/types/components/feedbacks/dialog/MDialog.vue.d.ts +0 -57
- package/dist/types/components/feedbacks/dialog/types.d.ts +0 -27
- package/dist/types/components/feedbacks/dialog/widgets/MDialogFooter.vue.d.ts +0 -21
- package/dist/types/components/feedbacks/dialog/widgets/MDialogHeader.vue.d.ts +0 -23
- package/dist/types/components/feedbacks/feedback.d.ts +0 -6
- package/dist/types/components/feedbacks/index.d.ts +0 -14
- package/dist/types/components/feedbacks/popover/MPopover.vue.d.ts +0 -39
- package/dist/types/components/feedbacks/popover/types.d.ts +0 -13
- package/dist/types/components/meta/MetaEditor.vue.d.ts +0 -10
- package/dist/types/components/meta/MetaViewEditor.vue.d.ts +0 -12
- package/dist/types/components/meta/field/MetaFieldForm.vue.d.ts +0 -9
- package/dist/types/components/meta/field/MetaFieldList.vue.d.ts +0 -6
- package/dist/types/components/meta/field/tools.d.ts +0 -5
- package/dist/types/components/meta/field/widgets/MetaFieldAdd.vue.d.ts +0 -8
- package/dist/types/components/meta/field/widgets/MetaFieldCustom.vue.d.ts +0 -19
- package/dist/types/components/meta/field/widgets/MetaFieldFormat.vue.d.ts +0 -12
- package/dist/types/components/meta/field/widgets/MetaFieldJson.vue.d.ts +0 -15
- package/dist/types/components/meta/field/widgets/MetaFieldProp.vue.d.ts +0 -3
- package/dist/types/components/meta/field/widgets/MetaFieldRefer.vue.d.ts +0 -10
- package/dist/types/components/meta/field/widgets/formats/DateFormats.vue.d.ts +0 -14
- package/dist/types/components/meta/field/widgets/formats/FileFormats.vue.d.ts +0 -14
- package/dist/types/components/meta/field/widgets/formats/NumberFormats.vue.d.ts +0 -14
- package/dist/types/components/meta/field/widgets/formats/SetFormats.vue.d.ts +0 -14
- package/dist/types/components/meta/field/widgets/formats/TextFormats.vue.d.ts +0 -14
- package/dist/types/components/meta/tools/MetaCopy.vue.d.ts +0 -6
- package/dist/types/components/meta/tools/MetaFieldCodes.vue.d.ts +0 -9
- package/dist/types/components/meta/tools/MetaSelect.vue.d.ts +0 -19
- package/dist/types/components/meta/tools/MetaViewCurrent.vue.d.ts +0 -3
- package/dist/types/components/meta/types.d.ts +0 -6
- package/dist/types/components/system/MSystem.vue.d.ts +0 -2
- package/dist/types/components/system/account/MAccount.vue.d.ts +0 -2
- package/dist/types/components/system/account/MAccountUser.vue.d.ts +0 -6
- package/dist/types/components/system/menu/MMenu.vue.d.ts +0 -2
- package/dist/types/components/system/menu/MMenuPlugin.vue.d.ts +0 -3
- package/dist/types/components/system/menu/MMenuView.vue.d.ts +0 -2
- package/dist/types/components/system/role/MRole.vue.d.ts +0 -2
- package/dist/types/components/system/role/MRoleAccount.vue.d.ts +0 -8
- package/dist/types/components/system/role/MRoleTransfer.vue.d.ts +0 -10
- package/dist/types/components/system/user/MUser.vue.d.ts +0 -2
- package/dist/types/components/system/user/MUserForm.vue.d.ts +0 -10
- package/dist/types/components/view/NoPermission.vue.d.ts +0 -2
- package/dist/types/components/view/NotFound.vue.d.ts +0 -2
- package/dist/types/components/view/admin/MAdmin.vue.d.ts +0 -14
- package/dist/types/components/view/admin/MAdminAuth.vue.d.ts +0 -12
- package/dist/types/components/view/admin/MAdminAuthControl.vue.d.ts +0 -6
- package/dist/types/components/view/admin/MAdminMain.vue.d.ts +0 -2
- package/dist/types/components/view/admin/MAdminMenu.vue.d.ts +0 -6
- package/dist/types/components/view/admin/MAdminNeck.vue.d.ts +0 -6
- package/dist/types/components/view/admin/MAdminTitle.vue.d.ts +0 -2
- package/dist/types/components/view/admin/editors/UserAccountEditor.vue.d.ts +0 -2
- package/dist/types/components/view/admin/editors/UserPasswordEditor.vue.d.ts +0 -6
- package/dist/types/components/view/admin/hooks/menu.d.ts +0 -5
- package/dist/types/components/view/home/MHome.vue.d.ts +0 -2
- package/dist/types/components/view/login/hooks.d.ts +0 -2
- package/dist/types/components/widgets/button/CtrlButton.vue.d.ts +0 -27
- package/dist/types/components/widgets/button/types.d.ts +0 -24
- package/dist/types/components/widgets/echarts/ECharts.vue.d.ts +0 -11
- package/dist/types/components/widgets/echarts/defaultOptions.d.ts +0 -13
- package/dist/types/components/widgets/editor/MKeyValueEditor.vue.d.ts +0 -11
- package/dist/types/components/widgets/editor/MObjectEditor.vue.d.ts +0 -13
- package/dist/types/components/widgets/editor/MRichEditor.vue.d.ts +0 -10
- package/dist/types/components/widgets/file/MFileView.vue.d.ts +0 -8
- package/dist/types/components/widgets/file/viewer/VCsv.vue.d.ts +0 -5
- package/dist/types/components/widgets/file/viewer/VExcel.vue.d.ts +0 -5
- package/dist/types/components/widgets/file/viewer/VImage.vue.d.ts +0 -5
- package/dist/types/components/widgets/file/viewer/VPdf.vue.d.ts +0 -5
- package/dist/types/components/widgets/file/viewer/VTxt.vue.d.ts +0 -5
- package/dist/types/components/widgets/icon/MIcon.vue.d.ts +0 -19
- package/dist/types/components/widgets/icon/types.d.ts +0 -28
- package/dist/types/components/widgets/select/MOption.vue.d.ts +0 -23
- package/dist/types/components/widgets/select/TreeRootSelection.vue.d.ts +0 -12
- package/dist/types/components/widgets/wrap/MChannelHub.vue.d.ts +0 -2
- package/dist/types/components/widgets/wrap/MShrink.vue.d.ts +0 -24
- package/dist/types/components/widgets/wrap/MWrap.vue.d.ts +0 -36
- package/dist/types/components/widgets/wrap/types.d.ts +0 -5
- package/dist/types/exports/classes.d.ts +0 -4
- package/dist/types/exports/components.d.ts +0 -20
- package/dist/types/exports/hooks.d.ts +0 -11
- package/dist/types/exports/instances.d.ts +0 -8
- package/dist/types/exports/methods.d.ts +0 -1
- package/dist/types/exports/types.d.ts +0 -10
- package/dist/types/hooks/core/use-channel/hooks.d.ts +0 -14
- package/dist/types/hooks/core/use-channel/types.d.ts +0 -48
- package/dist/types/hooks/core/use-core/index.d.ts +0 -3
- package/dist/types/hooks/core/use-core/store.d.ts +0 -13
- package/dist/types/hooks/core/use-core/types.d.ts +0 -12
- package/dist/types/hooks/core/use-request/index.d.ts +0 -16
- package/dist/types/hooks/core/use-router/index.d.ts +0 -2
- package/dist/types/hooks/core/use-socket/index.d.ts +0 -5
- package/dist/types/hooks/data/meta/MetaField.d.ts +0 -44
- package/dist/types/hooks/data/meta/MetaFormat.d.ts +0 -24
- package/dist/types/hooks/data/meta/MetaProperty.d.ts +0 -13
- package/dist/types/hooks/data/meta/MetaRefer.d.ts +0 -19
- package/dist/types/hooks/data/meta/MetaView.d.ts +0 -48
- package/dist/types/hooks/data/meta/parser.d.ts +0 -18
- package/dist/types/hooks/data/meta/types.d.ts +0 -146
- package/dist/types/hooks/data/meta/vars.d.ts +0 -19
- package/dist/types/hooks/data/types.d.ts +0 -18
- package/dist/types/hooks/data/use-collector/index.d.ts +0 -14
- package/dist/types/hooks/data/use-collector/types.d.ts +0 -4
- package/dist/types/hooks/data/use-condition/Condition.d.ts +0 -6
- package/dist/types/hooks/data/use-condition/index.d.ts +0 -41
- package/dist/types/hooks/data/use-condition/types.d.ts +0 -8
- package/dist/types/hooks/data/use-condition/vars.d.ts +0 -20
- package/dist/types/hooks/data/use-dao/Dao.d.ts +0 -19
- package/dist/types/hooks/data/use-dao/Search.d.ts +0 -13
- package/dist/types/hooks/data/use-dao/index.d.ts +0 -9
- package/dist/types/hooks/data/use-dao/types.d.ts +0 -23
- package/dist/types/hooks/data/use-finder/Lookup.d.ts +0 -10
- package/dist/types/hooks/data/use-finder/index.d.ts +0 -23
- package/dist/types/hooks/data/use-finder/parser.d.ts +0 -3
- package/dist/types/hooks/data/use-finder/types.d.ts +0 -9
- package/dist/types/hooks/data/use-geo/index.d.ts +0 -112
- package/dist/types/hooks/data/use-geo/types.d.ts +0 -12
- package/dist/types/hooks/data/use-model/Rest.d.ts +0 -21
- package/dist/types/hooks/data/use-model/hooks.d.ts +0 -77
- package/dist/types/hooks/data/use-model/tools.d.ts +0 -10
- package/dist/types/hooks/data/use-model/types.d.ts +0 -42
- package/dist/types/hooks/utils/use-aoa/index.d.ts +0 -10
- package/dist/types/hooks/utils/use-aoa/types.d.ts +0 -5
- package/dist/types/hooks/utils/use-auth/tool.d.ts +0 -1
- package/dist/types/hooks/utils/use-auth/user.d.ts +0 -149
- package/dist/types/hooks/utils/use-cookie/index.d.ts +0 -6
- package/dist/types/hooks/utils/use-xlsx/index.d.ts +0 -13
- package/dist/types/hooks/utils/use-xlsx/types.d.ts +0 -31
- package/dist/vanilla-picker-BAEwS4Fy-Bbe5Ex8w.js +0 -537
- package/dist/vanilla-picker-BAEwS4Fy-Bbe5Ex8w.js.map +0 -1
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,o)=>(o=n==null?{}:e(i(n)),s(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));let l=require("@fortawesome/fontawesome-svg-core"),u=require("@fortawesome/free-solid-svg-icons"),d=require("vue"),f=require("@fortawesome/vue-fontawesome"),p=require("@vueuse/core"),m=require("vue-router"),h=require("nanoid"),g=require("lodash-es"),_=require("axios");_=c(_,1);let v=require("nprogress");v=c(v,1);let y=require("element-plus"),b=require("sortablejs");b=c(b,1);var x=(0,d.defineComponent)({__name:`MIcon`,props:{disabled:{type:Boolean},icon:{},bounce:{type:Boolean},shake:{type:Boolean},beatFade:{type:Boolean},beat:{type:Boolean},fade:{type:Boolean},spinPulse:{type:Boolean},spinReverse:{type:Boolean},rotateBy:{type:Boolean},swapOpacity:{type:Boolean},spin:{type:Boolean},pulse:{type:Boolean},inverse:{type:Boolean},flip:{type:[String,Boolean]},rotation:{},iconSize:{default:`sm`},type:{default:``},size:{default:`default`}},setup(e){let t=(0,d.useSlots)(),n=(0,d.computed)(()=>t.default?`${(i[r.size]??14)/3}px`:0),r=e,i={small:12,large:16,default:14},a={primary:`#409eff`,danger:`#f56c6c`,warning:`#eaa844`,success:`#67c23a`,info:`#cccccc`},o=(0,d.computed)(()=>{let e=i[r.size]??14,t=a[r.type]??``;return{fontSize:`${e}px`,color:t}});return(t,r)=>((0,d.openBlock)(),(0,d.createElementBlock)(`span`,{style:(0,d.normalizeStyle)(o.value)},[e.icon?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(f.FontAwesomeIcon),{key:0,icon:e.icon,style:(0,d.normalizeStyle)({marginRight:n.value}),fixedWidth:!0,size:e.iconSize,bounce:e.bounce,shake:e.shake,beatFade:e.beatFade,beat:e.beat,fade:e.fade,spinPulse:e.spinPulse,spinReverse:e.spinReverse,rotateBy:e.rotateBy,swapOpacity:e.swapOpacity,spin:e.spin,pulse:e.pulse,inverse:e.inverse,flip:e.flip,rotation:e.rotation},null,8,[`icon`,`style`,`size`,`bounce`,`shake`,`beatFade`,`beat`,`fade`,`spinPulse`,`spinReverse`,`rotateBy`,`swapOpacity`,`spin`,`pulse`,`inverse`,`flip`,`rotation`])):(0,d.createCommentVNode)(``,!0),(0,d.renderSlot)(t.$slots,`default`,{},void 0,!0)],4))}}),S=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},C=S(x,[[`__scopeId`,`data-v-936cbad5`]]),w=(0,d.defineComponent)({__name:`MButton`,props:{plain:{type:Boolean},disabled:{type:Boolean},loading:{type:Boolean},autofocus:{type:Boolean},color:{},icon:{},bounce:{type:Boolean},shake:{type:Boolean},beatFade:{type:Boolean},beat:{type:Boolean},fade:{type:Boolean},spinPulse:{type:Boolean},spinReverse:{type:Boolean},rotateBy:{type:Boolean},swapOpacity:{type:Boolean},spin:{type:Boolean},pulse:{type:Boolean},inverse:{type:Boolean},flip:{type:[String,Boolean]},rotation:{},iconSize:{},type:{default:``},size:{default:`small`}},emits:[`click`,`contextmenu`],setup(e,{emit:t}){let n=t,r=e;return(t,i)=>{let a=(0,d.resolveComponent)(`el-button`);return(0,d.openBlock)(),(0,d.createBlock)(a,{link:!e.plain,plain:e.plain,type:e.type,size:e.size,disabled:e.disabled,loading:e.loading,autofocus:e.autofocus,color:e.color,onClick:i[0]||=e=>n(`click`,e),onContextmenu:i[1]||=e=>n(`contextmenu`,e)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,(0,d.mergeProps)(r,{type:``}),{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(t.$slots,`default`)]),_:3},16)]),_:3},8,[`link`,`plain`,`type`,`size`,`disabled`,`loading`,`autofocus`,`color`])}}}),T=S((0,d.defineComponent)({__name:`MText`,props:{type:{},size:{default:`small`},tooltip:{type:Boolean,default:!0},tag:{default:`span`}},emits:[`click`],setup(e,{emit:t}){let n=t,r=(0,d.useTemplateRef)(`textRef`);(0,d.ref)(!1);let i=(0,p.useParentElement)(),{width:a}=(0,p.useElementSize)(i);return(0,d.computed)(()=>r.value?.$el?.scrollWidth),(t,i)=>{let a=(0,d.resolveComponent)(`el-text`);return(0,d.openBlock)(),(0,d.createBlock)(a,{ref_key:`textRef`,ref:r,type:e.type,size:e.size,tag:e.tag,truncated:``,onClick:i[0]||=e=>n(`click`,e)},{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(t.$slots,`default`,{},void 0,!0)]),_:3},8,[`type`,`size`,`tag`])}}}),[[`__scopeId`,`data-v-35ce2cd9`]]),E={class:`justified`,style:{"padding-right":`5px`}},D={class:`small info`,style:{"margin-left":`15px`}},O=(0,d.defineComponent)({__name:`MOptionContent`,props:{value:{},label:{},display:{},disabled:{type:Boolean},icon:{},type:{}},setup(e){return(t,n)=>{let r=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createElementBlock)(`div`,E,[(0,d.createVNode)(r,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{type:e.type,icon:e.icon},null,8,[`type`,`icon`]),(0,d.renderSlot)(t.$slots,`left`,{},()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.label),1)])]),_:3}),(0,d.createElementVNode)(`span`,D,[(0,d.renderSlot)(t.$slots,`right`,{},()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.display),1)])])])}}}),k=(0,d.defineComponent)({__name:`MOptionItem`,props:{value:{},label:{},display:{},disabled:{type:Boolean},icon:{},type:{}},setup(e){let t=e;return(n,r)=>{let i=(0,d.resolveComponent)(`el-option`);return(0,d.openBlock)(),(0,d.createBlock)(i,{label:e.label,value:e.value,disabled:e.disabled},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(O,(0,d.normalizeProps)((0,d.guardReactiveProps)(t)),{left:(0,d.withCtx)(()=>[(0,d.renderSlot)(n.$slots,`left`,{item:t})]),right:(0,d.withCtx)(()=>[(0,d.renderSlot)(n.$slots,`right`,{item:t})]),_:3},16)]),_:3},8,[`label`,`value`,`disabled`])}}}),A=(0,d.defineComponent)({__name:`MOptionList`,props:{items:{}},setup(e){return(t,n)=>((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(e.items,e=>((0,d.openBlock)(),(0,d.createBlock)(k,{value:e.value,label:e.label,display:e.display,disabled:e.disabled,icon:e.icon,type:e.type},{left:(0,d.withCtx)(()=>[(0,d.renderSlot)(t.$slots,`left`,{item:e})]),right:(0,d.withCtx)(()=>[(0,d.renderSlot)(t.$slots,`right`,{item:e})]),_:2},1032,[`value`,`label`,`display`,`disabled`,`icon`,`type`]))),256))}}),j={};function ee(e,t){return` welcome `}var te=S(j,[[`render`,ee]]),M=(0,d.defineComponent)({__name:`AccountManage`,setup(e){let t=(0,d.ref)(),{copy:n}=(0,p.useClipboard)(),{post:r}=I(),{$confirm:i,$message:a}=P(),{username_label:o}=Q();async function s(e){let t=e.$$fields.find(e=>e.prop===`username`);return t&&(o.value?t.label=`* ${o.value}`:(t.label=`* 邮箱`,e.$$fields=e.$$fields.filter(e=>e.prop!==`email`))),e}let c=[{label:e=>e.token?`发送密码`:`重置密码`,icon:e=>e.token?`paper-plane`:`rotate-left`,type:e=>e.username===`admin`?`warning`:``,handler:e=>e.token?l(e):u(e)}];function l(e){i.info(`是否向用户邮箱【${e.username}】发送密码【${e.token}】?`).then(()=>r(`valar/send_password`,{account_id:e.id})).catch(()=>n(e.token).then(()=>a.warning(`临密码已复制到剪切板`)))}function u(e){i.info(`是否重置账户 “${e.username}” 的密码`).then(()=>r(`valar/retrieve_password`,{account_id:e.id})).then(()=>a.warning(`账户密码已重制`)).finally(()=>t.value?.manager.reload())}return(e,n)=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)((0,d.unref)(X),{ref_key:`tableRef`,ref:t,entity:`valar.Account`,code:`auth`,buttons:c,"before-init":s},null,512),(0,d.createVNode)((0,d.unref)($),{erf:`createRef`})],64))}}),N=(0,p.createGlobalState)(()=>{let e=(0,d.reactive)([]),t=[`handler`,`token`];function n(n){let r=(0,g.pick)(n,t);return e.findIndex(e=>(0,g.isEqual)((0,g.pick)(e,t),r))}function r(t){return e.filter(e=>e.handler===t)}function i(t){n(t)<0&&e.push(t)}function a(t){let r=n(t);r>-1&&e.splice(r,1)}return{mount:i,unmount:a,container:e,findAll:r}});function P(){let e=`body`,t={confirmButtonText:`确认`,cancelButtonText:`取消`},n={info:t=>y.ElMessage.info({message:t,grouping:!0,appendTo:e}),success:t=>y.ElMessage.success({message:t,grouping:!0,appendTo:e}),warning:t=>y.ElMessage.warning({message:t,grouping:!0,appendTo:e}),error:t=>y.ElMessage.error({message:t,grouping:!0,appendTo:e})};return{$message:n,$confirm:{info:(e,n)=>y.ElMessageBox.confirm(e,{type:`info`,...t}),success:(e,n)=>y.ElMessageBox.confirm(e,n,{type:`success`,...t}),warning:(e,n)=>y.ElMessageBox.confirm(e,n,{type:`warning`,...t}),error:(e,n)=>y.ElMessageBox.confirm(e,n,{type:`error`,...t})},$$message:(e,t)=>n[t](e)}}var F=(0,p.createGlobalState)(()=>{let e=(0,m.useRouter)(),t=(0,d.ref)(`account`),n=(0,p.useStorage)(`TOKEN`,``),r=(0,p.useStorage)(`CLIENT`,``);r.value||=(0,h.nanoid)().replace(/-/g,`_`);let i=(0,d.ref)(``),a=(0,d.computed)(()=>!!n.value),o=(0,d.computed)(()=>ne(n.value)),s=(0,d.computed)(()=>ne(i.value));function c(e){i.value=``,n.value=e}function l(){i.value=``,n.value=``,e.push(`/`).then()}function u(e){i.value=e}return{token:n,is_login:a,client:r,account:o,user:s,system:t,sign_in:c,register:u,sign_out:l}});function ne(e){if(!e)return{};let t=e.split(`.`)[1];if(!t)return{};let n=t.replace(/-/g,`+`).replace(/_/g,`/`);return JSON.parse(decodeURIComponent(atob(n).split(``).map(e=>`%`+(`00`+e.charCodeAt(0).toString(16)).slice(-2)).join(``)))}function I(e){let t=(0,d.toRef)(e),{$$message:n}=P(),{base_url:r}=Q(),{client:i,token:a,sign_out:o,account:s}=F();(0,m.useRouter)();let c=(0,d.ref)(!1);console.log(r.value);let l=_.default.create({baseURL:r.value});l.interceptors.request.use(e=>(s.value?.is_admin&&console.log(`URL: `,e.url),v.default.start(),c.value=!0,e.headers.Client=i.value,e.headers.Auth=t.value?`Require Login`:``,e.headers.Authorization=`Bearer ${a.value}`,e)),l.interceptors.response.use(e=>{v.default.done(),c.value=!1;let{payload:t,message:r,code:i}=e.data;return r&&n(r,i),t},e=>{v.default.done(),c.value=!1;let{status:t,config:r,response:i}=e,{message:s}=i?.data||{};return console.error(`# Error URL: `,r?.url),console.error(`# STATUS: `,t),t===401&&r?.headers?.Authorization===`Bearer ${a.value}`&&o(),n(s,`error`),Promise.reject(e)});function u(e,t={}){return l.post(e,t)}return{post:u,loading:c}}function re(e,t,n){let r=new URL(e,n);if(r.protocol===`http:`)r.protocol=`ws:`;else if(r.protocol===`https:`)r.protocol=`wss:`;else if(r.protocol!==`ws:`&&r.protocol!==`wss:`)throw Error(`Unsupported WebSocket protocol: ${r.protocol}`);return r.pathname=`${r.pathname.replace(/\/+$/,``)}/${encodeURIComponent(t)}/`,r.href}var L=(0,p.createGlobalState)(()=>{let{client:e}=F(),{base_url:t}=Q(),n=(0,d.computed)(()=>re(t.value,e.value,window.location.href)),r=(0,d.reactive)({code:0,count:0,retries:10}),{data:i,open:a,send:o}=(0,p.useWebSocket)(n,{onDisconnected:()=>{r.code=400,r.count=0},onConnected:()=>{r.code=200,r.count=0},autoReconnect:{retries:r.retries,onFailed:()=>r.code=404,delay:e=>(r.count=e,1e3)}});function s(e){o(JSON.stringify(e))}return{data:(0,d.computed)(()=>JSON.parse(i.value)),open:a,status:r,send:s}});function R(e,t){let{data:n}=L();(0,d.watch)(()=>n,()=>{let r=(0,g.cloneDeep)(n.value||{}),i=r.__tag__;delete r.__tag__,delete r.__timestamp__,i===e&&t(r)},{deep:!0})}function z(e){let t=(0,d.toRef)(e),{mount:n,unmount:r}=N();(0,d.onMounted)(()=>n(t.value)),(0,d.onUnmounted)(()=>r(t.value));let{post:i,loading:a}=I((0,d.computed)(()=>t.value.auth||!1)),{$message:o}=P(),s=(0,d.ref)(null),c=(0,d.ref)(!1),l=t.value.onError??(e=>console.error(e));function u(e){let{handler:n,token:r}=t.value,a=`valar/channel/${n}/${r}`;c.value=!0,s.value=null,i(a,e).then().catch(e=>{l(`Channel Error: ${e.code}`),c.value=!1,s.value=null})}return R(`channel`,e=>{let n=[`handler`,`token`];if(!(0,g.isEqual)((0,g.pick)(e,n),(0,g.pick)(t.value,n)))return;let r=e.callback;c.value=[`onStart`,`onProceed`,`onResponse`].includes(r),r===`onStart`?t.value.onStart?.():r===`onError`?l(e.data):r===`onProceed`?t.value.onProceed?.(e.data):r===`onResponse`?t.value.onResponse?.(e.data):r===`onStop`&&t.value.onStop?.(),s.value=e.data}),{channel:t,execute:u,payload:s,loading:(0,d.computed)(()=>a.value||c.value),post:i}}var B={insert_one:`insert_one`,save_one:`save_one`,sync_save_many:`sync_save_many`,delete_one:`delete_one`,sync_delete_many:`sync_delete_many`,fetch:`fetch`,find_one:`find_one`,find:`find`,values:`values`,search:`search`,sync_update_many:`sync_update_many`,save_many:`save_many`,delete_many:`delete_many`,update_many:`update_many`,sorting:`sorting`};function V(e,t=0){let n=Object.fromEntries(e.map(e=>(e.children=[],[e.id,e]))),r=t||0,i=n[r]??{id:r,children:[]};return Object.values(n).forEach(e=>{if(e===i)return;let t=e.pid??0;(t===r?i:n[t]??i).children?.push(e)}),n[r]=i,Object.values(n).forEach(e=>e.children?.sort((e,t)=>(t.sort||0)-(e.sort||0))),{options:[i],mapping:n,rootNode:i}}function H(e){let t=se.find(t=>e.endsWith(`__${t}`));return t?{prop:e.replace(`__${t}`,``),collation:t}:{prop:e,collation:null}}function ie(e={},t){let n=/\${(.*?)}/,r=Object.entries(e).map(([e,r])=>{if(typeof r==`string`){let e=r.match(n);e&&(r=t[e[1]])}return[e,r]});return Object.fromEntries(r)}function ae(e,t){return Object.keys(e||{}).filter(e=>{let{prop:n}=H(e);return n===t})}function oe(e){if(!e)return{};let t=Object.entries(e).map(([e,t])=>{let{prop:n,collation:r}=H(e);return r?[e,t]:[`${n}__exact`,t]});return Object.fromEntries(t)}var se=[`contains`,`exact`,`startswith`,`endswith`,`icontains`,`iexact`,`istartswith`,`iendswith`,`gt`,`lt`,`gte`,`lte`,`isnull`,`in`,`range`];function ce(e,t){let{code:n,$entity:r,$name:i,name:a,id:o,$tree:s,$$modes:c}=e,l=le(e,t);return{entity:r,code:n,view_id:o,title:i,name:a,tree:s,model:c,control:l,fields:ue(e.$$fields,l,t)}}function le(e,t){let n=t?.disabled||e.disabled,r=!n&&!!e.allow_edit;return{disabled:n,allow_edit:r,allow_search:e.allow_search??!0,allow_order:e.allow_order??!0,allow_download:!n&&!!e.allow_download,allow_insert:!n&&!!e.allow_insert,allow_remove:!n&&!!e.allow_remove,allow_upload:!n&&!!e.allow_upload,allow_edit_on_form:r&&!!e.allow_edit_on_form,allow_edit_on_cell:r&&!!e.allow_edit_on_cell,allow_edit_on_sort:r&&!!e.allow_edit_on_sort}}function ue(e,t,n){return e.map(e=>{let r={...e},i=!r.disabled&&!t.disabled,a=!n?.restricted.uneditable.includes(r.prop),o=!n?.restricted.unsearchable.includes(r.prop),s=!n?.restricted.unorderable;return r.disabled=!i,r.allow_edit&&=i&&!!t.allow_edit&&a,r.allow_search&&=i&&!!t.allow_search&&o,r.allow_order&&=i&&!!t.allow_order&&s,r.allow_download&&=i&&!!t.allow_download,r.allow_upload&&=i&&!!t.allow_upload,r.edit_on_table&&=r.allow_edit,r})}function U(e,t){let n=(0,d.toRef)(e),r=(0,d.toRef)(t||{}),i=(0,h.nanoid)(),{execute:a,payload:o,loading:s,post:c}=z((0,d.computed)(()=>{let{onStart:e,onError:t,onProceed:a,onResponse:o,onStop:s,auth:c}=r.value;return{handler:`batch/${n.value}`,onStart:e,onProceed:a,onResponse:o,onStop:s,onError:t,auth:c,token:i}}));function l(e,t){let r=`valar/${n.value}/${e}`;return c(r,t)}function u(e,t){a({method:e,data:t})}return{config:r,entity:n,manager:{insert_one(e){return l(B.insert_one,e)},save_one(e){return l(B.save_one,e)},sync_save_many(e){return l(B.sync_save_many,e)},delete_one(e){return l(B.delete_one,e)},sync_delete_many(e){return l(B.sync_delete_many,e)},fetch(e){return e?l(B.fetch,e):new Promise(e=>e(null))},find_one(e){return l(B.find_one,e)},find(e){return l(B.find,e)},values(e,t){return l(B.values,{props:e,...t})},async search(e,t=0,i=1,a=`default`){if(!n.value)return{results:[],mapping:{},total:0};let o=await l(`${B.search}/${a}`,{...e,size:t,page:i,type:`table`}),s=r.value.convertor;return s&&o.results.forEach(e=>s(e)),o},tree:(e,t=0,n=`default`)=>{e||={};let i=`${B.search}/${n}`;return new Promise((n,a)=>{l(i,{...e,root:t,type:`tree`}).then(e=>{let i=V(e.results,t),a=r.value.convertor;a&&Object.values(i.mapping).forEach(e=>a(e)),n(i)}).catch(e=>a(e))})},sync_update_many(e,t){return l(B.sync_update_many,{template:e,...t})},save_many:e=>{u(B.save_many,e)},delete_many:e=>{u(B.delete_many,e)},update_many:(e,t)=>{u(B.update_many,{template:e,...t})},sorting:(e,t)=>{let n={currentId:t,items:e};u(B.sorting,n)},async meta(e){if(!n.value)throw Error(`未指定实体,无法读取元数据`);return ce(await c(`valar/${n.value}/${e||`default`}/meta_view`))}},payload:o,loading:s}}var de=[`.xls`,`.xlsx`,`.doc`,`.docx`,`.ppt`,`.pptx`,`.csv`,`.txt`,`.pdf`,`.jpg`,`.gif`,`.png`,`.jpeg`,`.mp4`,`.mp3`,`.avi`,`.zip`,`.rar`,`.exe`],W={year:{label:`年度`,value:`YYYY`},month:{label:`月度`,value:`YYYY-MM-DD`},week:{label:`周度`,value:`YYYY-MM-DD`},date:{label:`日度`,value:`YYYY-MM-DD`},datetime:{label:`高频`,value:`YYYY-MM-DD HH:mm:ss`},years:{label:`多个年`,value:`YYYY`},months:{label:`多个月`,value:`YYYY-MM-DD`},dates:{label:`多个日`,value:`YYYY-MM-DD`},monthrange:{label:`月区间`,value:`YYYY-MM-DD`},daterange:{label:`日区间`,value:`YYYY-MM-DD`},datetimerange:{label:`高频区间`,value:`YYYY-MM-DD HH:mm:ss`},time:{label:`时间`,value:`HH:mm:ss`}},G={multiple:[`ManyToManyField`,`ManyToManyRel`,`ManyToOneRel`],linkage:[`OneToOneField`,`OneToOneRel`,`ForeignKey`],referred:[`ManyToManyField`,`ManyToManyRel`,`ManyToOneRel`,`OneToOneField`,`OneToOneRel`,`ForeignKey`],orderable:[`CharField`,`TextField`,`IntegerField`,`FloatField`,`BigIntegerField`,`DecimalField`,`SmallIntegerField`,`DateField`,`DateTimeField`,`TimeField`,`BigAutoField`,`Custom`],editable:[`CharField`,`TextField`,`BooleanField`,`IntegerField`,`FloatField`,`DateField`,`DateTimeField`,`TimeField`,`JSONField`]};function fe(e){let t=(0,d.ref)({}),n=(0,d.ref)(e.value.orders??{sort:-1}),r=(0,d.computed)(()=>{let t=Object.entries(e.value.includes||{}).filter(e=>!e[0].includes(`__`));return Object.fromEntries(t)}),{post:i}=I(),a=(0,d.ref)(),o=0,s=!1;(0,d.onScopeDispose)(()=>{s=!0,o++});let c=(0,d.computed)(()=>{let t=a.value;if(!t||t.entity!==e.value.entity||t.code!==(e.value.code||`default`))return{code:e.value.code||`default`,entity:e.value.entity||``,name:``,view_id:0,title:``,tree:!1,control:{},fields:[],model:{}};let i={disabled:!!e.value.disabled,restricted:{unsearchable:Object.keys(e.value.includes||{}).map(e=>H(e).prop),uneditable:Object.keys(r.value),unorderable:(0,g.isEqual)(n,{sort:-1})}};return ce(t.data,i)});async function l(){if(s)return;let t=++o,{entity:n,beforeInit:r}=e.value,c=e.value.code||`default`,l=()=>!s&&t===o&&e.value.entity===n&&(e.value.code||`default`)===c;if((!n||a.value?.entity!==n||a.value?.code!==c)&&(a.value=void 0),n)try{let e=await i(`valar/${n}/${c}/meta_view`);if(!l())return;let t=r?await r(e):e;l()&&(a.value={entity:n,code:c,data:t})}catch(e){if(l())throw e}}return(0,d.watch)(()=>[e.value.entity,e.value.code],(e,t)=>{(0,g.isEqual)(e,t)||l().catch(e=>console.error(`元数据加载失败`,e))},{deep:!0,immediate:!0}),{finder:t,orders:n,core:r,meta:c,init:l,conditions:(0,d.computed)(()=>{let{includes:n,excludes:r}=e.value;return n=oe(n),r=oe(r),[(0,g.merge)({includes:n,excludes:r},pe(t.value,c.value?.fields)),...e.value.conditions||[]]})}}function pe(e,t=[]){let n={includes:{},excludes:{}};return Object.entries(e).forEach(([e,r])=>{let{type:i,collation:a,value:o}=r;if(o==null)return;let s=n[i],c=t.find(t=>t.prop===e);if(!c)return;let{domain:l,refer:{label:u}}=c;if(G.linkage.includes(l)){let t=`${`${e.replace(`_id`,``)}__${u}`}__${a}`;s[t]=o}else if(G.multiple.includes(l)){let t=`${`${e}__${u}`}__${a}`;s[t]=o}else{let t=`${e}__${a}`;s[t]=o}}),n}function me(e,t){let n=(0,d.ref)(),r=(0,d.ref)(),i=(0,d.ref)({results:[],total:0,mapping:{}}),a=(0,d.ref)({options:[],mapping:{},rootNode:{children:[]}}),o=(0,d.ref)(new Set),s=0,c=!1;(0,d.onScopeDispose)(()=>{c=!0,s++});let{finder:l,orders:u,core:f,meta:p,init:m,conditions:h}=fe(e),{loading:_,manager:v}=U((0,d.computed)(()=>p.value.entity),{convertor:e.value.convertor,onStart:()=>{n.value=void 0,r.value=null},onError:e=>{n.value=void 0,r.value=e},onProceed:e=>{n.value=e,r.value=null},onStop:()=>{n.value=void 0,r.value=null},onResponse:e=>{n.value=void 0,r.value=null;let{method:t,response:i}=e;if(t===`sorting`){let{currentId:e}=i;x([e])}else t===`save_many`?x(i):x()}}),y=e.value.entity,b=e.value.code||`default`;(0,d.watch)(()=>[e.value.entity,e.value.code,p.value.entity,p.value.code,u.value,h.value,t.value],()=>{let{entity:t}=e.value,n=e.value.code||`default`;(t!==y||n!==b)&&(i.value={results:[],total:0,mapping:{}},a.value={options:[],mapping:{},rootNode:{children:[]}},o.value.clear(),y=t,b=n),x()},{deep:!0,immediate:!0});function x(e){S(e).catch(e=>console.error(`刷新数据失败`,e))}async function S(n){if(c)return;let l=++s,d=p.value,f=e.value.entity,m=e.value.code||`default`,_={...t.value},{size:y,page:b,type:x,root:S}=_,w=(0,g.cloneDeep)({orders:u.value,conditions:h.value}),T=()=>!c&&l===s&&e.value.entity===f&&(e.value.code||`default`)===m&&p.value===d&&(0,g.isEqual)(t.value,_)&&(0,g.isEqual)(u.value,w.orders)&&(0,g.isEqual)(h.value,w.conditions),E=[...o.value];o.value.clear(),r.value=null;let{validator:D,beforeReload:O}=e.value;if(!d.entity)i.value={results:[],total:0,mapping:{}},a.value={options:[],mapping:{},rootNode:{children:[]}};else try{if(x===`tree`){let e=await v.tree(w,S,d.code);if(!T())return;let t=Object.values(e.mapping),n=await O?.(t,d)??!0;if(!T()||(n&&D&&t.forEach(e=>e.$message=D(e)),!T()))return;a.value=n?e:{options:[],mapping:{},rootNode:{children:[]}}}else if(x===`table`){let e=await v.search(w,y,b,d.code);if(!T())return;let t=e.results,n=await O?.(t,d)??!0;if(!T()||(n&&D&&t.forEach(e=>e.$message=D(e)),!T()))return;e.mapping=Object.fromEntries(t.map(e=>[e.id,e])),i.value=n?e:{results:[],total:0,mapping:{}}}T()&&C(n||E)}catch(e){if(!T())return;throw r.value=e instanceof Error?e.message:String(e),e}}function C(e){let n=(t.value.type===`table`?i.value.results:Object.values(a.value.mapping)).map(e=>e.id);o.value=new Set((0,g.intersection)(n,e))}function w(e){let t=e.map(e=>({...e,...f.value}));v.save_many(t)}function T(...e){return v.find({includes:{id__in:e}})}return{meta:p,response:i,orders:u,conditions:h,manager:{init:m,reload:S,save_many:w,fetch:T,highlight:C,sorting:v.sorting,delete_many:e=>{e.length?v.delete_many({includes:{id__in:e}}):v.delete_many({})},delete_one:e=>v.delete_one(e),save_one:e=>w([{...e,...f.value}]),insert_one:e=>v.insert_one({...e,...f.value}),find:()=>v.find({conditions:h.value}),get:e=>v.fetch(e)},api:v,loading:_,ticking:n,error:r,finder:l,collector:o,core:f,model:a}}var he={key:0,class:`danger`},ge=(0,d.defineComponent)({__name:`DTreeNode`,props:{node:{},data:{},label:{},queryString:{},collector:{}},setup(e){let t=e;(0,d.computed)(()=>{let e=t.data[t.label]||``;return t.queryString?e.split(t.queryString).join(`<u class="danger">${t.queryString}</u>`):e});let n=(0,d.computed)(()=>t.data.isLeaf?`leaf`:t.node.expanded&&t.data.children?.length?`folder-open`:`folder`),r=(0,d.computed)(()=>t.data.isLeaf?`success`:t.data.children?.length?`warning`:`info`),i=(0,d.computed)(()=>{let e=String(t.data[t.label]??``);return t.queryString?e.split(t.queryString):[e]});return(t,a)=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[e.data.disabled?((0,d.openBlock)(),(0,d.createBlock)(C,{key:0,icon:`ban`,type:`danger`,style:{width:`14px`,"margin-right":`10px`}})):((0,d.openBlock)(),(0,d.createBlock)(C,{key:1,icon:n.value,type:r.value,shake:!!e.data.id&&e.collector.has(e.data.id),style:{width:`14px`,"margin-right":`10px`}},null,8,[`icon`,`type`,`shake`])),(0,d.createElementVNode)(`span`,null,[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(i.value,(t,n)=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,{key:n},[n>0?((0,d.openBlock)(),(0,d.createElementBlock)(`u`,he,(0,d.toDisplayString)(e.queryString),1)):(0,d.createCommentVNode)(``,!0),(0,d.createTextVNode)((0,d.toDisplayString)(t),1)],64))),128))])],64))}}),K=(0,d.defineComponent)({__name:`MPopover`,props:{title:{},placement:{},trigger:{},width:{}},emits:[`hide`],setup(e,{expose:t}){let n=e;(0,d.ref)();let r=(0,d.ref)(!1),i=(0,d.ref)(null),a=(0,d.ref)({}),o=(0,d.ref)(DOMRect.fromRect({x:0,y:0})),s=(0,d.reactive)({scrollX:0,scrollY:0,clientX:0,clientY:0}),c=(0,d.computed)(()=>({getBoundingClientRect:()=>o.value}));function l(e,t,c){document.body.style.overflow=`hidden`,i.value=(0,g.cloneDeep)(t)??null,a.value={title:c?.title??n.title,placement:c?.placement||n.placement||`bottom`,width:c?.width??n.width??`auto`,trigger:c?.trigger??n.trigger??`click`};let{scrollY:l,scrollX:u}=window,{clientX:d,clientY:f}=e;o.value.x=d,o.value.y=f,s.scrollX=u,s.scrollY=l,s.clientX=d,s.clientY=f,r.value=!0}function u(){document.body.style.overflow=``,r.value=!1}function f(e){e.stopPropagation(),e.preventDefault()}let p=(0,d.computed)(()=>({width:a.value.width||`auto`}));return t({open:l,close:u}),(e,t)=>{let n=(0,d.resolveComponent)(`el-popover`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[r.value?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,{key:0,class:`m-popover-modal`,onClick:u,onContextmenu:f},null,32)):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(n,{"popper-class":`m-popover`,visible:r.value,"virtual-ref":c.value,trigger:a.value.trigger,placement:a.value.placement,"virtual-triggering":``,teleported:``,"hide-after":0,"show-after":0,offset:5,transition:`none`,persistent:!1,"popper-style":p.value,onHide:t[0]||=t=>e.$emit(`hide`)},{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`default`,{data:i.value})]),_:3},8,[`visible`,`virtual-ref`,`trigger`,`placement`,`popper-style`])],64)}}}),_e=(0,d.defineComponent)({__name:`CharCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.computed)(()=>n.field.format?.maxlength||void 0);return(t,n)=>{let a=(0,d.resolveComponent)(`el-input`);return(0,d.openBlock)(),(0,d.createBlock)(a,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:e.disabled,clearable:!e.field.not_null,type:e.field.tool,maxlength:i.value,"show-word-limit":``,rows:1,onKeydown:n[1]||=(0,d.withKeys)(e=>t.$emit(`confirm`),[`enter`]),class:`full`},null,8,[`modelValue`,`disabled`,`clearable`,`type`,`maxlength`])}}}),ve={class:`full`},ye=S((0,d.defineComponent)({__name:`ColorCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t),{copy:r}=(0,p.useClipboard)(),{$message:i}=P();function a(){r(n.value),i.info(`颜色代码已复制`)}return(t,r)=>{let i=(0,d.resolveComponent)(`el-color-picker`),o=(0,d.resolveComponent)(`el-col`),s=(0,d.resolveComponent)(`el-row`);return(0,d.openBlock)(),(0,d.createBlock)(s,{align:`middle`,class:`full`,gutter:10},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{span:15},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{modelValue:(0,d.unref)(n),"onUpdate:modelValue":r[0]||=e=>(0,d.isRef)(n)?n.value=e:null,disabled:e.disabled,class:`full`,onChange:r[1]||=e=>t.$emit(`confirm`)},null,8,[`modelValue`,`disabled`])]),_:1}),(0,d.createVNode)(o,{span:9,align:`center`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,ve,[(0,d.createElementVNode)(`b`,{class:`color-pick-label`,style:(0,d.normalizeStyle)({color:(0,d.unref)(n)||`#dddddd`}),onClick:a},(0,d.toDisplayString)((0,d.unref)(n)||`无颜色`),5)])]),_:1})]),_:1})}}}),[[`__scopeId`,`data-v-b4e1f98e`]]),be=`0.1.2.3.4.5.6.7.8.9.a.ad.add.address-book.address-card.adjust.air-freshener.align-center.align-justify.align-left.align-right.allergies.ambulance.american-sign-language-interpreting.anchor.anchor-circle-check.anchor-circle-exclamation.anchor-circle-xmark.anchor-lock.angle-double-down.angle-double-left.angle-double-right.angle-double-up.angle-down.angle-left.angle-right.angle-up.angles-down.angles-left.angles-right.angles-up.angry.ankh.apple-alt.apple-whole.archive.archway.area-chart.arrow-alt-circle-down.arrow-alt-circle-left.arrow-alt-circle-right.arrow-alt-circle-up.arrow-circle-down.arrow-circle-left.arrow-circle-right.arrow-circle-up.arrow-down.arrow-down-1-9.arrow-down-9-1.arrow-down-a-z.arrow-down-long.arrow-down-short-wide.arrow-down-up-across-line.arrow-down-up-lock.arrow-down-wide-short.arrow-down-z-a.arrow-left.arrow-left-long.arrow-left-rotate.arrow-pointer.arrow-right.arrow-right-arrow-left.arrow-right-from-bracket.arrow-right-from-file.arrow-right-long.arrow-right-rotate.arrow-right-to-bracket.arrow-right-to-city.arrow-right-to-file.arrow-rotate-back.arrow-rotate-backward.arrow-rotate-forward.arrow-rotate-left.arrow-rotate-right.arrow-trend-down.arrow-trend-up.arrow-turn-down.arrow-turn-up.arrow-up.arrow-up-1-9.arrow-up-9-1.arrow-up-a-z.arrow-up-from-bracket.arrow-up-from-ground-water.arrow-up-from-water-pump.arrow-up-long.arrow-up-right-dots.arrow-up-right-from-square.arrow-up-short-wide.arrow-up-wide-short.arrow-up-z-a.arrows.arrows-alt.arrows-alt-h.arrows-alt-v.arrows-down-to-line.arrows-down-to-people.arrows-h.arrows-left-right.arrows-left-right-to-line.arrows-rotate.arrows-spin.arrows-split-up-and-left.arrows-to-circle.arrows-to-dot.arrows-to-eye.arrows-turn-right.arrows-turn-to-dots.arrows-up-down.arrows-up-down-left-right.arrows-up-to-line.arrows-v.asl-interpreting.assistive-listening-systems.asterisk.at.atlas.atom.audio-description.austral-sign.automobile.award.b.baby.baby-carriage.backspace.backward.backward-fast.backward-step.bacon.bacteria.bacterium.bag-shopping.bahai.baht-sign.balance-scale.balance-scale-left.balance-scale-right.ban.ban-smoking.band-aid.bandage.bangladeshi-taka-sign.bank.bar-chart.barcode.bars.bars-progress.bars-staggered.baseball.baseball-ball.baseball-bat-ball.basket-shopping.basketball.basketball-ball.bath.bathtub.battery.battery-0.battery-2.battery-3.battery-4.battery-5.battery-car.battery-empty.battery-full.battery-half.battery-quarter.battery-three-quarters.bed.bed-pulse.beer.beer-mug-empty.bell.bell-concierge.bell-slash.bezier-curve.bible.bicycle.biking.binoculars.biohazard.birthday-cake.bitcoin-sign.blackboard.blender.blender-phone.blind.blog.bold.bolt.bolt-lightning.bomb.bone.bong.book.book-atlas.book-bible.book-bookmark.book-dead.book-journal-whills.book-medical.book-open.book-open-reader.book-quran.book-reader.book-skull.book-tanakh.bookmark.border-all.border-none.border-style.border-top-left.bore-hole.bottle-droplet.bottle-water.bowl-food.bowl-rice.bowling-ball.box.box-archive.box-open.box-tissue.boxes.boxes-alt.boxes-packing.boxes-stacked.braille.brain.brazilian-real-sign.bread-slice.bridge.bridge-circle-check.bridge-circle-exclamation.bridge-circle-xmark.bridge-lock.bridge-water.briefcase.briefcase-clock.briefcase-medical.broadcast-tower.broom.broom-ball.brush.bucket.bug.bug-slash.bugs.building.building-circle-arrow-right.building-circle-check.building-circle-exclamation.building-circle-xmark.building-columns.building-flag.building-lock.building-ngo.building-shield.building-un.building-user.building-wheat.bullhorn.bullseye.burger.burn.burst.bus.bus-alt.bus-simple.business-time.c.cab.cable-car.cake.cake-candles.calculator.calendar.calendar-alt.calendar-check.calendar-day.calendar-days.calendar-minus.calendar-plus.calendar-times.calendar-week.calendar-xmark.camera.camera-alt.camera-retro.camera-rotate.campground.cancel.candy-cane.cannabis.capsules.car.car-alt.car-battery.car-burst.car-crash.car-on.car-rear.car-side.car-tunnel.caravan.caret-down.caret-left.caret-right.caret-square-down.caret-square-left.caret-square-right.caret-square-up.caret-up.carriage-baby.carrot.cart-arrow-down.cart-flatbed.cart-flatbed-suitcase.cart-plus.cart-shopping.cash-register.cat.cedi-sign.cent-sign.certificate.chain.chain-broken.chain-slash.chair.chalkboard.chalkboard-teacher.chalkboard-user.champagne-glasses.charging-station.chart-area.chart-bar.chart-column.chart-diagram.chart-gantt.chart-line.chart-pie.chart-simple.check.check-circle.check-double.check-square.check-to-slot.cheese.chess.chess-bishop.chess-board.chess-king.chess-knight.chess-pawn.chess-queen.chess-rook.chevron-circle-down.chevron-circle-left.chevron-circle-right.chevron-circle-up.chevron-down.chevron-left.chevron-right.chevron-up.child.child-combatant.child-dress.child-reaching.child-rifle.children.church.circle.circle-arrow-down.circle-arrow-left.circle-arrow-right.circle-arrow-up.circle-check.circle-chevron-down.circle-chevron-left.circle-chevron-right.circle-chevron-up.circle-dollar-to-slot.circle-dot.circle-down.circle-exclamation.circle-h.circle-half-stroke.circle-info.circle-left.circle-minus.circle-nodes.circle-notch.circle-pause.circle-play.circle-plus.circle-question.circle-radiation.circle-right.circle-stop.circle-up.circle-user.circle-xmark.city.clapperboard.clinic-medical.clipboard.clipboard-check.clipboard-list.clipboard-question.clipboard-user.clock.clock-four.clock-rotate-left.clone.close.closed-captioning.cloud.cloud-arrow-down.cloud-arrow-up.cloud-bolt.cloud-download.cloud-download-alt.cloud-meatball.cloud-moon.cloud-moon-rain.cloud-rain.cloud-showers-heavy.cloud-showers-water.cloud-sun.cloud-sun-rain.cloud-upload.cloud-upload-alt.clover.cny.cocktail.code.code-branch.code-commit.code-compare.code-fork.code-merge.code-pull-request.coffee.cog.cogs.coins.colon-sign.columns.comment.comment-alt.comment-dollar.comment-dots.comment-medical.comment-nodes.comment-slash.comment-sms.commenting.comments.comments-dollar.compact-disc.compass.compass-drafting.compress.compress-alt.compress-arrows-alt.computer.computer-mouse.concierge-bell.contact-book.contact-card.cookie.cookie-bite.copy.copyright.couch.cow.credit-card.credit-card-alt.crop.crop-alt.crop-simple.cross.crosshairs.crow.crown.crutch.cruzeiro-sign.cube.cubes.cubes-stacked.cut.cutlery.d.dashboard.database.deaf.deafness.dedent.delete-left.democrat.desktop.desktop-alt.dharmachakra.diagnoses.diagram-next.diagram-predecessor.diagram-project.diagram-successor.diamond.diamond-turn-right.dice.dice-d20.dice-d6.dice-five.dice-four.dice-one.dice-six.dice-three.dice-two.digging.digital-tachograph.directions.disease.display.divide.dizzy.dna.dog.dollar.dollar-sign.dolly.dolly-box.dolly-flatbed.donate.dong-sign.door-closed.door-open.dot-circle.dove.down-left-and-up-right-to-center.down-long.download.drafting-compass.dragon.draw-polygon.drivers-license.droplet.droplet-slash.drum.drum-steelpan.drumstick-bite.dumbbell.dumpster.dumpster-fire.dungeon.e.ear-deaf.ear-listen.earth.earth-africa.earth-america.earth-americas.earth-asia.earth-europe.earth-oceania.edit.egg.eject.elevator.ellipsis.ellipsis-h.ellipsis-v.ellipsis-vertical.envelope.envelope-circle-check.envelope-open.envelope-open-text.envelope-square.envelopes-bulk.equals.eraser.ethernet.eur.euro.euro-sign.exchange.exchange-alt.exclamation.exclamation-circle.exclamation-triangle.expand.expand-alt.expand-arrows-alt.explosion.external-link.external-link-alt.external-link-square.external-link-square-alt.eye.eye-dropper.eye-dropper-empty.eye-low-vision.eye-slash.eyedropper.f.face-angry.face-dizzy.face-flushed.face-frown.face-frown-open.face-grimace.face-grin.face-grin-beam.face-grin-beam-sweat.face-grin-hearts.face-grin-squint.face-grin-squint-tears.face-grin-stars.face-grin-tears.face-grin-tongue.face-grin-tongue-squint.face-grin-tongue-wink.face-grin-wide.face-grin-wink.face-kiss.face-kiss-beam.face-kiss-wink-heart.face-laugh.face-laugh-beam.face-laugh-squint.face-laugh-wink.face-meh.face-meh-blank.face-rolling-eyes.face-sad-cry.face-sad-tear.face-smile.face-smile-beam.face-smile-wink.face-surprise.face-tired.fan.faucet.faucet-drip.fax.feather.feather-alt.feather-pointed.feed.female.ferry.fighter-jet.file.file-alt.file-archive.file-arrow-down.file-arrow-up.file-audio.file-circle-check.file-circle-exclamation.file-circle-minus.file-circle-plus.file-circle-question.file-circle-xmark.file-clipboard.file-code.file-contract.file-csv.file-download.file-edit.file-excel.file-export.file-fragment.file-half-dashed.file-image.file-import.file-invoice.file-invoice-dollar.file-lines.file-medical.file-medical-alt.file-pdf.file-pen.file-powerpoint.file-prescription.file-shield.file-signature.file-text.file-upload.file-video.file-waveform.file-word.file-zipper.fill.fill-drip.film.filter.filter-circle-dollar.filter-circle-xmark.fingerprint.fire.fire-alt.fire-burner.fire-extinguisher.fire-flame-curved.fire-flame-simple.first-aid.fish.fish-fins.fist-raised.flag.flag-checkered.flag-usa.flask.flask-vial.floppy-disk.florin-sign.flushed.folder.folder-blank.folder-closed.folder-minus.folder-open.folder-plus.folder-tree.font.font-awesome.font-awesome-flag.font-awesome-logo-full.football.football-ball.forward.forward-fast.forward-step.franc-sign.frog.frown.frown-open.funnel-dollar.futbol.futbol-ball.g.gamepad.gas-pump.gauge.gauge-high.gauge-med.gauge-simple.gauge-simple-high.gauge-simple-med.gavel.gbp.gear.gears.gem.genderless.ghost.gift.gifts.glass-cheers.glass-martini.glass-martini-alt.glass-water.glass-water-droplet.glass-whiskey.glasses.globe.globe-africa.globe-americas.globe-asia.globe-europe.globe-oceania.golf-ball.golf-ball-tee.gopuram.graduation-cap.greater-than.greater-than-equal.grimace.grin.grin-alt.grin-beam.grin-beam-sweat.grin-hearts.grin-squint.grin-squint-tears.grin-stars.grin-tears.grin-tongue.grin-tongue-squint.grin-tongue-wink.grin-wink.grip.grip-horizontal.grip-lines.grip-lines-vertical.grip-vertical.group-arrows-rotate.guarani-sign.guitar.gun.h.h-square.hamburger.hammer.hamsa.hand.hand-back-fist.hand-dots.hand-fist.hand-holding.hand-holding-dollar.hand-holding-droplet.hand-holding-hand.hand-holding-heart.hand-holding-medical.hand-holding-usd.hand-holding-water.hand-lizard.hand-middle-finger.hand-paper.hand-peace.hand-point-down.hand-point-left.hand-point-right.hand-point-up.hand-pointer.hand-rock.hand-scissors.hand-sparkles.hand-spock.handcuffs.hands.hands-american-sign-language-interpreting.hands-asl-interpreting.hands-bound.hands-bubbles.hands-clapping.hands-helping.hands-holding.hands-holding-child.hands-holding-circle.hands-praying.hands-wash.handshake.handshake-alt.handshake-alt-slash.handshake-angle.handshake-simple.handshake-simple-slash.handshake-slash.hanukiah.hard-drive.hard-hat.hard-of-hearing.hashtag.hat-cowboy.hat-cowboy-side.hat-hard.hat-wizard.haykal.hdd.head-side-cough.head-side-cough-slash.head-side-mask.head-side-virus.header.heading.headphones.headphones-alt.headphones-simple.headset.heart.heart-broken.heart-circle-bolt.heart-circle-check.heart-circle-exclamation.heart-circle-minus.heart-circle-plus.heart-circle-xmark.heart-crack.heart-music-camera-bolt.heart-pulse.heartbeat.helicopter.helicopter-symbol.helmet-safety.helmet-un.hexagon-nodes.hexagon-nodes-bolt.highlighter.hiking.hill-avalanche.hill-rockslide.hippo.history.hockey-puck.holly-berry.home.home-alt.home-lg.home-lg-alt.home-user.horse.horse-head.hospital.hospital-alt.hospital-symbol.hospital-user.hospital-wide.hot-tub.hot-tub-person.hotdog.hotel.hourglass.hourglass-1.hourglass-2.hourglass-3.hourglass-empty.hourglass-end.hourglass-half.hourglass-start.house.house-chimney.house-chimney-crack.house-chimney-medical.house-chimney-user.house-chimney-window.house-circle-check.house-circle-exclamation.house-circle-xmark.house-crack.house-damage.house-fire.house-flag.house-flood-water.house-flood-water-circle-arrow-right.house-laptop.house-lock.house-medical.house-medical-circle-check.house-medical-circle-exclamation.house-medical-circle-xmark.house-medical-flag.house-signal.house-tsunami.house-user.hryvnia.hryvnia-sign.hurricane.i.i-cursor.ice-cream.icicles.icons.id-badge.id-card.id-card-alt.id-card-clip.igloo.ils.image.image-portrait.images.inbox.indent.indian-rupee.indian-rupee-sign.industry.infinity.info.info-circle.inr.institution.italic.j.jar.jar-wheat.jedi.jet-fighter.jet-fighter-up.joint.journal-whills.jpy.jug-detergent.k.kaaba.key.keyboard.khanda.kip-sign.kiss.kiss-beam.kiss-wink-heart.kit-medical.kitchen-set.kiwi-bird.krw.l.ladder-water.land-mine-on.landmark.landmark-alt.landmark-dome.landmark-flag.language.laptop.laptop-code.laptop-file.laptop-house.laptop-medical.lari-sign.laugh.laugh-beam.laugh-squint.laugh-wink.layer-group.leaf.left-long.left-right.legal.lemon.less-than.less-than-equal.level-down.level-down-alt.level-up.level-up-alt.life-ring.lightbulb.line-chart.lines-leaning.link.link-slash.lira-sign.list.list-1-2.list-alt.list-check.list-dots.list-numeric.list-ol.list-squares.list-ul.litecoin-sign.location.location-arrow.location-crosshairs.location-dot.location-pin.location-pin-lock.lock.lock-open.locust.long-arrow-alt-down.long-arrow-alt-left.long-arrow-alt-right.long-arrow-alt-up.long-arrow-down.long-arrow-left.long-arrow-right.long-arrow-up.low-vision.luggage-cart.lungs.lungs-virus.m.magic.magic-wand-sparkles.magnet.magnifying-glass.magnifying-glass-arrow-right.magnifying-glass-chart.magnifying-glass-dollar.magnifying-glass-location.magnifying-glass-minus.magnifying-glass-plus.mail-bulk.mail-forward.mail-reply.mail-reply-all.male.manat-sign.map.map-location.map-location-dot.map-marked.map-marked-alt.map-marker.map-marker-alt.map-pin.map-signs.marker.mars.mars-and-venus.mars-and-venus-burst.mars-double.mars-stroke.mars-stroke-h.mars-stroke-right.mars-stroke-up.mars-stroke-v.martini-glass.martini-glass-citrus.martini-glass-empty.mask.mask-face.mask-ventilator.masks-theater.mattress-pillow.maximize.medal.medkit.meh.meh-blank.meh-rolling-eyes.memory.menorah.mercury.message.meteor.microchip.microphone.microphone-alt.microphone-alt-slash.microphone-lines.microphone-lines-slash.microphone-slash.microscope.mill-sign.minimize.minus.minus-circle.minus-square.mitten.mobile.mobile-alt.mobile-android.mobile-android-alt.mobile-button.mobile-phone.mobile-retro.mobile-screen.mobile-screen-button.money-bill.money-bill-1.money-bill-1-wave.money-bill-alt.money-bill-transfer.money-bill-trend-up.money-bill-wave.money-bill-wave-alt.money-bill-wheat.money-bills.money-check.money-check-alt.money-check-dollar.monument.moon.mortar-board.mortar-pestle.mosque.mosquito.mosquito-net.motorcycle.mound.mountain.mountain-city.mountain-sun.mouse.mouse-pointer.mug-hot.mug-saucer.multiply.museum.music.n.naira-sign.navicon.network-wired.neuter.newspaper.not-equal.notdef.note-sticky.notes-medical.o.object-group.object-ungroup.oil-can.oil-well.om.otter.outdent.p.pager.paint-brush.paint-roller.paintbrush.palette.pallet.panorama.paper-plane.paperclip.parachute-box.paragraph.parking.passport.pastafarianism.paste.pause.pause-circle.paw.peace.pen.pen-alt.pen-clip.pen-fancy.pen-nib.pen-ruler.pen-square.pen-to-square.pencil.pencil-alt.pencil-ruler.pencil-square.people-arrows.people-arrows-left-right.people-carry.people-carry-box.people-group.people-line.people-pulling.people-robbery.people-roof.pepper-hot.percent.percentage.person.person-arrow-down-to-line.person-arrow-up-from-line.person-biking.person-booth.person-breastfeeding.person-burst.person-cane.person-chalkboard.person-circle-check.person-circle-exclamation.person-circle-minus.person-circle-plus.person-circle-question.person-circle-xmark.person-digging.person-dots-from-line.person-dress.person-dress-burst.person-drowning.person-falling.person-falling-burst.person-half-dress.person-harassing.person-hiking.person-military-pointing.person-military-rifle.person-military-to-person.person-praying.person-pregnant.person-rays.person-rifle.person-running.person-shelter.person-skating.person-skiing.person-skiing-nordic.person-snowboarding.person-swimming.person-through-window.person-walking.person-walking-arrow-loop-left.person-walking-arrow-right.person-walking-dashed-line-arrow-right.person-walking-luggage.person-walking-with-cane.peseta-sign.peso-sign.phone.phone-alt.phone-flip.phone-slash.phone-square.phone-square-alt.phone-volume.photo-film.photo-video.pie-chart.piggy-bank.pills.ping-pong-paddle-ball.pizza-slice.place-of-worship.plane.plane-arrival.plane-circle-check.plane-circle-exclamation.plane-circle-xmark.plane-departure.plane-lock.plane-slash.plane-up.plant-wilt.plate-wheat.play.play-circle.plug.plug-circle-bolt.plug-circle-check.plug-circle-exclamation.plug-circle-minus.plug-circle-plus.plug-circle-xmark.plus.plus-circle.plus-minus.plus-square.podcast.poll.poll-h.poo.poo-bolt.poo-storm.poop.portrait.pound-sign.power-off.pray.praying-hands.prescription.prescription-bottle.prescription-bottle-alt.prescription-bottle-medical.print.procedures.project-diagram.pump-medical.pump-soap.puzzle-piece.q.qrcode.question.question-circle.quidditch.quidditch-broom-ball.quote-left.quote-left-alt.quote-right.quote-right-alt.quran.r.radiation.radiation-alt.radio.rainbow.random.ranking-star.receipt.record-vinyl.rectangle-ad.rectangle-list.rectangle-times.rectangle-xmark.recycle.redo.redo-alt.refresh.registered.remove.remove-format.reorder.repeat.reply.reply-all.republican.restroom.retweet.ribbon.right-from-bracket.right-left.right-long.right-to-bracket.ring.rmb.road.road-barrier.road-bridge.road-circle-check.road-circle-exclamation.road-circle-xmark.road-lock.road-spikes.robot.rocket.rod-asclepius.rod-snake.rotate.rotate-back.rotate-backward.rotate-forward.rotate-left.rotate-right.rouble.route.rss.rss-square.rub.ruble.ruble-sign.rug.ruler.ruler-combined.ruler-horizontal.ruler-vertical.running.rupee.rupee-sign.rupiah-sign.s.sack-dollar.sack-xmark.sad-cry.sad-tear.sailboat.satellite.satellite-dish.save.scale-balanced.scale-unbalanced.scale-unbalanced-flip.school.school-circle-check.school-circle-exclamation.school-circle-xmark.school-flag.school-lock.scissors.screwdriver.screwdriver-wrench.scroll.scroll-torah.sd-card.search.search-dollar.search-location.search-minus.search-plus.section.seedling.server.shapes.share.share-alt.share-alt-square.share-from-square.share-nodes.share-square.sheet-plastic.shekel.shekel-sign.sheqel.sheqel-sign.shield.shield-alt.shield-blank.shield-cat.shield-dog.shield-halved.shield-heart.shield-virus.ship.shipping-fast.shirt.shoe-prints.shop.shop-lock.shop-slash.shopping-bag.shopping-basket.shopping-cart.shower.shrimp.shuffle.shuttle-space.shuttle-van.sign.sign-hanging.sign-in.sign-in-alt.sign-language.sign-out.sign-out-alt.signal.signal-5.signal-perfect.signature.signing.signs-post.sim-card.sink.sitemap.skating.skiing.skiing-nordic.skull.skull-crossbones.slash.sleigh.sliders.sliders-h.smile.smile-beam.smile-wink.smog.smoking.smoking-ban.sms.snowboarding.snowflake.snowman.snowplow.soap.soccer-ball.socks.solar-panel.sort.sort-alpha-asc.sort-alpha-desc.sort-alpha-down.sort-alpha-down-alt.sort-alpha-up.sort-alpha-up-alt.sort-amount-asc.sort-amount-desc.sort-amount-down.sort-amount-down-alt.sort-amount-up.sort-amount-up-alt.sort-asc.sort-desc.sort-down.sort-numeric-asc.sort-numeric-desc.sort-numeric-down.sort-numeric-down-alt.sort-numeric-up.sort-numeric-up-alt.sort-up.spa.space-shuttle.spaghetti-monster-flying.spell-check.spider.spinner.splotch.spoon.spray-can.spray-can-sparkles.sprout.square.square-arrow-up-right.square-binary.square-caret-down.square-caret-left.square-caret-right.square-caret-up.square-check.square-envelope.square-full.square-h.square-minus.square-nfi.square-parking.square-pen.square-person-confined.square-phone.square-phone-flip.square-plus.square-poll-horizontal.square-poll-vertical.square-root-alt.square-root-variable.square-rss.square-share-nodes.square-up-right.square-virus.square-xmark.staff-aesculapius.staff-snake.stairs.stamp.stapler.star.star-and-crescent.star-half.star-half-alt.star-half-stroke.star-of-david.star-of-life.step-backward.step-forward.sterling-sign.stethoscope.sticky-note.stop.stop-circle.stopwatch.stopwatch-20.store.store-alt.store-alt-slash.store-slash.stream.street-view.strikethrough.stroopwafel.subscript.subtract.subway.suitcase.suitcase-medical.suitcase-rolling.sun.sun-plant-wilt.superscript.surprise.swatchbook.swimmer.swimming-pool.synagogue.sync.sync-alt.syringe.t.t-shirt.table.table-cells.table-cells-column-lock.table-cells-large.table-cells-row-lock.table-cells-row-unlock.table-columns.table-list.table-tennis.table-tennis-paddle-ball.tablet.tablet-alt.tablet-android.tablet-button.tablet-screen-button.tablets.tachograph-digital.tachometer.tachometer-alt.tachometer-alt-average.tachometer-alt-fast.tachometer-average.tachometer-fast.tag.tags.tanakh.tape.tarp.tarp-droplet.tasks.tasks-alt.taxi.teeth.teeth-open.teletype.television.temperature-0.temperature-1.temperature-2.temperature-3.temperature-4.temperature-arrow-down.temperature-arrow-up.temperature-down.temperature-empty.temperature-full.temperature-half.temperature-high.temperature-low.temperature-quarter.temperature-three-quarters.temperature-up.tenge.tenge-sign.tent.tent-arrow-down-to-line.tent-arrow-left-right.tent-arrow-turn-left.tent-arrows-down.tents.terminal.text-height.text-slash.text-width.th.th-large.th-list.theater-masks.thermometer.thermometer-0.thermometer-1.thermometer-2.thermometer-3.thermometer-4.thermometer-empty.thermometer-full.thermometer-half.thermometer-quarter.thermometer-three-quarters.thumb-tack.thumb-tack-slash.thumbs-down.thumbs-up.thumbtack.thumbtack-slash.thunderstorm.ticket.ticket-alt.ticket-simple.timeline.times.times-circle.times-rectangle.times-square.tint.tint-slash.tired.toggle-off.toggle-on.toilet.toilet-paper.toilet-paper-slash.toilet-portable.toilets-portable.toolbox.tools.tooth.torah.torii-gate.tornado.tower-broadcast.tower-cell.tower-observation.tractor.trademark.traffic-light.trailer.train.train-subway.train-tram.tram.transgender.transgender-alt.trash.trash-alt.trash-arrow-up.trash-can.trash-can-arrow-up.trash-restore.trash-restore-alt.tree.tree-city.triangle-circle-square.triangle-exclamation.trophy.trowel.trowel-bricks.truck.truck-arrow-right.truck-droplet.truck-fast.truck-field.truck-field-un.truck-front.truck-loading.truck-medical.truck-monster.truck-moving.truck-pickup.truck-plane.truck-ramp-box.try.tshirt.tty.turkish-lira.turkish-lira-sign.turn-down.turn-up.tv.tv-alt.u.umbrella.umbrella-beach.underline.undo.undo-alt.universal-access.university.unlink.unlock.unlock-alt.unlock-keyhole.unsorted.up-down.up-down-left-right.up-long.up-right-and-down-left-from-center.up-right-from-square.upload.usd.user.user-alt.user-alt-slash.user-astronaut.user-check.user-circle.user-clock.user-cog.user-doctor.user-edit.user-friends.user-gear.user-graduate.user-group.user-injured.user-large.user-large-slash.user-lock.user-md.user-minus.user-ninja.user-nurse.user-pen.user-plus.user-secret.user-shield.user-slash.user-tag.user-tie.user-times.user-xmark.users.users-between-lines.users-cog.users-gear.users-line.users-rays.users-rectangle.users-slash.users-viewfinder.utensil-spoon.utensils.v.van-shuttle.vault.vcard.vector-square.venus.venus-double.venus-mars.vest.vest-patches.vial.vial-circle-check.vial-virus.vials.video.video-camera.video-slash.vihara.virus.virus-covid.virus-covid-slash.virus-slash.viruses.voicemail.volcano.volleyball.volleyball-ball.volume-control-phone.volume-down.volume-high.volume-low.volume-mute.volume-off.volume-times.volume-up.volume-xmark.vote-yea.vr-cardboard.w.walkie-talkie.walking.wallet.wand-magic.wand-magic-sparkles.wand-sparkles.warehouse.warning.water.water-ladder.wave-square.web-awesome.weight.weight-hanging.weight-scale.wheat-alt.wheat-awn.wheat-awn-circle-exclamation.wheelchair.wheelchair-alt.wheelchair-move.whiskey-glass.wifi.wifi-3.wifi-strong.wind.window-close.window-maximize.window-minimize.window-restore.wine-bottle.wine-glass.wine-glass-alt.wine-glass-empty.won.won-sign.worm.wrench.x.x-ray.xmark.xmark-circle.xmark-square.xmarks-lines.y.yen.yen-sign.yin-yang.z.zap`.split(`.`),xe={class:`justified`},Se=(0,d.defineComponent)({__name:`IconCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t),r=(0,d.ref)(be.map(e=>({value:e}))),i=(e,t)=>{t(e?r.value.filter(a(e)):r.value.slice(0,100))},a=e=>t=>t.value.toLowerCase().indexOf(e.toLowerCase())===0;return(t,r)=>{let a=(0,d.resolveComponent)(`el-autocomplete`);return(0,d.openBlock)(),(0,d.createBlock)(a,{modelValue:(0,d.unref)(n),"onUpdate:modelValue":r[0]||=e=>(0,d.isRef)(n)?n.value=e:null,disabled:e.disabled,clearable:``,"fetch-suggestions":i,onChange:r[1]||=e=>(0,d.unref)(n).value=e.value},(0,d.createSlots)({default:(0,d.withCtx)(({item:e})=>[(0,d.createElementVNode)(`div`,xe,[(0,d.createElementVNode)(`span`,null,(0,d.toDisplayString)(e.value),1),(0,d.createVNode)(C,{icon:e.value},null,8,[`icon`])])]),_:2},[(0,d.unref)(n)?{name:`prefix`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:(0,d.unref)(n)},null,8,[`icon`])]),key:`0`}:void 0]),1032,[`modelValue`,`disabled`])}}}),Ce=(0,d.defineComponent)({__name:`MultiSetCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.computed)(()=>n.field.format.set||{}),a=(0,p.useVModel)(n,`modelValue`,r),o=(0,d.ref)([]);function s(){a.value=o.value.join(`;`)}return(0,d.onMounted)(()=>{let e=(n.modelValue||``).split(`;`),t=Object.keys(n.field.format.set).map(e=>String(e));o.value=e.map(e=>e.trim()).filter(e=>t.includes(e))}),(t,n)=>{let r=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createBlock)(r,{disabled:e.disabled,filterable:``,clearable:``,multiple:``,modelValue:o.value,"onUpdate:modelValue":n[0]||=e=>o.value=e,onChange:s},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(i.value,(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(k,{label:e,value:t},null,8,[`label`,`value`]))),256))]),_:1},8,[`disabled`,`modelValue`])}}}),we=(0,d.defineComponent)({__name:`SetCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.computed)(()=>n.field.format.set||{});return(t,n)=>{let a=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createBlock)(a,{disabled:e.disabled,filterable:``,clearable:``,"value-on-clear":``,modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(i.value,(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(k,{label:`${e}`,value:t,display:t},null,8,[`label`,`value`,`display`]))),256))]),_:1},8,[`disabled`,`modelValue`])}}}),Te=`,`,Ee=(0,d.defineComponent)({__name:`DateArrayCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.ref)([]);(0,d.onMounted)(()=>{let e=String(r.value);i.value=e.split(Te)});function a(e){let t=new Set(Object.values(e));r.value=[...t].sort().join(Te)}let o=[`years`,`months`,`dates`],s=(0,d.computed)(()=>{let e=n.field.format?.frequency||`dates`;return o.includes(e)?e:`dates`}),c=(0,d.computed)(()=>W[s.value].value||`YYYY-MM-DD`);return(t,n)=>{let r=(0,d.resolveComponent)(`el-date-picker`);return(0,d.openBlock)(),(0,d.createBlock)(r,{modelValue:i.value,"onUpdate:modelValue":n[0]||=e=>i.value=e,style:{width:`100%`},disabled:e.disabled||!e.field.allow_edit,clearable:!e.field.not_null,type:s.value,format:c.value,"value-format":c.value,onChange:a},null,8,[`modelValue`,`disabled`,`clearable`,`type`,`format`,`value-format`])}}}),De=(0,d.defineComponent)({__name:`DateCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=[`year`,`month`,`week`,`date`,`datetime`],a=(0,d.computed)(()=>{let e=n.field.domain,t=n.field.format?.frequency||`date`;switch(i.includes(t)||(t=`date`),e){case`DateTimeField`:return`datetime`;case`DateField`:case`CharField`:return t;default:return`date`}}),o=(0,d.computed)(()=>{let{value:e}=W[a.value]||{};return e||`YYYY-MM-DD`});return(t,n)=>{let i=(0,d.resolveComponent)(`el-date-picker`);return(0,d.openBlock)(),(0,d.createBlock)(i,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:e.disabled,clearable:!e.field.not_null,type:a.value,"value-format":o.value,teleported:!1,class:`full`},null,8,[`modelValue`,`disabled`,`clearable`,`type`,`value-format`])}}}),Oe=` ~ `,ke=(0,d.defineComponent)({__name:`DateRangeCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.ref)([]);function a(e){r.value=i.value.join(Oe)}(0,d.onMounted)(()=>{let e=String(r.value);i.value=e.split(Oe)});let o=[`monthrange`,`daterange`,`datetimerange`],s=(0,d.computed)(()=>{let e=n.field.format?.frequency||`daterange`;return o.includes(e)?e:`daterange`}),c=(0,d.computed)(()=>W[s.value].value||`YYYY-MM-DD`);return(t,n)=>{let r=(0,d.resolveComponent)(`el-date-picker`),o=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(o,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{style:{width:`100%`},modelValue:i.value,"onUpdate:modelValue":n[0]||=e=>i.value=e,disabled:e.disabled||!e.field.allow_edit,teleported:!1,clearable:!e.field.not_null,type:s.value,format:c.value,"value-format":c.value,onChange:a},null,8,[`modelValue`,`disabled`,`clearable`,`type`,`format`,`value-format`])]),_:1})}}});function Ae(e){return/^([0-9]|1\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e)}var je=(0,d.defineComponent)({__name:`TimeCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t),r=(0,d.ref)();(0,d.onMounted)(()=>{Ae(String(n.value))&&(r.value=n.value)});function i(e){n.value=r.value}return(t,n)=>{let a=(0,d.resolveComponent)(`el-time-picker`);return(0,d.openBlock)(),(0,d.createBlock)(a,{modelValue:r.value,"onUpdate:modelValue":n[0]||=e=>r.value=e,disabled:e.disabled,clearable:!e.field.not_null,"value-format":`HH:mm:ss`,teleported:!1,class:`full`,onChange:i},null,8,[`modelValue`,`disabled`,`clearable`])}}}),Me=(0,d.defineComponent)({__name:`TimeRangeCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t),r=(0,d.ref)([]);(0,d.onMounted)(()=>{let e=String(n.value).split(` - `);e.length===2&&Ae(e[0])&&Ae(e[1])&&(r.value=e)});function i(e){n.value=r.value.join(` - `)}return(t,n)=>{let a=(0,d.resolveComponent)(`el-time-picker`),o=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(o,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{modelValue:r.value,"onUpdate:modelValue":n[0]||=e=>r.value=e,style:{width:`100%`},disabled:e.disabled||!e.field.allow_edit,teleported:!1,clearable:!e.field.not_null,format:`HH:mm:ss`,"value-format":`HH:mm:ss`,"is-range":``,onChange:i},null,8,[`modelValue`,`disabled`,`clearable`])]),_:1})}}});function Ne(e,t){let n=e.refer,r={entity:n.entity||``,clearable:!e.not_null,disabled:!e.allow_edit||!n.entity,multiple:n.multiple,strict:n.strict},i={label:n.label||`name`,value:n.value||`id`,display:n.display||`id`};function a(e){let{label:r}=n,i=e?Object.fromEntries([[r,1]]):{sort:-1},a=ie(n.includes,t),o=ie(n.excludes,t);return e&&(a[`${r}__icontains`]=e),{includes:a,excludes:o,orders:i}}function o(e){let{label:t,value:n,display:a}=i,o=!1;if(l.value.type===`tree`&&!r.strict){let{isLeaf:t,children:n}=e;o=t?!!n?.length:!n?.length}let s={label:e[t],value:e[n],display:e[a],disabled:o};Object.assign(e,s)}let{loading:s,manager:c}=U(n.entity||``,{convertor:o}),l=(0,d.computed)(()=>({type:[`tree`,`cascade`].includes(e.tool)&&n.is_tree?`tree`:`table`,size:[`auto`].includes(e.tool)?10:0,root:n.root,page:1}));async function u(e){let{size:t,page:n}=l.value;return(await c.search(a(e),t,n)).results}async function f(){let{root:e}=l.value;return(await c.tree(a(),e)).rootNode.children||[]}return{loading:s,param:r,list:u,tree:f,conditional:(0,d.computed)(()=>{let{includes:e,excludes:t}=a(),{root:n,type:r}=l.value;return!(0,g.isEmpty)(e)||!(0,g.isEmpty)(t)||!!n&&r===`tree`}),info:l}}var Pe={key:0,style:{"margin-bottom":`10px`}},Fe={class:`justified`},Ie=(0,d.defineComponent)({__name:`AutoCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),{param:i,list:a,conditional:o}=Ne(n.field,n.row),s=(e,t)=>{a(e).then(e=>t(e.map(({label:e})=>({value:e,label:e}))))};return(t,n)=>{let a=(0,d.resolveComponent)(`el-tooltip`),c=(0,d.resolveComponent)(`el-text`),l=(0,d.resolveComponent)(`el-autocomplete`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[e.field.refer.entity?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createElementBlock)(`div`,Pe,[(0,d.createVNode)(C,{icon:`unlink`,type:`danger`},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`未配置entity `,-1)]]),_:1})])),(0,d.createVNode)(l,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:(0,d.unref)(i).disabled||e.disabled,"fetch-suggestions":s,clearable:``,"hide-loading":``,"popper-append-to-body":``},(0,d.createSlots)({default:(0,d.withCtx)(({item:e})=>[(0,d.createElementVNode)(`div`,Fe,[(0,d.createVNode)(c,{size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.label),1)]),_:2},1024),(0,d.createVNode)(c,{class:`small`,type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.display),1)]),_:2},1024)])]),_:2},[(0,d.unref)(o)?{name:`prefix`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(a,null,{content:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`存在检索条件`,-1)]]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`info-circle`})]),_:1})]),key:`0`}:void 0]),1032,[`modelValue`,`disabled`])],64)}}}),Le=(0,d.defineComponent)({__name:`CascadeCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),{loading:i,param:a,tree:o,conditional:s}=Ne(n.field,n.row),c={emitPath:!1,checkStrictly:a.strict,multiple:a.multiple},l=(0,d.ref)([]);return(0,d.onMounted)(async()=>l.value=await o()),(t,n)=>{let i=(0,d.resolveComponent)(`el-tooltip`),o=(0,d.resolveComponent)(`el-cascader`),u=(0,d.resolveDirective)(`loading`);return(0,d.withDirectives)(((0,d.openBlock)(),(0,d.createElementBlock)(`div`,null,[(0,d.createVNode)(o,{options:l.value,modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:(0,d.unref)(a).disabled||e.disabled,clearable:(0,d.unref)(a).clearable,"value-on-clear":null,filterable:``,"collapse-tags":(0,d.unref)(a).multiple,"collapse-tags-tooltip":(0,d.unref)(a).multiple,props:c,"show-all-levels":!1,class:`full`},(0,d.createSlots)({default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(O,{value:e.value,label:e.label,display:e.display,disabled:e.disabled,icon:e.isLeaf?`leaf`:`folder`,type:e.isLeaf?`success`:`warning`},null,8,[`value`,`label`,`display`,`disabled`,`icon`,`type`])]),_:2},[(0,d.unref)(s)?{name:`prefix`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(i,null,{content:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`存在检索条件`,-1)]]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`info-circle`})]),_:1})]),key:`0`}:void 0]),1032,[`options`,`modelValue`,`disabled`,`clearable`,`collapse-tags`,`collapse-tags-tooltip`])])),[[u]])}}}),Re=(0,d.defineComponent)({__name:`SelectCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),{loading:i,param:a,list:o,conditional:s}=Ne(n.field,n.row),c=(0,d.ref)([]);return(0,d.onMounted)(async()=>c.value=await o()),(t,n)=>{let o=(0,d.resolveComponent)(`el-tooltip`),l=(0,d.resolveComponent)(`el-select`),u=(0,d.resolveDirective)(`loading`);return(0,d.withDirectives)(((0,d.openBlock)(),(0,d.createBlock)(l,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:e.disabled||(0,d.unref)(a).disabled,filterable:``,"value-on-clear":null,clearable:(0,d.unref)(a).clearable,multiple:(0,d.unref)(a).multiple,"collapse-tags":(0,d.unref)(a).multiple,"collapse-tags-tooltip":(0,d.unref)(a).multiple,"show-checkbox":(0,d.unref)(a).multiple,"check-strictly":(0,d.unref)(a).strict,teleported:!1,class:`full`},(0,d.createSlots)({default:(0,d.withCtx)(()=>[(0,d.createVNode)(A,{items:c.value},null,8,[`items`])]),_:2},[(0,d.unref)(s)?{name:`prefix`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(o,null,{content:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`存在检索条件`,-1)]]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`info-circle`})]),_:1})]),key:`0`}:void 0]),1032,[`modelValue`,`disabled`,`clearable`,`multiple`,`collapse-tags`,`collapse-tags-tooltip`,`show-checkbox`,`check-strictly`])),[[u,(0,d.unref)(i)]])}}}),ze={class:`full center`},q=(0,d.defineComponent)({__name:`MTransferEditor`,props:{modelValue:{},disabled:{type:Boolean,default:!1},options:{},refer:{}},emits:[`update:modelValue`,`confirm`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.ref)([]),a=(0,d.computed)(()=>(n.options??i.value).map(e=>({...e,disabled:n.disabled||!!e.disabled})));return(0,d.onMounted)(()=>{if(n.refer?.entity){let{entity:e,label:t,includes:r,excludes:a}=n.refer,{manager:o}=U(e);o.values([t],{includes:r,excludes:a}).then(e=>{i.value=e.map(e=>({value:e.id,label:e[t]}))})}}),(e,t)=>{let n=(0,d.resolveComponent)(`el-transfer`);return(0,d.openBlock)(),(0,d.createElementBlock)(`div`,ze,[(0,d.createVNode)(n,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":t[0]||=e=>(0,d.isRef)(r)?r.value=e:null,data:a.value,filterable:``,props:{key:`value`},titles:[`备选`,`已选`]},{default:(0,d.withCtx)(({option:e})=>[(0,d.createVNode)(O,(0,d.normalizeProps)((0,d.guardReactiveProps)(e)),null,16)]),_:1},8,[`modelValue`,`data`])])}}}),Be=(0,d.defineComponent)({__name:`TransferCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=(0,d.ref)(),r=e,i=t,a=(0,p.useVModel)(r,`modelValue`,i),{param:o,list:s,conditional:c}=Ne(r.field,r.row),l=(0,d.ref)([]);return(0,d.onMounted)(async()=>l.value=await s()),(t,r)=>{let o=(0,d.resolveComponent)(`el-button`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(o,{style:{width:`100%`},type:`info`,plain:``,onClick:r[0]||=e=>n.value?.open()},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(T,{icon:`exchange-alt`},{default:(0,d.withCtx)(()=>[...r[2]||=[(0,d.createTextVNode)(`\xA0打开多选编辑器`,-1)]]),_:1})]),_:1}),(0,d.createVNode)($,{ref_key:`dialog`,ref:n,title:`选项`,width:600,confirm:()=>i(`confirm`)},(0,d.createSlots)({default:(0,d.withCtx)(()=>[(0,d.createVNode)(q,{modelValue:(0,d.unref)(a),"onUpdate:modelValue":r[1]||=e=>(0,d.isRef)(a)?a.value=e:null,disabled:e.disabled,options:l.value},null,8,[`modelValue`,`disabled`,`options`])]),_:2},[(0,d.unref)(c)?{name:`tool`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`info-circle`},{default:(0,d.withCtx)(()=>[...r[3]||=[(0,d.createTextVNode)(`存在检索条件`,-1)]]),_:1})]),key:`0`}:void 0]),1032,[`confirm`])],64)}}}),Ve=(0,d.defineComponent)({__name:`TreeCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),{loading:i,param:a,tree:o,conditional:s}=Ne(n.field,n.row),c=(0,d.ref)([]);return(0,d.onMounted)(async()=>c.value=await o()),(t,n)=>{let o=(0,d.resolveComponent)(`el-tooltip`),l=(0,d.resolveComponent)(`el-tree-select`),u=(0,d.resolveDirective)(`loading`);return(0,d.withDirectives)(((0,d.openBlock)(),(0,d.createBlock)(l,{data:c.value,modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:e.disabled||(0,d.unref)(a).disabled,clearable:(0,d.unref)(a).clearable,"value-on-clear":null,filterable:``,"collapse-tags":(0,d.unref)(a).multiple,"collapse-tags-tooltip":(0,d.unref)(a).multiple,multiple:(0,d.unref)(a).multiple,"check-strictly":(0,d.unref)(a).strict,"default-expand-all":``,"render-after-expand":!0,class:`full`},(0,d.createSlots)({default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(O,{value:e.value,label:e.label,display:e.display,disabled:e.disabled,icon:e.isLeaf?`leaf`:`folder`,type:e.isLeaf?`success`:`warning`},null,8,[`value`,`label`,`display`,`disabled`,`icon`,`type`])]),_:2},[(0,d.unref)(s)?{name:`prefix`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(o,null,{content:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`存在检索条件`,-1)]]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`info-circle`})]),_:1})]),key:`0`}:void 0]),1032,[`data`,`modelValue`,`disabled`,`clearable`,`collapse-tags`,`collapse-tags-tooltip`,`multiple`,`check-strictly`])),[[u,(0,d.unref)(i)]])}}}),He=(0,d.defineComponent)({__name:`BooleanCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=t,i=(0,p.useVModel)(n,`modelValue`,r);return(t,n)=>{let a=(0,d.resolveComponent)(`el-text`),o=(0,d.resolveComponent)(`el-checkbox`),s=(0,d.resolveComponent)(`el-option`),c=(0,d.resolveComponent)(`el-select`);return e.field.not_null?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,modelValue:(0,d.unref)(i),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(i)?i.value=e:null,disabled:e.disabled,border:``,class:`full`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(i)?`是`:`否`),1)]),_:1})]),_:1},8,[`modelValue`,`disabled`])):((0,d.openBlock)(),(0,d.createBlock)(c,{key:1,modelValue:(0,d.unref)(i),"onUpdate:modelValue":n[1]||=e=>(0,d.isRef)(i)?i.value=e:null,disabled:e.disabled,clearable:``,"value-on-clear":null,class:`full`,teleported:!1,onChange:n[2]||=e=>r(`confirm`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{value:!0,label:`是`}),(0,d.createVNode)(s,{value:!1,label:`否`})]),_:1},8,[`modelValue`,`disabled`]))}}}),Ue=S((0,d.defineComponent)({__name:`DefaultCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t);return(e,t)=>(0,d.unref)(n)==null?((0,d.openBlock)(),(0,d.createBlock)(C,{key:1,icon:`ban`})):((0,d.openBlock)(),(0,d.createBlock)(T,{key:0,type:`info`,truncated:``,size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(n)),1)]),_:1}))}}),[[`__scopeId`,`data-v-ed36133d`]]),We=(0,d.defineComponent)({__name:`NumberCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.computed)(()=>{let e=n.field.format||{},t=e.min===null?void 0:e.min,r=e.max===null?void 0:e.max,i=e.precision===null?void 0:e.precision,{step:a,step_strictly:o}=e;return{min:t,max:r,step:a,precision:i,step_strictly:o}});return(t,n)=>{let a=(0,d.resolveComponent)(`el-input-number`);return(0,d.openBlock)(),(0,d.createBlock)(a,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:e.disabled,clearable:!e.field.not_null,"value-on-clear":e.field.not_null?0:null,min:i.value.min,max:i.value.max,step:i.value.step,precision:i.value.precision,"step-strictly":i.value.step_strictly,"controls-position":`right`,class:`full`,onKeydown:n[1]||=(0,d.withKeys)(e=>t.$emit(`confirm`),[`enter`])},null,8,[`modelValue`,`disabled`,`clearable`,`value-on-clear`,`min`,`max`,`step`,`precision`,`step-strictly`])}}}),Ge=(0,d.defineComponent)({__name:`FileCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=t,i=(0,p.useVModel)(n,`modelValue`,r),{$confirm:a,$message:o}=P(),s=(0,d.computed)(()=>i.value),{post:c}=I(),{minio_url:l}=Q();function u(){let{format:{locked:e}}=n.field;if(e)o.warning(`抱歉,该文件不支持下载!请在线预览。`);else if(!i.value)o.warning(`无文件`);else{let e=`${l.value}${i.value}`;console.log(e),window.open(e,`_blank`)}}let f=(0,d.ref)(),m=n.field.format||{},h={id:n.row.id,prop:n.field.prop},g=m.accept.length?m.accept.join(`,`):`*`;function _(){f.value?.$el.querySelector(`input`).click()}function v(){let e=`/valar/${n.field.$entity}/remove_file`;a.warning(`是否删除文件:${s.value}`).then(()=>c(e,h)).then(()=>{i.value=null,o.success(`文件已删除`),r(`reload`)})}function y(e){let{name:t,size:n}=e,r=t.indexOf(`.`)===-1?``:`.${t.split(`.`).pop()}`,i=[];return g===`*`||m.accept.includes(r)||i.push(`文件类型不符合:${g}`),n/1e6<=m.maximum||i.push(`文件大小不超过${m.maximum}Mb`),i.length>0?(o.error(i.join(`;`)),!1):!0}function b(e){e.payload?(i.value=e.payload,r(`reload`),o.success(`上传成功!`)):x(),f.value?.clearFiles()}function x(){o.error(`上传失败`)}return(t,r)=>{let a=(0,d.resolveComponent)(`el-upload`),o=(0,d.resolveComponent)(`el-tooltip`),c=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.withDirectives)((0,d.createVNode)(a,{ref_key:`upload`,ref:f,action:`/api/valar/${n.field.$entity}/save_file`,data:h,limit:1,"show-file-list":!1,"auto-upload":``,accept:(0,d.unref)(g),"before-upload":y,"on-success":b,"on-error":x},null,8,[`action`,`accept`]),[[d.vShow,!1]]),(0,d.createVNode)(c,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{disabled:!s.value},{content:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(s.value),1)]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`info-circle`,type:(0,d.unref)(i)?``:`info`},null,8,[`type`])]),_:1},8,[`disabled`]),(0,d.createVNode)(w,{plain:``,icon:`folder-open`,type:`warning`,onClick:_},{default:(0,d.withCtx)(()=>[...r[0]||=[(0,d.createTextVNode)(` 打开 `,-1)]]),_:1}),(0,d.createVNode)(w,{plain:``,disabled:!(0,d.unref)(i),icon:`trash`,type:`danger`,onClick:v},{default:(0,d.withCtx)(()=>[...r[1]||=[(0,d.createTextVNode)(` 删除 `,-1)]]),_:1},8,[`disabled`]),(0,d.createVNode)(w,{plain:``,disabled:!(0,d.unref)(i)||e.field.format.locked,icon:`download`,type:`primary`,onClick:u},{default:(0,d.withCtx)(()=>[...r[2]||=[(0,d.createTextVNode)(` 下载 `,-1)]]),_:1},8,[`disabled`])]),_:1})],64)}}}),J=(0,d.defineComponent)({__name:`MObjectEditor`,props:{modelValue:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=(0,d.defineAsyncComponent)(()=>import(`lite-json-editor`)),r=(0,p.useVModel)(e,`modelValue`,t);return(t,i)=>{let a=(0,d.resolveComponent)(`el-card`);return(0,d.openBlock)(),(0,d.createBlock)(a,{shadow:`never`,style:{width:`100%`},"body-style":{padding:`5px`,minHeight:`140px`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(n),{modelValue:(0,d.unref)(r),"onUpdate:modelValue":i[0]||=e=>(0,d.isRef)(r)?r.value=e:null,"without-edit":e.disabled},null,8,[`modelValue`,`without-edit`])]),_:1})}}}),Ke=(0,d.defineComponent)({__name:`ObjectCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=t,i=(0,p.useVModel)(n,`modelValue`,r),a=(0,d.ref)();function o(){i.value??={},a.value?.open()}return(t,n)=>{let s=(0,d.resolveComponent)(`el-button`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(s,{type:`info`,plain:``,style:{width:`100%`},onClick:o},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(T,{icon:`code`},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(` 打开对象编辑器`,-1)]]),_:1})]),_:1}),(0,d.createVNode)($,{ref_key:`dialogRef`,ref:a,title:`对象编辑器`,confirm:()=>r(`confirm`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(J,{modelValue:(0,d.unref)(i),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(i)?i.value=e:null,disabled:e.disabled},null,8,[`modelValue`,`disabled`])]),_:1},8,[`confirm`])],64)}}}),qe=(0,d.defineComponent)({__name:`MRichEditor`,props:{modelValue:{},disabled:{type:Boolean}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=(0,d.defineAsyncComponent)(()=>import(`@vueup/vue-quill`).then(e=>e.QuillEditor)),r=(0,p.useVModel)(e,`modelValue`,t);return(t,i)=>((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(n),{content:(0,d.unref)(r),"onUpdate:content":i[0]||=e=>(0,d.isRef)(r)?r.value=e:null,style:{height:`400px`,"overflow-y":`hidden`},"content-type":`html`,theme:`snow`,toolbar:!e.disabled&&`essential`,placeholder:`请输入内容...`,"read-only":e.disabled},null,8,[`content`,`toolbar`,`read-only`]))}}),Je=(0,d.defineComponent)({__name:`RichCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{emit:t}){let n=e,r=t,i=(0,p.useVModel)(n,`modelValue`,r),a=(0,d.ref)();function o(){i.value??=``,a.value?.open()}return(t,n)=>{let s=(0,d.resolveComponent)(`el-button`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(s,{type:`info`,plain:``,style:{width:`100%`},onClick:o},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(T,{icon:`book`},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`打开文本编辑器`,-1)]]),_:1})]),_:1}),(0,d.createVNode)($,{ref_key:`dialogRef`,ref:a,title:`文本编辑器`,width:`800`,confirm:()=>r(`confirm`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(qe,{modelValue:(0,d.unref)(i),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(i)?i.value=e:null,disabled:e.disabled},null,8,[`modelValue`,`disabled`])]),_:1},8,[`confirm`])],64)}}}),Ye=(0,d.defineComponent)({__name:`MCell`,props:{modelValue:{},field:{},row:{},disabled:{type:Boolean}},emits:[`update:modelValue`,`confirm`,`reload`],setup(e,{expose:t,emit:n}){let r=n,i=e,a=(0,d.computed)(()=>i.disabled||i.field.disabled),o=(0,p.useVModel)(i,`modelValue`,r);t({confirm});let s=(0,d.computed)(()=>{let{tool:e,format:t}=i.field;switch(e){case`boolean`:case`switch`:return He;case`number`:return We;case`text`:case`textarea`:return _e;case`select`:return Re;case`tree`:return Ve;case`cascade`:return Le;case`transfer`:return Be;case`rich`:return Je;case`object`:return Ke;case`time`:return je;case`date`:return De;case`timerange`:return Me;case`daterange`:return ke;case`dates`:return Ee;case`file`:return Ge;case`set`:return t.multiple?Ce:we;case`color`:return ye;case`icon`:return Se;case`auto`:return Ie;default:return Ue}});return(t,n)=>s.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.resolveDynamicComponent)(s.value),{key:0,modelValue:(0,d.unref)(o),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(o)?o.value=e:null,field:e.field,row:e.row,disabled:a.value,onConfirm:n[1]||=e=>r(`confirm`),onReload:n[2]||=e=>r(`reload`)},null,40,[`modelValue`,`field`,`row`,`disabled`])):(0,d.createCommentVNode)(``,!0)}}),Xe={class:`justified`},Ze=(0,d.defineComponent)({__name:`DTreeNodeEdit`,props:{disable_table:{type:Boolean},data:{},field:{},manager:{},control:{},collector:{}},emits:[`hide`,`insert`,`switch`,`remove`,`table`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.computed)(()=>{let{isLeaf:e,children:t}=n.data;return{allow_insert:!e,allow_switch:!t?.length,allow_table:!e}}),a=(0,d.ref)({});(0,d.onMounted)(()=>{n.field&&(a.value=(0,g.pick)(n.data,[`id`,n.field?.prop]))});function o(){n.manager.save_many([a.value]),r(`hide`)}return(t,n)=>{let s=(0,d.resolveComponent)(`el-space`),c=(0,d.resolveComponent)(`el-col`),l=(0,d.resolveComponent)(`el-row`);return(0,d.openBlock)(),(0,d.createBlock)(l,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(c,{class:`right`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,Xe,[(0,d.createVNode)(s,{size:0},{default:(0,d.withCtx)(()=>[(e.control.allow_edit||e.control.allow_insert)&&e.collector.size?((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,disabled:!!e.data.children?.length,icon:`exchange`,type:`warning`,onClick:n[0]||=e=>r(`switch`)},null,8,[`disabled`])):(0,d.createCommentVNode)(``,!0),e.control.allow_remove?((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,icon:`trash`,type:`danger`,onClick:n[1]||=e=>r(`remove`)})):(0,d.createCommentVNode)(``,!0),e.control.allow_insert&&i.value.allow_insert?((0,d.openBlock)(),(0,d.createBlock)(w,{key:2,icon:`plus-circle`,type:`success`,onClick:n[2]||=e=>r(`insert`)})):(0,d.createCommentVNode)(``,!0),!e.data.isLeaf&&!e.disable_table?((0,d.openBlock)(),(0,d.createBlock)(w,{key:3,icon:`table-list`,onClick:n[3]||=t=>r(`table`,e.data?.id)})):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(s,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`ban`,onClick:n[4]||=e=>r(`hide`)},{default:(0,d.withCtx)(()=>[...n[6]||=[(0,d.createTextVNode)(`取消 `,-1)]]),_:1}),e.field?.allow_edit?((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,icon:`check`,type:`primary`,onClick:o},{default:(0,d.withCtx)(()=>[...n[7]||=[(0,d.createTextVNode)(`保存 `,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1})])]),_:1}),e.field?((0,d.openBlock)(),(0,d.createBlock)(c,{key:0,style:{"margin-top":`10px`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(Ye,{field:e.field,row:a.value,modelValue:a.value[e.field.prop],"onUpdate:modelValue":n[5]||=t=>a.value[e.field.prop]=t,onConfirm:o,disabled:!e.field.allow_edit},null,8,[`field`,`row`,`modelValue`,`disabled`])]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1})}}}),Qe=(0,d.defineComponent)({__name:`DataWrapper`,props:{loading:{type:Boolean},ticking:{}},setup(e){let t=(0,d.useTemplateRef)(`wrapperRef`),{width:n}=(0,p.useElementSize)(t),r=e,i=(0,d.useSlots)(),a=null;(0,d.watch)(()=>r.loading,()=>{r.loading?a=o():a?.close()});function o(){let e=t.value?.$el;if(e instanceof HTMLElement)return y.ElLoading.service({target:e,svg:`-`,background:`rgba(200, 200, 200, 0)`})}return(e,r)=>{let a=(0,d.resolveComponent)(`el-card`);return(0,d.openBlock)(),(0,d.createBlock)(a,{ref_key:`wrapperRef`,ref:t,"body-style":{padding:0},shadow:`never`,class:`data-wrapper`,onContextmenu:r[0]||=e=>{e.preventDefault(),e.stopPropagation()}},(0,d.createSlots)({header:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`header`,{width:(0,d.unref)(n)})]),default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`default`,{width:(0,d.unref)(n)})]),_:2},[(0,d.unref)(i).footer?{name:`footer`,fn:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`footer`,{width:(0,d.unref)(n)})]),key:`0`}:void 0]),1536)}}}),$e=(0,d.defineComponent)({__name:`DTreeController`,props:{unrestricted:{type:Boolean},collector:{},mapping:{},control:{},disable_table:{type:Boolean}},emits:[`insert`,`switch`,`remove`,`table`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.computed)(()=>{let e=new Set([]);return[...n.collector].forEach(t=>{let r=n.mapping[t];r&&!r.children?.length&&r.isLeaf!=null&&e.add(r.isLeaf)}),new Set(e).size===1});function a(e){n.collector.clear(),r(e)}return(0,d.computed)(()=>{if(n.collector.size===0)return!0;if(n.collector.size>1)return!1;let e=[...n.collector][0];return e?!n.mapping[e]?.isLeaf:!1}),(t,n)=>{let o=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(o,{size:0},{default:(0,d.withCtx)(()=>[e.control.allow_edit||e.control.allow_insert?((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,disabled:!i.value,icon:`exchange`,onClick:n[0]||=e=>r(`switch`)},null,8,[`disabled`])):(0,d.createCommentVNode)(``,!0),e.control.allow_remove?((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,disabled:!e.unrestricted&&!e.collector.size,icon:`trash`,onClick:n[1]||=e=>r(`remove`)},null,8,[`disabled`])):(0,d.createCommentVNode)(``,!0),e.control.allow_insert?((0,d.openBlock)(),(0,d.createBlock)(w,{key:2,icon:`plus-circle`,onClick:n[2]||=e=>a(`insert`)})):(0,d.createCommentVNode)(``,!0),e.disable_table?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(w,{key:3,icon:`table-list`,onClick:n[3]||=e=>a(`table`)}))]),_:1})}}}),et=(0,d.defineComponent)({__name:`PluginColumnContent`,props:{data:{},column:{},collector:{}},setup(e){let t=e;function n(e,n){n.preventDefault(),n.stopPropagation();let{collector:r,data:i,column:a}=t;r.clear(),i.id&&r.add(i.id),a.callback?.(e,i,n)}return(t,r)=>((0,d.openBlock)(),(0,d.createBlock)((0,d.resolveDynamicComponent)(e.column.component),{data:e.data,param:e.column.param,invoke:n},null,8,[`data`,`param`]))}}),tt=S((0,d.defineComponent)({__name:`PluginButtonContent`,props:{buttons:{},data:{},collector:{},code:{}},emits:[`width`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.useTemplateRef)(`actionsRef`),{width:a}=(0,p.useElementSize)(i);(0,d.watch)(a,()=>r(`width`,a.value+15));let{buttons:o}=rr((0,d.computed)(()=>n.buttons||[]),(0,d.computed)(()=>n.code),(0,d.computed)(()=>n.data));function s(e,t){e.preventDefault(),e.stopPropagation();let{data:r,collector:i}=n;i.clear(),r.id&&i.add(r.id),t.handler?.(r,e,t)}function c(e){e.preventDefault(),e.stopPropagation()}return(e,t)=>{let n=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(n,{ref_key:`actionsRef`,ref:i,class:`table-actions`,align:`center`,size:3},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)((0,d.unref)(o),e=>((0,d.openBlock)(),(0,d.createBlock)(w,{size:e.size,type:e.type,disabled:e.disabled,plain:e.plain,icon:e.icon,onClick:t=>s(t,e),onDblclick:t[0]||=e=>c(e)},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`b`,null,(0,d.toDisplayString)(e.label),1)]),_:2},1032,[`size`,`type`,`disabled`,`plain`,`icon`,`onClick`]))),256))]),_:1},512)}}}),[[`__scopeId`,`data-v-08150db9`]]);function nt(e,t){let n=null;function r(){(e.value?.$el.querySelectorAll(`tr.el-table__row`)).forEach(e=>{let t=e.className.match(/row-id-([a-zA-Z0-9_-]+)/);t&&e.setAttribute(`data-id`,t[1])});let r=e.value?.$el.querySelectorAll(`.el-table__body-wrapper tbody`)[0];n=new b.default(r,{draggable:`tr.el-table__row`,handle:`.sortable`,animation:260,removeCloneOnHide:!0,onEnd(e){let n=e.newIndex,r=e.oldIndex,i=a.value.map(e=>e.id),o=a.value.map(e=>e.sort),s=Math.min(n,r),c=Math.max(n,r),l=i.splice(r,1)[0];i.splice(n,0,l);let u=(0,g.range)(s,c+1).map(e=>({id:i[e],sort:o[e]}));u.length>1&&t(u,l)}})}function i(){n&&n.destroy(),n=null}let a=(0,d.ref)([]);function o(e,t){i(),t&&(a.value=e,(0,d.nextTick)().then(()=>r()))}return(0,d.onUnmounted)(i),{createSortable:o}}var rt=(0,d.defineComponent)({__name:`DTController`,props:{meta:{},disable_tree:{type:Boolean},unrestricted:{type:Boolean},collector:{},control:{}},emits:[`download`,`upload`,`save`,`remove`,`tree`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.ref)();function a(e){i.value?.hide(),r(`download`,e)}let{$confirm:o}=P();function s(){n.collector.size?o.info(`是否删除${n.collector.size}条数据?`).then(()=>r(`remove`)):o.warning(`是否清空数据?`).then(()=>r(`remove`))}return(t,n)=>{let o=(0,d.resolveComponent)(`el-space`),c=(0,d.resolveComponent)(`el-popover`);return(0,d.openBlock)(),(0,d.createBlock)(o,{size:0},{default:(0,d.withCtx)(()=>[e.control.allow_insert?((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,icon:`plus-circle`,onClick:n[0]||=e=>r(`save`,!0)})):(0,d.createCommentVNode)(``,!0),e.control.allow_edit_on_form?((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,disabled:!e.collector.size,icon:`pencil`,onClick:n[1]||=e=>r(`save`,!1)},null,8,[`disabled`])):(0,d.createCommentVNode)(``,!0),e.control.allow_remove?((0,d.openBlock)(),(0,d.createBlock)(w,{key:2,disabled:!e.unrestricted&&!e.collector.size,icon:`trash`,onClick:s},null,8,[`disabled`])):(0,d.createCommentVNode)(``,!0),e.control.allow_upload?((0,d.openBlock)(),(0,d.createBlock)(w,{key:3,onClick:n[2]||=e=>r(`upload`),icon:`upload`})):(0,d.createCommentVNode)(``,!0),e.control.allow_download?((0,d.openBlock)(),(0,d.createBlock)(c,{key:4,ref_key:`popoverRef`,ref:i,trigger:`click`,"show-after":0,"auto-close":3e3,placement:`left`,width:`200`,"hide-after":0},{reference:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`download`})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{spacer:`|`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`file-excel`,onClick:n[3]||=e=>a(!0)},{default:(0,d.withCtx)(()=>[...n[6]||=[(0,d.createTextVNode)(`数据文件 `,-1)]]),_:1}),(0,d.createVNode)(w,{icon:`clipboard`,onClick:n[4]||=e=>a(!1)},{default:(0,d.withCtx)(()=>[...n[7]||=[(0,d.createTextVNode)(`拷贝数据 `,-1)]]),_:1})]),_:1})]),_:1},512)):(0,d.createCommentVNode)(``,!0),e.meta.tree&&!e.disable_tree?((0,d.openBlock)(),(0,d.createBlock)(w,{key:5,onClick:n[5]||=e=>r(`tree`),icon:`folder-tree`})):(0,d.createCommentVNode)(``,!0)]),_:1})}}}),it={placement:`bottom-end`,popperClass:`m-table-tooltip`,enterable:!1,effect:`dark`,hideAfter:0,offset:0,popperOptions:{width:`100px`,popperClass:`m-table-tooltip`},showAfter:0,showArrow:!0},at=(0,d.defineComponent)({__name:`DTIndex`,props:{collector:{},size:{},unrestricted:{type:Boolean}},emits:[`toggle`,`meta`],setup(e,{emit:t}){let n=t,r=e,i=(0,d.computed)(()=>r.collector.size?r.collector.size===r.size?`square-check`:`square-minus`:`square`);return(t,r)=>{let a=(0,d.resolveComponent)(`el-divider`),o=(0,d.resolveComponent)(`el-tooltip`),s=(0,d.resolveComponent)(`el-table-column`);return(0,d.openBlock)(),(0,d.createBlock)(s,{type:`index`,align:`center`,width:`50`,"header-align":`center`},{header:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,null,[(0,d.createVNode)(w,{icon:e.unrestricted?`bahai`:`info-circle`,type:`info`,onClick:r[0]||=e=>n(`meta`,e)},null,8,[`icon`])]),(0,d.createVNode)(a),(0,d.createElementVNode)(`div`,null,[(0,d.createVNode)(w,{icon:i.value,size:`default`,onClick:r[1]||=e=>n(`toggle`),"icon-size":`sm`},null,8,[`icon`])])]),default:(0,d.withCtx)(({row:{$message:t,id:n}})=>[t?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,effect:`light`,placement:`right`},{content:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(t),1)]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`warning`,shake:e.collector.has(n)},null,8,[`shake`])]),_:2},1024)):(0,d.createCommentVNode)(``,!0)]),_:1})}}}),ot={class:`justified`},st=(0,d.defineComponent)({__name:`DTHeader`,props:{field:{},unrestricted:{type:Boolean},orders:{},finder:{},includes:{}},emits:[`search`,`sort`,`meta`],setup(e,{emit:t}){let n=t,r=e,i=(0,d.computed)(()=>{let e=r.field.prop;return r.finder[e]?`primary`:ae(r.includes,e).length?`warning`:``}),a=(0,d.computed)(()=>(r.orders||{})[r.field.prop]),o=(0,d.computed)(()=>a.value===1?`sort-up`:a.value===-1?`sort-down`:`sort`);return(t,r)=>{let s=(0,d.resolveComponent)(`el-space`),c=(0,d.resolveComponent)(`el-divider`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(s,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(T,{tag:`b`,size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.field.label),1)]),_:1})]),_:1}),(0,d.createVNode)(c),(0,d.createElementVNode)(`div`,ot,[(0,d.createElementVNode)(`div`,null,[[`object`].includes(e.field.tool)?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,size:`small`,icon:`search`,type:i.value,onClick:r[0]||=t=>n(`search`,t,e.field),"icon-size":`sm`},null,8,[`type`]))]),(0,d.createElementVNode)(`div`,null,[e.unrestricted?((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,icon:`cog`,size:`small`,onClick:r[1]||=t=>n(`meta`,e.field),"icon-size":`sm`})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(w,{icon:o.value,type:a.value?`primary`:`info`,onClick:r[2]||=t=>n(`sort`,e.field),"icon-size":`sm`,style:{"margin-left":`0`}},null,8,[`icon`,`type`])])])],64)}}}),ct={class:`justified`},lt=(0,d.defineComponent)({__name:`DTFooter`,props:{size:{},page:{},total:{},width:{}},emits:[],setup(e,{emit:t}){let n=e,r=t,i=(0,p.useVModel)(n,`size`,r),a=(0,p.useVModel)(n,`page`,r),o=[10,20,50,100,200].map(e=>({value:e,label:`${e} 条/页`}));return(t,n)=>{let r=(0,d.resolveComponent)(`el-pagination`),s=(0,d.resolveComponent)(`el-text`),c=(0,d.resolveComponent)(`el-input-number`),l=(0,d.resolveComponent)(`el-space`),u=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createElementBlock)(`div`,ct,[e.size&&e.total&&e.width>300?((0,d.openBlock)(),(0,d.createBlock)(l,{key:0},{default:(0,d.withCtx)(()=>[e.width>600?((0,d.openBlock)(),(0,d.createBlock)(r,{key:0,size:`small`,total:e.total,background:``,"current-page":(0,d.unref)(a),"onUpdate:currentPage":n[0]||=e=>(0,d.isRef)(a)?a.value=e:null,"page-size":(0,d.unref)(i),"onUpdate:pageSize":n[1]||=e=>(0,d.isRef)(i)?i.value=e:null,"pager-count":5,layout:`jumper, prev, pager, next`},null,8,[`total`,`current-page`,`page-size`])):((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,{key:1},[(0,d.createVNode)(s,{size:`small`},{default:(0,d.withCtx)(()=>[...n[4]||=[(0,d.createTextVNode)(`前往`,-1)]]),_:1}),(0,d.createVNode)(c,{style:{width:`56px`},size:`small`,controls:!1,modelValue:(0,d.unref)(a),"onUpdate:modelValue":n[2]||=e=>(0,d.isRef)(a)?a.value=e:null,min:1,max:e.size?Math.ceil(e.total/e.size):1,step:1,"step-strictly":``},null,8,[`modelValue`,`max`]),(0,d.createVNode)(s,{size:`small`},{default:(0,d.withCtx)(()=>[...n[5]||=[(0,d.createTextVNode)(`页`,-1)]]),_:1})],64))]),_:1})):((0,d.openBlock)(),(0,d.createBlock)(s,{key:1,class:`small`,tag:`b`,type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)(`第 `+(0,d.toDisplayString)(e.page)+`/`+(0,d.toDisplayString)(e.size)+` 页`,1)]),_:1})),(0,d.createVNode)(l,{spacer:`|`,style:{height:`24px`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{class:`small`,tag:`b`,type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)(`共 `+(0,d.toDisplayString)(e.total)+` 条`,1)]),_:1}),e.width>400?((0,d.openBlock)(),(0,d.createBlock)(u,{key:0,size:`small`,style:{width:`100px`},modelValue:(0,d.unref)(i),"onUpdate:modelValue":n[3]||=e=>(0,d.isRef)(i)?i.value=e:null,options:(0,d.unref)(o)},null,8,[`modelValue`,`options`])):(0,d.createCommentVNode)(``,!0)]),_:1})])}}}),ut={key:0,class:`search-value`},dt={key:1,class:`search-value`},ft={class:`search-confirm justified`},pt=S((0,d.defineComponent)({__name:`DTSearch`,props:{field:{},finder:{},includes:{}},emits:[`confirm`,`cancel`],setup(e,{emit:t}){let n=t,r=e,i=(0,d.ref)(),a=(0,d.computed)(()=>`检索方式:${(i.value?.getCheckedNodes(!0))?.[0]?.label}`),o=(0,d.ref)({value:``,in:[],range:{from:``,to:``},isnull:!1});function s(){let e={},t=null;t=m.value===`isnull`?o.value.isnull:m.value===`range`?o.value.range:m.value===`in`?o.value.in:o.value.value??null,e[m.value]=t;let i={type:p.value?`excludes`:`includes`,collation:m.value,value:t},a=r.field.prop;t==null?n(`confirm`,a):n(`confirm`,a,i)}let c=(0,d.ref)(!1);function l(){let e=r.field.prop,t=r.finder[e];if(t){let{type:e,value:n,collation:r}=t;m.value=r,p.value=e===`excludes`,m.value===`isnull`?o.value.isnull=n:m.value===`range`?o.value.range=n:m.value===`in`?o.value.in=n:o.value.value=n}else{let t=Object.keys(r.includes||{}).find(t=>t.startsWith(e));if(t){let e=r.includes?.[t];c.value=!0,p.value=!1;let{collation:n}=H(t);m.value=n??`exact`,o.value.value=e}}}(0,d.onMounted)(l);let u=(0,d.computed)(()=>G.multiple.includes(r.field.domain)),f=(0,d.computed)(()=>r.field.domain===`BooleanField`),p=(0,d.ref)(!1),m=(0,d.ref)(f.value?`exact`:`contains`),h=(0,d.computed)(()=>[{label:`基础检索`,value:`basic`,disabled:f.value,children:[{label:`模糊匹配`,value:`icontains`,type:`basic`},{label:`精准匹配`,value:`iexact`,type:`basic`},{label:`开头匹配`,value:`istartswith`,type:`basic`},{label:`结尾匹配`,value:`iendswith`,type:`basic`}]},{label:`基础检索(区分大小写)`,value:`basic`,children:[{label:`模糊匹配`,value:`contains`,type:`basic`,disabled:f.value},{label:`精准匹配`,value:`exact`,type:`basic`},{label:`开头匹配`,value:`startswith`,type:`basic`,disabled:f.value},{label:`结尾匹配`,value:`endswith`,type:`basic`,disabled:f.value}]},{label:`比较检索`,value:`compare`,disabled:u.value||f.value,children:[{label:`大于`,value:`gt`,type:`compare`},{label:`大于等于`,value:`gte`,type:`compare`},{label:`小于`,value:`lt`,type:`compare`},{label:`小于等于`,value:`lte`,type:`compare`}]},{label:`高级检索`,value:`advance`,children:[{label:`空值匹配`,value:`isnull`,type:`advance`},{label:`多值匹配`,value:`in`,type:`advance`,disabled:f.value},{label:`区间匹配`,value:`range`,type:`advance`,disabled:u.value||f.value}]}]);return(t,r)=>{let l=(0,d.resolveComponent)(`el-text`),u=(0,d.resolveComponent)(`el-checkbox`),g=(0,d.resolveComponent)(`el-cascader`),_=(0,d.resolveComponent)(`el-space`),v=(0,d.resolveComponent)(`el-collapse-item`),y=(0,d.resolveComponent)(`el-collapse`),b=(0,d.resolveComponent)(`el-option`),x=(0,d.resolveComponent)(`el-select`),S=(0,d.resolveComponent)(`el-input`),w=(0,d.resolveComponent)(`el-input-tag`),T=(0,d.resolveComponent)(`el-button`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(y,{class:`m-collapse`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(v,{title:a.value,name:`1`},{title:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`search`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(a.value),1)]),_:1})]),icon:(0,d.withCtx)(()=>[(0,d.createVNode)(l,{class:`small`,type:`primary`},{default:(0,d.withCtx)(()=>[...r[11]||=[(0,d.createTextVNode)(`高级`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(_,{class:`m-space`,spacer:`|`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(u,{disabled:c.value,size:`small`,modelValue:p.value,"onUpdate:modelValue":r[0]||=e=>p.value=e},{default:(0,d.withCtx)(()=>[...r[12]||=[(0,d.createTextVNode)(`反向检索 `,-1)]]),_:1},8,[`disabled`,`modelValue`]),(0,d.createVNode)(g,{disabled:c.value,ref_key:`cascaderRef`,ref:i,options:h.value,modelValue:m.value,"onUpdate:modelValue":r[1]||=e=>m.value=e,"show-all-levels":!1,props:{emitPath:!1}},null,8,[`disabled`,`options`,`modelValue`])]),_:1})]),_:1},8,[`title`])]),_:1}),f.value?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,ut,[(0,d.createVNode)(x,{modelValue:o.value.value,"onUpdate:modelValue":r[2]||=e=>o.value.value=e},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(b,{value:!0,label:`是`}),(0,d.createVNode)(b,{value:!1,label:`否`})]),_:1},8,[`modelValue`])])):((0,d.openBlock)(),(0,d.createElementBlock)(`div`,dt,[m.value===`isnull`?((0,d.openBlock)(),(0,d.createBlock)(x,{key:0,disabled:c.value,placement:`right-start`,modelValue:o.value.isnull,"onUpdate:modelValue":r[3]||=e=>o.value.isnull=e,style:{width:`100%`},options:[{label:`仅非空值`,value:!1},{label:`仅空值`,value:!0}]},null,8,[`disabled`,`modelValue`])):m.value===`range`?((0,d.openBlock)(),(0,d.createBlock)(_,{key:1},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(S,{disabled:c.value,modelValue:o.value.range.from,"onUpdate:modelValue":r[4]||=e=>o.value.range.from=e,placeholder:`起始值`},null,8,[`disabled`,`modelValue`]),(0,d.createVNode)(S,{disabled:c.value,modelValue:o.value.range.to,"onUpdate:modelValue":r[5]||=e=>o.value.range.to=e,placeholder:`终止值`},null,8,[`disabled`,`modelValue`])]),_:1})):m.value===`in`?((0,d.openBlock)(),(0,d.createBlock)(w,{key:2,disabled:c.value,modelValue:o.value.in,"onUpdate:modelValue":r[6]||=e=>o.value.in=e,placeholder:`检索集合`},null,8,[`disabled`,`modelValue`])):((0,d.openBlock)(),(0,d.createBlock)(S,{key:3,modelValue:o.value.value,"onUpdate:modelValue":r[7]||=e=>o.value.value=e,disabled:c.value,onFocus:r[8]||=()=>{},placeholder:`检索值`},null,8,[`modelValue`,`disabled`]))])),(0,d.createElementVNode)(`div`,ft,[(0,d.createElementVNode)(`div`,null,[c.value?((0,d.openBlock)(),(0,d.createBlock)(C,{key:0,icon:`lock`,class:`medium`,type:`warning`},{default:(0,d.withCtx)(()=>[...r[13]||=[(0,d.createTextVNode)(`检索被锁定 `,-1)]]),_:1})):e.finder[e.field.prop]?((0,d.openBlock)(),(0,d.createBlock)(T,{key:1,plain:``,size:`small`,type:`danger`,onClick:r[9]||=n=>t.$emit(`confirm`,e.field.prop)},{default:(0,d.withCtx)(()=>[...r[14]||=[(0,d.createTextVNode)(`清空 `,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0)]),(0,d.createElementVNode)(`div`,null,[(0,d.createVNode)(T,{size:`small`,type:`info`,plain:``,onClick:r[10]||=e=>n(`cancel`),text:``},{default:(0,d.withCtx)(()=>[...r[15]||=[(0,d.createTextVNode)(`取消`,-1)]]),_:1}),c.value?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(T,{key:0,size:`small`,type:`primary`,plain:``,onClick:s},{default:(0,d.withCtx)(()=>[...r[16]||=[(0,d.createTextVNode)(`检索 `,-1)]]),_:1}))])])],64)}}}),[[`__scopeId`,`data-v-0618949d`]]),mt=(0,d.defineComponent)({__name:`DTSaveHeader`,props:{data:{}},setup(e){return(t,n)=>{let r=(0,d.resolveComponent)(`el-text`),i=(0,d.resolveComponent)(`el-tag`),a=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(a,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.data.is_insert?`新增`:`编辑`),1)]),_:1}),(0,d.createVNode)(i,{size:`small`,style:{width:`40px`},type:`info`,effect:`plain`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.data.count),1)]),_:1}),(0,d.createVNode)(r,{tag:`b`},{default:(0,d.withCtx)(()=>[...n[0]||=[(0,d.createTextVNode)(`条数据`,-1)]]),_:1})]),_:1})}}}),Y=S((0,d.defineComponent)({__name:`MForm`,props:{original:{default:{}},modelValue:{},fields:{},disabled:{type:Boolean,default:!1}},emits:[`update:modelValue`,`reload`,`change`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.ref)(),a=(0,d.ref)({}),o=(0,p.useVModel)(n,`modelValue`,r),{$message:s}=P();(0,d.watch)(()=>n.original,e=>a.value=(0,g.cloneDeep)(e),{deep:!0,immediate:!0}),(0,d.watch)(()=>[i.value,a.value],()=>{i.value?.validate(e=>{if(e){let e=Object.fromEntries(l.value.map(e=>[e,a.value[e]])),t=n.original?.id;t&&!(0,g.isEmpty)(e)&&(e.id=t),o.value=e}else s.error(`数据校验不通过,请查看提示信息。`),o.value=null;r(`change`,o.value)})},{deep:!0});let c=(0,d.computed)(()=>{let e=n.fields.filter(e=>e.not_null).map(({prop:e,label:t})=>[e,{required:!0,message:`请输入${t}`,trigger:`change`}]);return Object.fromEntries(e)}),l=(0,d.computed)(()=>n.fields.filter(({prop:e})=>{let t=n.original[e],r=a.value[e];return!(0,g.isEqual)(t,r)}).map(({prop:e})=>e));function u(e){a.value[e]=n.original[e]}return(t,n)=>{let o=(0,d.resolveComponent)(`el-text`),s=(0,d.resolveComponent)(`el-form-item`),f=(0,d.resolveComponent)(`el-col`),p=(0,d.resolveComponent)(`el-row`),m=(0,d.resolveComponent)(`el-form`);return(0,d.openBlock)(),(0,d.createBlock)(m,{ref_key:`formRef`,ref:i,"label-position":`top`,model:a.value,rules:c.value,"hide-required-asterisk":``},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(p,{gutter:10},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(e.fields,t=>((0,d.openBlock)(),(0,d.createBlock)(f,{span:t.span||(e.fields.length===1?24:12)},{default:(0,d.withCtx)(()=>[t.hide_on_form?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(s,{key:0,required:t.not_null,prop:t.prop,class:`custom-form-item`},{label:(0,d.withCtx)(()=>[t.not_null?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,type:`danger`},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`*`,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(o,{truncated:``,class:`custom-label-text`,size:`small`,tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(t.label),1)]),_:2},1024),l.value.includes(t.prop)?((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,onClick:e=>u(t.prop),type:`info`,"icon-size":`sm`,icon:`refresh`},null,8,[`onClick`])):(0,d.createCommentVNode)(``,!0)]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(Ye,{modelValue:a.value[t.prop],"onUpdate:modelValue":e=>a.value[t.prop]=e,field:t,row:e.original,disabled:e.disabled||!t.allow_edit,onReload:n[0]||=e=>r(`reload`)},null,8,[`modelValue`,`onUpdate:modelValue`,`field`,`row`,`disabled`])]),_:2},1032,[`required`,`prop`]))]),_:2},1032,[`span`]))),256))]),_:1})]),_:1},8,[`model`,`rules`])}}}),[[`__scopeId`,`data-v-25b72fd8`]]),ht=(0,d.defineComponent)({__name:`DTSave`,props:{is_insert:{type:Boolean},items:{},meta:{},count:{},manager:{}},setup(e,{expose:t}){let n=e,r=(0,d.ref)(),i=(0,d.computed)(()=>{if(n.is_insert)return n.items[0];{let e=n.meta.fields.map(e=>{let t=e.prop,r=new Set(n.items.map(e=>e[t]));return[t,r.size===1?[...r][0]:null]});return n.items.length===1&&e.push([`id`,n.items[0]?.id]),Object.fromEntries(e)}}),a=(0,d.computed)(()=>n.meta.fields.filter(e=>e.allow_edit&&!e.hide_on_form&&![`id`,`sort`].includes(e.prop))),o=(0,d.ref)(),{$message:s}=P();function c(){let{is_insert:e}=n;if(o.value==null)return!1;if(e){let e=n.items[0]?.id,t=[{...o.value,id:e}];return n.manager.save_many(t),!0}{if((0,g.isEmpty)(o.value))return!0;let e=n.items.map(({id:e})=>({...o.value,id:e}));return n.manager.save_many(e),!0}}return t({saveData:c}),(t,n)=>{let s=(0,d.resolveComponent)(`el-text`),c=(0,d.resolveComponent)(`el-result`);return a.value.length?((0,d.openBlock)(),(0,d.createBlock)(Y,{key:0,ref_key:`formRef`,ref:r,original:i.value,fields:a.value,modelValue:o.value,"onUpdate:modelValue":n[0]||=e=>o.value=e,onReload:n[1]||=t=>e.manager.reload()},null,8,[`original`,`fields`,`modelValue`])):((0,d.openBlock)(),(0,d.createBlock)(c,{key:1,icon:`warning`},{title:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{type:`info`},{default:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`没有可编辑的字段`,-1)]]),_:1})]),_:1}))}}});function gt(e,t=10){let n=(0,d.ref)({size:t,page:1}),r=(0,d.computed)(()=>e.value.length),i=(0,d.ref)({});return{results:(0,d.computed)(()=>{let t=e.value.filter(e=>Object.entries(i.value).map(([t,n])=>{let r=i.value[t];return e[t].includes(r)}).reduce((e,t)=>e&&t,!0)),{page:r,size:a}=n.value;if(a){let e=(r-1)*a;return t.slice(e,e+a)}return t}),total:r,pager:n}}var _t={class:`justified full`},vt=(0,d.defineComponent)({__name:`MDataViewer`,props:{url:{}},setup(e){let t=e,n=(0,d.computed)(()=>{if(!t.url)return``;let e=t.url.lastIndexOf(`/`);return t.url.substring(e+1)}),{readBookFromURL:r,zip:i}=$n(),a=(0,d.ref)({}),o=(0,d.ref)(),s=(0,d.ref)(!0),c=(0,d.computed)(()=>a.value[o.value]),l=(0,d.computed)(()=>{if(!c.value)return[];let e=c.value.columns||[],t=c.value.headers||[];return s.value?i(e,t):i(e,e)}),{total:u,results:f,pager:p}=gt((0,d.computed)(()=>{if(!c.value)return[];let e=[...c.value.data],t=c.value.columns||[],n=c.value.headers||[];return s.value||e.unshift(n),e.map(e=>i(t,e))}),10);async function m(){t.url&&(a.value=await r(t.url),o.value=Object.keys(a.value)[0])}return(0,d.watch)(()=>t.url,m,{deep:!0,immediate:!0}),(e,t)=>{let r=(0,d.resolveComponent)(`el-text`),i=(0,d.resolveComponent)(`el-option`),c=(0,d.resolveComponent)(`el-select`),m=(0,d.resolveComponent)(`el-divider`),h=(0,d.resolveComponent)(`el-checkbox`),g=(0,d.resolveComponent)(`el-space`),_=(0,d.resolveComponent)(`el-table-column`),v=(0,d.resolveComponent)(`el-table`),y=(0,d.resolveComponent)(`el-pagination`);return(0,d.openBlock)(),(0,d.createBlock)(Qe,null,{header:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,_t,[(0,d.createVNode)(r,{size:`small`,truncated:``,tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(n.value),1)]),_:1}),(0,d.createVNode)(g,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{tag:`b`},{default:(0,d.withCtx)(()=>[...t[4]||=[(0,d.createTextVNode)(`表单:`,-1)]]),_:1}),(0,d.createVNode)(c,{style:{width:`150px`},modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,filterable:``,clearable:``},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(a.value,(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(i,{label:t,value:t},null,8,[`label`,`value`]))),256))]),_:1},8,[`modelValue`]),(0,d.createVNode)(m,{direction:`vertical`}),(0,d.createVNode)(h,{modelValue:s.value,"onUpdate:modelValue":t[1]||=e=>s.value=e},{default:(0,d.withCtx)(()=>[...t[5]||=[(0,d.createTextVNode)(`首行表头`,-1)]]),_:1},8,[`modelValue`])]),_:1})])]),footer:(0,d.withCtx)(()=>[(0,d.createVNode)(y,{"page-size":(0,d.unref)(p).size,"onUpdate:pageSize":t[2]||=e=>(0,d.unref)(p).size=e,"current-page":(0,d.unref)(p).page,"onUpdate:currentPage":t[3]||=e=>(0,d.unref)(p).page=e,total:(0,d.unref)(u),size:`small`,background:``},null,8,[`page-size`,`current-page`,`total`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(v,{class:`m-table`,border:``,size:`small`,data:(0,d.unref)(f),"show-overflow-tooltip":``},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(l.value,(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(_,{label:e,prop:t},null,8,[`label`,`prop`]))),256))]),_:1},8,[`data`])]),_:1})}}}),yt=(0,d.defineComponent)({__name:`MImageViewer`,props:{url:{}},setup(e){return(t,n)=>{let r=(0,d.resolveComponent)(`el-image`);return(0,d.openBlock)(),(0,d.createBlock)(r,{style:{width:`100%`,"box-shadow":`0 0 10px #dddddd`,border:`1px solid #dddddd`},src:e.url,"preview-src-list":[e.url],fit:`scale-down`},null,8,[`src`,`preview-src-list`])}}}),bt={class:`pager`},xt=S((0,d.defineComponent)({__name:`MPdfViewer`,props:{url:{},watermark:{}},setup(e){let t=(0,d.defineAsyncComponent)(()=>import(`vue-pdf-embed`)),n=(0,d.ref)(!0),r=(0,d.ref)(),i=(0,d.ref)(1),a=(0,d.ref)(1),o={fontSize:30,fontWeight:`bolder`,color:`rgba(0,0,0,.05)`,fontFamily:`sans-serif`};function s(e){n.value=!1,i.value=e.numPages}return(c,l)=>{let u=(0,d.resolveComponent)(`el-text`),f=(0,d.resolveComponent)(`el-pagination`),p=(0,d.resolveComponent)(`el-space`),m=(0,d.resolveComponent)(`el-affix`),h=(0,d.resolveComponent)(`el-watermark`),g=(0,d.resolveDirective)(`loading`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(m,{offset:0,teleported:!1},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,bt,[(0,d.createVNode)(p,{size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(u,{type:`info`,tag:`b`,size:`small`},{default:(0,d.withCtx)(()=>[...l[1]||=[(0,d.createTextVNode)(` 页码: `,-1)]]),_:1}),(0,d.createVNode)(f,{background:``,"current-page":a.value,"onUpdate:currentPage":l[0]||=e=>a.value=e,layout:`prev, pager, next`,size:`small`,"page-count":i.value},null,8,[`current-page`,`page-count`])]),_:1})])]),_:1}),(0,d.withDirectives)(((0,d.openBlock)(),(0,d.createBlock)(h,{style:{border:`1px solid #cccccc`,"box-shadow":`3px 3px 10px #cccccc`},content:e.watermark||``,font:o,zIndex:20},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(t),{ref_key:`pdf`,ref:r,source:encodeURI(e.url),page:a.value,onLoaded:s},null,8,[`source`,`page`])]),_:1},8,[`content`])),[[g,n.value]])],64)}}}),[[`__scopeId`,`data-v-0df3a547`]]),St=(0,d.defineComponent)({__name:`MTxtView`,props:{url:{}},setup(e){let t=e,n=(0,d.ref)(``);(0,d.watch)(()=>t.url,r,{deep:!0,immediate:!0});async function r(){let e=await fetch(t.url);n.value=await e.text()}return(e,t)=>{let r=(0,d.resolveComponent)(`el-input`);return(0,d.openBlock)(),(0,d.createBlock)(r,{type:`textarea`,readonly:``,modelValue:n.value,"onUpdate:modelValue":t[0]||=e=>n.value=e,rows:10},null,8,[`modelValue`])}}}),Ct={};function wt(e,t){return` 不支持的文件格式 `}var Tt=S(Ct,[[`render`,wt]]);function Et(e){let{minio_url:t}=Q(),n=(0,d.computed)(()=>e.value?`${t.value}${e.value}`:``),r=[`.pdf`,`.jpg`,`.gif`,`.png`,`.jpeg`,`.xls`,`.xlsx`,`.csv`,`.txt`];return{ext:(0,d.computed)(()=>{if(!e.value)return``;let t=`.${e.value.split(`.`).pop()}`;return r.includes(t)?t:``}),name:(0,d.computed)(()=>{if(!e.value)return``;let t=e.value.indexOf(`/`);return e.value.substring(t+1)}),url:n}}var Dt=(0,d.defineComponent)({__name:`MFileView`,props:{path:{},baseURL:{},locked:{type:Boolean}},setup(e){let t=e,{ext:n,name:r,url:i}=Et((0,d.computed)(()=>t.path)),a=(0,d.computed)(()=>{switch(n.value){case`.xlsx`:case`.xls`:case`.csv`:return vt;case`.jpg`:case`.gif`:case`.png`:case`.jpeg`:return yt;case`.pdf`:return xt;case`.txt`:return St;default:return Tt}});return(e,t)=>{let n=(0,d.resolveComponent)(`el-text`),r=(0,d.resolveComponent)(`el-result`);return(0,d.unref)(i)?((0,d.openBlock)(),(0,d.createBlock)((0,d.resolveDynamicComponent)(a.value),{key:0,url:(0,d.unref)(i)},null,8,[`url`])):((0,d.openBlock)(),(0,d.createBlock)(r,{key:1,icon:`warning`},{title:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{size:`large`,tag:`b`},{default:(0,d.withCtx)(()=>[...t[0]||=[(0,d.createTextVNode)(` 无文件 `,-1)]]),_:1})]),_:1}))}}}),Ot={class:`justified`,style:{padding:`5px`,"text-align":`right`}},kt={style:{"text-align":`center`,padding:`10px 0 5px 0`}},At=(0,d.defineComponent)({__name:`DTCellEditor`,props:{manager:{}},emits:[`reload`],setup(e,{expose:t,emit:n}){let r=e,i=(0,d.ref)(),a=(0,d.ref)(),o=(0,d.ref)(null);function s(e,t){let n=t[e];o.value[e]!==n&&r.manager.save_one(o.value),c()}function c(){o.value={},i.value?.close(),a.value?.close()}function l(e,t,n){let{prop:r,tool:s,label:c}=e,l={id:t.id};l[r]=(0,g.cloneDeep)(t[r]),o.value=l;let d={row:t,field:e};if(n)i.value?.open(n,d);else{let{title:e,width:t,top:n}=u[s]||{};a.value?.open(d,{title:`${e} - ${c}`,width:t||400,top:n})}}let u={rich:{title:`富文本`,width:`800`},transfer:{title:`多选`,width:`600`},object:{title:`JSON`,width:`400`},file:{title:`文件`,width:`800`,top:10}};return t({open:l}),(t,n)=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)($,{ref_key:`dialogRef`,ref:a},{tool:(0,d.withCtx)(({data:{field:t,row:r}})=>[t.tool===`file`?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(Ge),{key:0,disabled:!t?.allow_edit,field:t,row:r,modelValue:o.value[t.prop],"onUpdate:modelValue":e=>o.value[t.prop]=e,onReload:n[0]||=t=>e.manager.reload()},null,8,[`disabled`,`field`,`row`,`modelValue`,`onUpdate:modelValue`])):((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,plain:``,icon:`save`,onClick:e=>s(t.prop,r),type:`success`},{default:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`保存 `,-1)]]),_:1},8,[`onClick`]))]),default:(0,d.withCtx)(({data:{field:{prop:e,tool:t,refer:n,allow_edit:r,format:{locked:i}},row:a}})=>[t===`rich`?((0,d.openBlock)(),(0,d.createBlock)(qe,{key:0,disabled:!r,modelValue:o.value[e],"onUpdate:modelValue":t=>o.value[e]=t},null,8,[`disabled`,`modelValue`,`onUpdate:modelValue`])):t===`object`?((0,d.openBlock)(),(0,d.createBlock)(J,{key:1,disabled:!r,modelValue:o.value[e],"onUpdate:modelValue":t=>o.value[e]=t},null,8,[`disabled`,`modelValue`,`onUpdate:modelValue`])):t===`transfer`?((0,d.openBlock)(),(0,d.createBlock)(q,{key:2,modelValue:o.value[e],"onUpdate:modelValue":t=>o.value[e]=t,disabled:!r,refer:n},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`,`refer`])):t===`file`?((0,d.openBlock)(),(0,d.createBlock)(Dt,{key:3,path:o.value[e],locked:i},null,8,[`path`,`locked`])):(0,d.createCommentVNode)(``,!0)]),_:1},512),(0,d.createVNode)(K,{ref_key:`popoverRef`,ref:i,width:`300px`},{default:(0,d.withCtx)(({data:{field:t,row:r}})=>[(0,d.createElementVNode)(`div`,Ot,[(0,d.createVNode)(w,{icon:`cancel`,onClick:c},{default:(0,d.withCtx)(()=>[...n[3]||=[(0,d.createTextVNode)(`取消`,-1)]]),_:1}),[`boolean`,`file`,`transfer`].includes(t.tool)?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,icon:`save`,onClick:e=>s(t.prop,r)},{default:(0,d.withCtx)(()=>[...n[4]||=[(0,d.createTextVNode)(`保存 `,-1)]]),_:1},8,[`onClick`]))]),(0,d.createElementVNode)(`div`,kt,[(0,d.createVNode)(Ye,{modelValue:o.value[t.prop],"onUpdate:modelValue":e=>o.value[t.prop]=e,field:t,row:r,onConfirm:e=>s(t.prop,r),onReload:n[1]||=t=>e.manager.reload()},null,8,[`modelValue`,`onUpdate:modelValue`,`field`,`row`,`onConfirm`])])]),_:1},512)],64))}}),jt=(0,d.defineComponent)({__name:`DTViews`,props:{entity:{},code:{},codes:{}},emits:[`update:code`],setup(e,{emit:t}){let n=e,r=t,{manager:i,loading:a}=U(`valar.MetaView`),o=(0,p.useVModel)(n,`code`,r),s=(0,d.ref)([]);return(0,d.onMounted)(()=>{i.values([`code`,`name`],{includes:{meta__entity:n.entity}}).then(e=>{let t=Object.fromEntries(n.codes.map(e=>[e,e.toUpperCase()]));e.forEach(({name:e,code:r})=>{n.codes.includes(r)&&(t[r]=e)}),s.value=Object.entries(t).map(([e,t])=>({label:t,value:e}))})}),(e,t)=>{let n=(0,d.resolveComponent)(`el-segmented`);return(0,d.openBlock)(),(0,d.createBlock)(n,{options:s.value,modelValue:(0,d.unref)(o),"onUpdate:modelValue":t[0]||=e=>(0,d.isRef)(o)?o.value=e:null},null,8,[`options`,`modelValue`])}}}),Mt={key:2,class:`small info`},Nt=(0,d.defineComponent)({__name:`DTCell`,props:{field:{},row:{},meta:{},collector:{}},emits:[`open`],setup(e,{emit:t}){let n=e,r=t;function i(e){e.stopPropagation(),e.preventDefault();let{collector:t,row:r}=n;t.clear(),t.add(r.id)}function a(e){i(e);let{field:t,row:a}=n;r(`open`,t,a)}let o={object:`code`,file:`file`,rich:`file-text`,transfer:`exchange`},s=(0,d.computed)(()=>{let{row:e,field:{prop:t,not_null:r}}=n,i=e[t];return r&&i==null}),c=(0,d.computed)(()=>{let{row:e,field:{prop:t,tool:r}}=n,i=o[n.field.tool],a=e[t];return i||(r===`icon`?a:null)}),l=(0,d.computed)(()=>{let{row:e,field:{prop:t,tool:r}}=n,i=o[n.field.tool],a=e[t];return i?(0,g.isEmpty)(a)?`info`:`primary`:`info`}),u=(0,d.computed)(()=>{let{row:e,field:{prop:t,domain:r,tool:i,refer:{label:a},format:{set:o,multiple:s}}}=n,c=e[t];if([`ManyToManyField`,`ManyToManyRel`,`ManyToOneRel`].includes(r))return(e[`${t}_set`]||[]).map(e=>e[a||`name`]).join(`;`);if([`OneToOneRel`,`OneToOneField`,`ForeignKey`].includes(r))return e[t.replace(`_id`,``)]?.[a||`name`];if([`BooleanField`].includes(r))return c==null?null:c?`是`:`否`;if([`CharField`].includes(r)){if(!c)return c;if(i===`set`)return s?`${c}`.split(`;`).map(e=>o[e]).join(`;`):o[c]||``}return c});return(t,n)=>{let r=(0,d.resolveComponent)(`el-tooltip`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[s.value?((0,d.openBlock)(),(0,d.createBlock)(r,{key:0,effect:`light`,placement:`right`},{content:(0,d.withCtx)(()=>[...n[3]||=[(0,d.createTextVNode)(`不能为空`,-1)]]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`warning`,shake:e.collector.has(e.row.id||0)},null,8,[`shake`])]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(w,{icon:c.value,type:l.value,"icon-size":`lg`,onDblclick:n[0]||=e=>i(e),onContextmenu:n[1]||=e=>i(e),onClick:n[2]||=e=>a(e)},null,8,[`icon`,`type`]),c.value?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,{key:1},[(0,d.createTextVNode)((0,d.toDisplayString)(u.value),1)],64)),e.field.unit?((0,d.openBlock)(),(0,d.createElementBlock)(`span`,Mt,(0,d.toDisplayString)(e.field.unit),1)):(0,d.createCommentVNode)(``,!0)],64)}}}),Pt=(0,d.defineComponent)({__name:`ViewCodePlugin`,props:{data:{},param:{},invoke:{type:Function}},setup(e){let t=e;function n(e){t.invoke(t.data.code,e)}let r=(0,d.computed)(()=>{let{data:e,param:n}=t;return e.code===n?.value?.code});return(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(w,{icon:r.value?`check-circle`:`circle`,type:r.value?`success`:`info`,"icon-size":`1x`,onClick:t[0]||=e=>n(e)},null,8,[`icon`,`type`]))}}),Ft=(0,d.defineComponent)({__name:`MetaSelect`,props:{modelValue:{},tree_only:{type:Boolean,default:!1},clearable:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},emits:[`update:modelValue`,`change`],setup(e,{emit:t}){let{post:n}=I(),r=(0,d.ref)(),i=e,a=t;function o(e){let t=r.value?.getCheckedNodes(!0)?.[0];s.value.is_tree=!!t?.data.is_tree;let n=e?s.value:{entity:null};a(`change`,n)}let s=(0,p.useVModel)(i,`modelValue`,a),c=(0,d.ref)([]);(0,d.watch)(()=>i.tree_only,l,{immediate:!0});function l(){n(`valar/metas`,{tree_only:i.tree_only}).then(e=>c.value=e)}let u={emitPath:!1,key:`value`};return(t,n)=>{let i=(0,d.resolveComponent)(`el-cascader`);return(0,d.openBlock)(),(0,d.createBlock)(i,{style:{width:`100%`},ref_key:`cascadeRef`,ref:r,modelValue:(0,d.unref)(s).entity,"onUpdate:modelValue":n[0]||=e=>(0,d.unref)(s).entity=e,options:c.value,disabled:e.disabled,props:u,"value-on-clear":null,"show-all-levels":!1,filterable:``,clearable:e.clearable,onChange:o,onVisibleChange:n[1]||=e=>e&&l()},{prefix:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`元:`,-1)]]),default:(0,d.withCtx)(({data:{model:e,name:t,icon:n}})=>[(0,d.createVNode)(O,(0,d.normalizeProps)((0,d.guardReactiveProps)({label:e,display:t,icon:n})),null,16)]),_:1},8,[`modelValue`,`options`,`disabled`,`clearable`])}}}),It=(0,d.defineComponent)({__name:`MetaNameInput`,props:{entity:{}},setup(e){let t=e,{manager:n}=U(`valar.Meta`),r=(0,d.ref)(),i=(0,d.ref)(),a=(0,d.computed)(()=>r.value?.name===i.value);(0,d.watch)(()=>t.entity,o,{immediate:!0});function o(){let e=t.entity;n.find_one({includes:{entity:e}}).then(e=>{r.value=e,i.value=e?.name||``})}function s(){let e=r.value?.id;e&&n.save_one({id:e,name:i.value}).then(o)}return(e,t)=>{let n=(0,d.resolveComponent)(`el-space`),o=(0,d.resolveComponent)(`el-input`);return r.value?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,modelValue:i.value,"onUpdate:modelValue":t[0]||=e=>i.value=e},{prefix:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createTextVNode)(` 元名称: `,-1)]]),suffix:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{size:0},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{disabled:a.value,bounce:!a.value,icon:`save`,"icon-size":`lg`,onClick:s,type:`success`},null,8,[`disabled`,`bounce`])]),_:1})]),_:1},8,[`modelValue`])):(0,d.createCommentVNode)(``,!0)}}}),Lt=(0,d.defineComponent)({__name:`MetaViewList`,props:{entity:{},code:{},locked:{type:Boolean}},emits:[`form`,`list`,`switch`],setup(e,{emit:t}){let n=e,r=(0,d.ref)(),i=(0,d.ref)({entity:n.entity,code:n.code});function a(){i.value.entity===n.entity?i.value.code=n.code:i.value.code=`default`}function o(){let{entity:e,code:t}=i.value;e&&t&&l(`switch`,e,t)}let s=(0,d.computed)(()=>{let e=[`entity`,`code`];return(0,g.isEqual)((0,g.pick)(i.value,e),(0,g.pick)(n,e))});function c(){i.value={entity:n.entity,code:n.code}}let l=t,u=(0,d.ref)(),f=(0,d.computed)(()=>({meta__entity:i.value.entity})),p=[{label:`当前`,width:50,fixed:`left`,component:Pt,param:i,callback(e){i.value.code=e}}],m=[{label:`权限管理`,type:`warning`,icon:`table-cells-row-lock`,handler:e=>l(`form`,e.meta.entity,e.code)},{label:`字段管理`,type:`primary`,icon:`table-cells-column-lock`,handler:e=>l(`list`,e.meta.entity,e.code)},{hide:!n.locked,label:`查看数据`,type:`info`,icon:`table`,handler:e=>{let{meta:{entity:t,tree:n},code:i}=e;r.value?.open({entity:t,code:i,tree:n,is_tree:!1})}}];return(t,n)=>{let l=(0,d.resolveComponent)(`el-switch`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(X,{ref_key:`tableRef`,ref:u,entity:`valar.MetaView`,code:`list`,includes:f.value,columns:p,buttons:m},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(Ft,{modelValue:i.value,"onUpdate:modelValue":n[0]||=e=>i.value=e,onChange:a},null,8,[`modelValue`]),(0,d.createVNode)(It,{entity:i.value.entity},null,8,[`entity`]),e.locked?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,onClick:c,disabled:s.value,type:`info`,icon:`refresh`},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`重置元视图 `,-1)]]),_:1},8,[`disabled`])),e.locked?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,onClick:o,disabled:s.value,type:`danger`,icon:`exchange`},{default:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`切换元视图 `,-1)]]),_:1},8,[`disabled`]))]),_:1},8,[`includes`]),(0,d.createVNode)($,{ref_key:`dialogRef`,ref:r,width:`800`},{header:(0,d.withCtx)(({data:e})=>[e.tree?((0,d.openBlock)(),(0,d.createBlock)(l,{key:0,modelValue:e.is_tree,"onUpdate:modelValue":t=>e.is_tree=t,"active-text":`树形`,"inactive-text":`表格`},null,8,[`modelValue`,`onUpdate:modelValue`])):(0,d.createCommentVNode)(``,!0)]),default:(0,d.withCtx)(({data:{is_tree:e,code:t,entity:n}})=>[e?((0,d.openBlock)(),(0,d.createBlock)(Z,{key:0,entity:n,code:t},null,8,[`entity`,`code`])):((0,d.openBlock)(),(0,d.createBlock)(X,{key:1,entity:n,code:t},null,8,[`entity`,`code`]))]),_:1},512)],64)}}}),Rt=(0,d.defineComponent)({__name:`CustomFields`,props:{options:{},entity:{},view_id:{}},setup(e,{expose:t}){let n=(0,d.ref)(),r=e,i=(0,d.ref)([]),{post:a}=I(),o={lazy:!0,leaf:`isLeaf`,multiple:!0,expandTrigger:`hover`,lazyLoad(e,t){let{level:n,data:i,pathNodes:o,pathValues:s}=e,{entity:c}=r,l=n?o.map(e=>i.entity):[],u=n?s:[];l.push(c),a(`/valar/get_custom_fields`,{entity:c,route:l}).then(e=>{e.forEach(e=>{let t=[...u,e.value].join(`__`);e.disabled=r.options.includes(t)}),t(e)})}};function s(){return(n.value?.getCheckedNodes(!0)||[]).map(e=>{let t=e.pathValues.join(`__`),n=e.pathLabels.join(`/`);return{view_id:r.view_id,prop:t,label:n,name:n,domain:`Custom`,tool:`none`}})}return t({getData:s}),(e,t)=>{let r=(0,d.resolveComponent)(`el-cascader`);return(0,d.openBlock)(),(0,d.createBlock)(r,{ref_key:`cascaderRef`,ref:n,modelValue:i.value,"onUpdate:modelValue":t[0]||=e=>i.value=e,props:o,clearable:``,size:`large`,style:{width:`100%`},"tag-effect":`plain`,"tag-type":`warning`},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(O,(0,d.mergeProps)(e,{icon:`leaf`,display:e.value}),null,16,[`display`])]),_:1},8,[`modelValue`])}}}),zt=(0,d.defineComponent)({__name:`ReferPlugin`,props:{data:{},param:{},invoke:{type:Function}},setup(e){let t=e,n=(0,d.computed)(()=>t.data?.refer.entity),r=(0,d.computed)(()=>{if(!t.data)return!0;let{tool:e,domain:n}=t.data;return!e||!n?!0:G.referred.includes(n)?!1:n!==`CharField`||![`select`,`cascade`,`tree`,`auto`].includes(e)}),i=(0,d.computed)(()=>r.value?`ban`:n.value?`link`:`unlink`),a=(0,d.computed)(()=>r.value?`info`:n.value?`success`:`danger`);function o(e){t.invoke(t.data,e)}return(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(w,{class:`full`,disabled:r.value,icon:i.value,type:a.value,onClick:t[0]||=e=>o(e)},{default:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createTextVNode)(`索引设置 `,-1)]]),_:1},8,[`disabled`,`icon`,`type`]))}}),Bt=(0,d.defineComponent)({__name:`ReferOption`,props:{refer:{},domain:{}},emits:[`update:refer`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`refer`,t);function i(e){return!r.value.entity||G.referred.includes(n.domain)&&e===`value`}let a={value:`取值字段`,label:`标签字段`,display:`展示字段`},o=(0,d.computed)(()=>r.value.entity||``),{manager:s}=U(o),{$message:c}=P(),l=(0,d.ref)();(0,d.watch)(o,async(e,t,n)=>{let r=!0;if(n(()=>{r=!1}),l.value=void 0,e)try{let e=await s.meta();r&&(l.value=e)}catch(e){r&&(console.error(`加载字段选项失败`,e),c.error(`字段选项加载失败,请重新选择元数据`))}},{immediate:!0});let u=(0,d.computed)(()=>l.value?Object.values(l.value.model).filter(({domain:e})=>!G.referred.includes(e||``)).map(({prop:e,label:t})=>({value:e,label:t,display:e})):[]);return(e,t)=>{let n=(0,d.resolveComponent)(`el-select`),o=(0,d.resolveComponent)(`el-form-item`),s=(0,d.resolveComponent)(`el-col`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(a,(e,t)=>(0,d.createVNode)(s,{span:8},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:e,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{filterable:``,clearable:t===`display`,disabled:i(t),"value-on-clear":``,modelValue:(0,d.unref)(r)[t],"onUpdate:modelValue":e=>(0,d.unref)(r)[t]=e},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(A,{items:u.value},null,8,[`items`])]),_:1},8,[`clearable`,`disabled`,`modelValue`,`onUpdate:modelValue`])]),_:2},1032,[`label`])]),_:2},1024)),64)}}}),Vt=(0,d.defineComponent)({__name:`TreeRootSelection`,props:{modelValue:{},entity:{},param:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),{manager:i}=U((0,d.computed)(()=>n.entity)),a=(0,d.ref)();function o(){i.tree({includes:{isLeaf:!1}}).then(e=>a.value=e.options)}(0,d.watch)(()=>n.entity,o,{immediate:!0});let s=(0,d.computed)(()=>{let{label:e,disabled:t,value:r}=n.param||{};return{emitPath:!1,label:e||`name`,disabled:t||`disabled`,value:r||`id`}});return(e,t)=>{let n=(0,d.resolveComponent)(`el-tree-select`);return(0,d.openBlock)(),(0,d.createBlock)(n,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":t[0]||=e=>(0,d.isRef)(r)?r.value=e:null,clearable:!0,style:{width:`100%`},filterable:``,"value-on-clear":0,data:a.value,props:s.value,"check-strictly":``,"check-on-click-node":``,"default-expand-all":``},{label:(0,d.withCtx)(({label:e,value:t})=>[(0,d.createTextVNode)((0,d.toDisplayString)(t?e:`ROOT`),1)]),default:(0,d.withCtx)(({data:e,node:t})=>[(0,d.createVNode)(O,{label:e.id?e[s.value.label]:`ROOT`,display:e[s.value.value],icon:t.expanded?`folder-open`:`folder`,type:`warning`},null,8,[`label`,`display`,`icon`])]),_:1},8,[`modelValue`,`data`,`props`])}}}),Ht=(0,d.defineComponent)({__name:`ReferEditor`,props:{refer:{},domain:{},tool:{}},emits:[`update:refer`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`refer`,t),i=(0,d.computed)(()=>{let{is_tree:e}=r.value;return e&&[`tree`,`cascade`].includes(n.tool)});return(t,n)=>{let a=(0,d.resolveComponent)(`el-form-item`),o=(0,d.resolveComponent)(`el-col`),s=(0,d.resolveComponent)(`el-checkbox`),c=(0,d.resolveComponent)(`el-row`);return(0,d.openBlock)(),(0,d.createBlock)(c,{gutter:10},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`元数据`,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(Ft,{modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null,disabled:e.domain!==`CharField`},null,8,[`modelValue`,`disabled`])]),_:1})]),_:1}),(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`是否多选`,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{border:``,style:{width:`100%`},disabled:``,modelValue:(0,d.unref)(r).multiple,"onUpdate:modelValue":n[1]||=e=>(0,d.unref)(r).multiple=e},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(r).multiple?`是`:`否`),1)]),_:1},8,[`modelValue`])]),_:1})]),_:1}),(0,d.createVNode)(Bt,{refer:(0,d.unref)(r),"onUpdate:refer":n[2]||=e=>(0,d.isRef)(r)?r.value=e:null,domain:e.domain},null,8,[`refer`,`domain`]),(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`检索条件(包含)`,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(J,{modelValue:(0,d.unref)(r).includes,"onUpdate:modelValue":n[3]||=e=>(0,d.unref)(r).includes=e,disabled:!(0,d.unref)(r).entity},null,8,[`modelValue`,`disabled`])]),_:1})]),_:1}),(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`检索条件(排除)`,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(J,{modelValue:(0,d.unref)(r).excludes,"onUpdate:modelValue":n[4]||=e=>(0,d.unref)(r).excludes=e,disabled:!(0,d.unref)(r).entity},null,8,[`modelValue`,`disabled`])]),_:1})]),_:1}),i.value&&(0,d.unref)(r).entity?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`跟节点`,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(Vt,{modelValue:(0,d.unref)(r).root,"onUpdate:modelValue":n[5]||=e=>(0,d.unref)(r).root=e,entity:(0,d.unref)(r).entity,param:(0,d.unref)(r)},null,8,[`modelValue`,`entity`,`param`])]),_:1})]),_:1})):(0,d.createCommentVNode)(``,!0),i.value?((0,d.openBlock)(),(0,d.createBlock)(o,{key:1,span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`严格遵循父子关系`,"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{border:``,disabled:!i.value,style:{width:`100%`},modelValue:(0,d.unref)(r).strict,"onUpdate:modelValue":n[6]||=e=>(0,d.unref)(r).strict=e},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(r).strict?`是`:`否`),1)]),_:1},8,[`disabled`,`modelValue`])]),_:1})]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1})}}}),Ut=(0,d.defineComponent)({__name:`ReferDialog`,props:{save:{type:Function}},setup(e,{expose:t}){let n=e,r=(0,d.ref)();function i(e){r.value?.open(e)}function a(e){let{refer:t,id:r}=e;r&&t&&n.save({id:r,refer:t})}return t({open:i}),(e,t)=>((0,d.openBlock)(),(0,d.createBlock)($,{ref_key:`referDialogRef`,ref:r,title:`索引设置`,confirm:a,width:`600`},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(Ht,{refer:e.refer,"onUpdate:refer":t=>e.refer=t,domain:e.domain,tool:e.tool},null,8,[`refer`,`onUpdate:refer`,`domain`,`tool`])]),_:1},512))}}),Wt=(0,d.defineComponent)({__name:`DateFormats`,props:{modelValue:{},tool:{},domain:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.computed)(()=>{switch(n.tool){case`date`:let e=[`date`,`year`,`week`,`month`];return n.domain===`CharField`&&e.unshift(`datetime`),e;case`daterange`:return[`monthrange`,`daterange`,`datetimerange`];case`dates`:return[`years`,`months`,`dates`];default:return[`date`]}}),a=(0,d.computed)(()=>Object.entries(W).filter(([e,t])=>i.value.includes(e)).map(([e,t])=>({label:t.label,value:e})));return(e,t)=>{let n=(0,d.resolveComponent)(`el-select`),i=(0,d.resolveComponent)(`el-form-item`),o=(0,d.resolveComponent)(`el-card`);return(0,d.openBlock)(),(0,d.createBlock)(o,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{label:`频度:`,"label-width":`55`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{modelValue:(0,d.unref)(r).frequency,"onUpdate:modelValue":t[0]||=e=>(0,d.unref)(r).frequency=e},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(A,{items:a.value},null,8,[`items`])]),_:1},8,[`modelValue`])]),_:1})]),_:1})}}}),Gt=(0,d.defineComponent)({__name:`FileFormats`,props:{modelValue:{},tool:{},domain:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.computed)(()=>n.tool===`image`?[`.jpg`,`.gif`,`.png`,`.jpeg`]:de);return(t,n)=>{let a=(0,d.resolveComponent)(`el-input-number`),o=(0,d.resolveComponent)(`el-form-item`),s=(0,d.resolveComponent)(`el-col`),c=(0,d.resolveComponent)(`el-checkbox`),l=(0,d.resolveComponent)(`el-option`),u=(0,d.resolveComponent)(`el-select`),f=(0,d.resolveComponent)(`el-row`),p=(0,d.resolveComponent)(`el-form`);return(0,d.openBlock)(),(0,d.createBlock)(p,{"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(f,{gutter:10},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:`预览宽度`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{style:{width:`100%`},modelValue:(0,d.unref)(r).width,"onUpdate:modelValue":n[0]||=e=>(0,d.unref)(r).width=e,min:0,step:1,"step-strictly":``,precision:0,"value-on-clear":null,"controls-position":`right`},{suffix:(0,d.withCtx)(()=>[...n[5]||=[(0,d.createTextVNode)(`px`,-1)]]),_:1},8,[`modelValue`])]),_:1})]),_:1}),(0,d.createVNode)(s,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:`预览高度`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{style:{width:`100%`},modelValue:(0,d.unref)(r).height,"onUpdate:modelValue":n[1]||=e=>(0,d.unref)(r).height=e,min:0,step:1,"step-strictly":``,precision:0,"value-on-clear":null,"controls-position":`right`},{suffix:(0,d.withCtx)(()=>[...n[6]||=[(0,d.createTextVNode)(`px`,-1)]]),_:1},8,[`modelValue`])]),_:1})]),_:1}),e.tool===`rich`?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,{key:0},[(0,d.createVNode)(s,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:`最大容量`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{style:{width:`100%`},modelValue:(0,d.unref)(r).maximum,"onUpdate:modelValue":n[2]||=e=>(0,d.unref)(r).maximum=e,min:1,max:100,step:1,"step-strictly":``,precision:0,"controls-position":`right`},{suffix:(0,d.withCtx)(()=>[...n[7]||=[(0,d.createTextVNode)(`Mb`,-1)]]),_:1},8,[`modelValue`])]),_:1})]),_:1}),(0,d.createVNode)(s,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:`禁止下载`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(c,{style:{width:`100%`},modelValue:(0,d.unref)(r).locked,"onUpdate:modelValue":n[3]||=e=>(0,d.unref)(r).locked=e,border:``},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(r).locked?`是`:`否`),1)]),_:1},8,[`modelValue`])]),_:1})]),_:1}),(0,d.createVNode)(s,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:`文件类型`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(u,{modelValue:(0,d.unref)(r).accept,"onUpdate:modelValue":n[4]||=e=>(0,d.unref)(r).accept=e,multiple:``,"collapse-tags":``,"collapse-tags-tooltip":``,filterable:``,clearable:``},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(i.value,e=>((0,d.openBlock)(),(0,d.createBlock)(l,{value:e,label:e},null,8,[`value`,`label`]))),256))]),_:1},8,[`modelValue`])]),_:1})]),_:1})],64))]),_:1})]),_:1})}}}),Kt=(0,d.defineComponent)({__name:`NumberFormats`,props:{modelValue:{},tool:{},domain:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`modelValue`,t),i=(0,d.computed)(()=>n.domain===`IntegerField`);return(e,t)=>{let n=(0,d.resolveComponent)(`el-input-number`),a=(0,d.resolveComponent)(`el-form-item`),o=(0,d.resolveComponent)(`el-col`),s=(0,d.resolveComponent)(`el-divider`),c=(0,d.resolveComponent)(`el-checkbox`),l=(0,d.resolveComponent)(`el-space`),u=(0,d.resolveComponent)(`el-row`),f=(0,d.resolveComponent)(`el-form`);return(0,d.openBlock)(),(0,d.createBlock)(f,{"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(u,{gutter:10},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`最小值`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{style:{width:`100%`},modelValue:(0,d.unref)(r).min,"onUpdate:modelValue":t[0]||=e=>(0,d.unref)(r).min=e,"controls-position":`right`,"value-on-clear":void 0,step:i.value?1:void 0,"step-strictly":i.value},null,8,[`modelValue`,`step`,`step-strictly`])]),_:1})]),_:1}),(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`最大值`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{style:{width:`100%`},modelValue:(0,d.unref)(r).max,"onUpdate:modelValue":t[1]||=e=>(0,d.unref)(r).max=e,"controls-position":`right`,"value-on-clear":void 0,step:i.value?1:void 0,"step-strictly":i.value},null,8,[`modelValue`,`step`,`step-strictly`])]),_:1})]),_:1}),(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`步长`},{label:(0,d.withCtx)(()=>[(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[t[5]||=(0,d.createTextVNode)(` 步长 `,-1),(0,d.createVNode)(s,{direction:`vertical`}),(0,d.createVNode)(c,{size:`small`,disabled:i.value,modelValue:(0,d.unref)(r).step_strictly,"onUpdate:modelValue":t[2]||=e=>(0,d.unref)(r).step_strictly=e},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(r).step_strictly?`严格步长`:`自由步长`),1)]),_:1},8,[`disabled`,`modelValue`])]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{style:{width:`100%`},modelValue:(0,d.unref)(r).step,"onUpdate:modelValue":t[3]||=e=>(0,d.unref)(r).step=e,"controls-position":`right`,min:+!!i.value,"value-on-clear":1,step:i.value?1:void 0,"step-strictly":i.value},null,8,[`modelValue`,`min`,`step`,`step-strictly`])]),_:1})]),_:1}),(0,d.createVNode)(o,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{label:`小数位`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{style:{width:`100%`},disabled:i.value,modelValue:(0,d.unref)(r).precision,"onUpdate:modelValue":t[4]||=e=>(0,d.unref)(r).precision=e,"controls-position":`right`,min:0,"step-strictly":``,step:1,"value-on-clear":void 0},null,8,[`disabled`,`modelValue`])]),_:1})]),_:1})]),_:1})]),_:1})}}}),qt=(0,d.defineComponent)({__name:`MappingEditor`,props:{modelValue:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t),r=(0,d.ref)([]);(0,d.onMounted)(()=>{let e=Object.entries(n.value||{});r.value=e.map(e=>({label:e[1],value:e[0]}))});function i(){let e=r.value.filter(e=>!!e.value).map(e=>[e.value,e.label]);n.value=Object.fromEntries(e)}function a(){r.value.unshift({label:``,value:``})}function o(e){r.value=r.value.filter(t=>!(0,g.isEqual)(e,t)),i()}return(e,t)=>{let n=(0,d.resolveComponent)(`el-table-column`),s=(0,d.resolveComponent)(`el-input`),c=(0,d.resolveComponent)(`el-table`);return(0,d.openBlock)(),(0,d.createBlock)(c,{class:`mapping-table`,size:`small`,data:r.value},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{type:`index`,label:`#`,align:`center`,"header-align":`center`}),(0,d.createVNode)(n,{label:`Value`},{default:(0,d.withCtx)(({row:e})=>[e?((0,d.openBlock)(),(0,d.createBlock)(s,{key:0,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,onChange:i},null,8,[`modelValue`,`onUpdate:modelValue`])):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(n,{label:`Label`},{default:(0,d.withCtx)(({row:e})=>[e?((0,d.openBlock)(),(0,d.createBlock)(s,{key:0,modelValue:e.label,"onUpdate:modelValue":t=>e.label=t,onChange:i},null,8,[`modelValue`,`onUpdate:modelValue`])):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(n,{type:`index`,label:`#`,align:`center`,"header-align":`center`},{header:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`plus-circle`,type:`success`,onClick:a})]),default:(0,d.withCtx)(({row:e})=>[(0,d.createVNode)(w,{icon:`trash`,type:`danger`,onClick:t=>o(e)},null,8,[`onClick`])]),_:1})]),_:1},8,[`data`])}}}),Jt=(0,d.defineComponent)({__name:`SetFormats`,props:{modelValue:{},tool:{},domain:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t);return(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(qt,{modelValue:(0,d.unref)(n).set,"onUpdate:modelValue":t[0]||=e=>(0,d.unref)(n).set=e},null,8,[`modelValue`]))}}),Yt=(0,d.defineComponent)({__name:`TextFormats`,props:{modelValue:{},tool:{},domain:{}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`modelValue`,t);return(e,t)=>{let r=(0,d.resolveComponent)(`el-input-number`),i=(0,d.resolveComponent)(`el-form-item`),a=(0,d.resolveComponent)(`el-col`),o=(0,d.resolveComponent)(`el-option`),s=(0,d.resolveComponent)(`el-select`),c=(0,d.resolveComponent)(`el-row`),l=(0,d.resolveComponent)(`el-form`);return(0,d.openBlock)(),(0,d.createBlock)(l,{"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(c,{gutter:10},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{label:`最大长度`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{style:{width:`100%`},modelValue:(0,d.unref)(n).maxlength,"onUpdate:modelValue":t[0]||=e=>(0,d.unref)(n).maxlength=e,min:0,max:(0,d.unref)(n).maxlength_original||void 0,"step-strictly":``,step:1},null,8,[`modelValue`,`max`])]),_:1})]),_:1}),(0,d.createVNode)(a,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{label:`类型`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{modelValue:(0,d.unref)(n).type,"onUpdate:modelValue":t[1]||=e=>(0,d.unref)(n).type=e},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{value:`text`,label:`输入框`}),(0,d.createVNode)(o,{value:`textarea`,label:`文本框`})]),_:1},8,[`modelValue`])]),_:1})]),_:1})]),_:1})]),_:1})}}}),Xt=(0,d.defineComponent)({__name:`FormatEditor`,props:{format:{},tool:{},domain:{}},emits:[`update:format`],setup(e,{emit:t}){let n=e,r=(0,p.useVModel)(n,`format`,t),i=(0,d.computed)(()=>{switch(n.tool){case`text`:case`textarea`:return Yt;case`set`:return Jt;case`number`:return Kt;case`date`:case`daterange`:case`dates`:return Wt;case`rich`:case`image`:case`file`:return Gt}});return(t,n)=>i.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.resolveDynamicComponent)(i.value),{key:0,ref:`form`,tool:e.tool,domain:e.domain,modelValue:(0,d.unref)(r),"onUpdate:modelValue":n[0]||=e=>(0,d.isRef)(r)?r.value=e:null},null,8,[`tool`,`domain`,`modelValue`])):(0,d.createCommentVNode)(``,!0)}}),Zt=(0,d.defineComponent)({__name:`FormatDialog`,props:{save:{type:Function}},setup(e,{expose:t}){let n=e,r=(0,d.ref)();function i(e){r.value?.open(e)}function a(e){let{format:t,id:r}=e;r&&t&&n.save({id:r,format:t})}return t({open:i}),(e,t)=>((0,d.openBlock)(),(0,d.createBlock)($,{ref_key:`formatDialogRef`,ref:r,title:`格式设置`,confirm:a},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(Xt,{format:e.format,"onUpdate:format":t=>e.format=t,tool:e.tool,domain:e.domain},null,8,[`format`,`onUpdate:format`,`tool`,`domain`])]),_:1},512))}}),Qt=(0,d.defineComponent)({__name:`FormatPlugin`,props:{data:{},param:{},invoke:{type:Function}},setup(e){let t=e,n=(0,d.computed)(()=>{if(!t.data)return`ban`;let{tool:e,domain:n}=t.data;switch(e){case`text`:return`quote-left-alt`;case`textarea`:return`scroll`;case`number`:return`sliders-h`;case`set`:return`list-ul`;case`date`:return n===`DateTimeField`?`ban`:`calendar-day`;case`daterange`:return`calendar-week`;case`dates`:return`calendar-alt`;case`rich`:case`image`:case`file`:return`file`;default:return`ban`}}),r=(0,d.computed)(()=>n.value==`ban`),i=(0,d.computed)(()=>r.value?`info`:`warning`);function a(e){t.invoke(t.data,e)}return(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(w,{class:`full`,disabled:r.value,icon:n.value,type:i.value,onClick:t[0]||=e=>a(e)},{default:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createTextVNode)(`索引设置 `,-1)]]),_:1},8,[`disabled`,`icon`,`type`]))}}),$t=(0,d.defineComponent)({__name:`MetaFieldList`,props:{entity:{},code:{}},setup(e){let t=e,n=(0,d.ref)(),r=(0,d.ref)(),i=(0,d.ref)(),a=(0,d.ref)(),o=(0,d.ref)(),s=(0,d.ref)(),{manager:c}=U(t.entity),l=(0,d.ref)();function u(){c.meta(t.code).then(e=>l.value=e)}(0,d.onMounted)(u);let f=(0,d.computed)(()=>({view_id:l.value?.view_id||0})),p=[{label:`索引设置`,component:zt,callback:e=>{s.value?.open(e)},width:100},{label:`格式设置`,component:Qt,callback:e=>o.value?.open(e),width:100}];function m(e){i.value?.manager.save_one(e)}let{post:h}=I();async function _(e){if(!l.value)return;let{values:t}=e,{entity:n,code:r,view_id:a}=l.value,o=await h(`/valar/add_fields`,{view_id:a,props:t,entity:n,code:r});i.value?.manager.reload(o),u()}function v(){if(!l.value)return;let{model:e,fields:t}=l.value,r=(0,g.difference)(Object.keys(e),t.map(e=>e.prop)).map(t=>{let{prop:n,label:r,domain:i}=e[t];return{label:r,value:n,display:`${n} @ ${i}`}});n.value?.open({options:r,values:[]})}function y(e){let t=a.value?.getData();t?.length&&i.value?.api.sync_save_many(t).then(e=>{i.value?.manager.reload(e)})}function b(){if(!l.value)return;let{entity:e,code:t,view_id:n}=l.value;h(`/valar/load_customs`,{entity:e,code:t}).then(t=>r.value?.open({options:t,entity:e,view_id:n}))}return(e,t)=>{let c=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(X,{ref_key:`tableRef`,ref:i,unrestricted:``,entity:`valar.MetaField`,code:`tool`,codes:[`tool`,`rest`,`table`,`form`],includes:f.value,columns:p},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`plus-circle`,size:`small`,type:`success`,onClick:v},{default:(0,d.withCtx)(()=>[...t[0]||=[(0,d.createTextVNode)(`添加字段 `,-1)]]),_:1}),(0,d.createVNode)(w,{icon:`table-columns`,size:`small`,type:`warning`,onClick:b},{default:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createTextVNode)(`自定义字段 `,-1)]]),_:1})]),_:1},8,[`includes`]),(0,d.createVNode)($,{ref_key:`insertRef`,ref:n,title:`添加字段`,confirm:_},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(c,{modelValue:e.values,"onUpdate:modelValue":t=>e.values=t,multiple:``,clearable:``,filterable:``,size:`large`,"tag-type":`success`,tagEffect:`plain`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(A,{items:e.options},null,8,[`items`])]),_:2},1032,[`modelValue`,`onUpdate:modelValue`])]),_:1},512),(0,d.createVNode)($,{ref_key:`customRef`,ref:r,title:`自定义字段`,confirm:y},{default:(0,d.withCtx)(({data:{options:e,entity:t,view_id:n}})=>[(0,d.createVNode)(Rt,{ref_key:`customSelectRef`,ref:a,options:e,entity:t,view_id:n},null,8,[`options`,`entity`,`view_id`])]),_:1},512),(0,d.createVNode)(Ut,{ref_key:`referDialog`,ref:s,save:m},null,512),(0,d.createVNode)(Zt,{ref_key:`formatDialog`,ref:o,save:m},null,512)],64)}}}),en=(0,d.defineComponent)({__name:`MetaViewForm`,props:{entity:{},code:{}},setup(e,{expose:t}){let n=e,r=(0,d.ref)(),{manager:i,loading:a}=U(`valar.MetaView`),o=(0,d.ref)([]),s=(0,d.ref)({}),c=(0,d.ref)();(0,d.onMounted)(()=>{i.meta(`edit`).then(e=>{o.value=e.fields||[];let{entity:t,code:r}=n,a={includes:{meta__entity:t,code:r||`default`}};return i.find_one(a)}).then(e=>{e&&(s.value=e)})});async function l(){let e=s.value.id;if(c.value==null||!e)return!1;if((0,g.isEmpty)(c.value))return!0;let t={...c.value,id:e};return await i.save_one(t)}return t({save:l}),(e,t)=>{let n=(0,d.resolveDirective)(`loading`);return(0,d.withDirectives)(((0,d.openBlock)(),(0,d.createBlock)(Y,{ref_key:`formRef`,ref:r,original:s.value,fields:o.value,modelValue:c.value,"onUpdate:modelValue":t[0]||=e=>c.value=e},null,8,[`original`,`fields`,`modelValue`])),[[n,(0,d.unref)(a)]])}}}),tn=S((0,d.defineComponent)({__name:`MetaPanel`,props:{entity:{},code:{},lock:{type:Boolean}},emits:[`update:entity`,`update:code`],setup(e,{expose:t,emit:n}){let r=e,i=(0,d.ref)(),a=(0,d.ref)(),o=(0,d.ref)(),s=(0,d.ref)(),c=n,l=(0,p.useVModel)(r,`entity`,c),u=(0,p.useVModel)(r,`code`,c);function f(e,t){o.value?.open({entity:e,code:t})}function m(e,t){i.value?.open({entity:e,code:t})}async function h(){return await s.value?.save()}function g(e,t){l.value=e,u.value=t}return t({openViewForm:f,openFieldList:m}),(t,n)=>{let r=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[e.lock?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(r,{key:0,direction:`vertical`,alignment:`start`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`table-cells-row-lock`,type:`warning`,onClick:n[0]||=e=>f((0,d.unref)(l),(0,d.unref)(u))},{default:(0,d.withCtx)(()=>[...n[3]||=[(0,d.createTextVNode)(`权限管理 `,-1)]]),_:1}),(0,d.createVNode)(w,{icon:`table-cells-column-lock`,type:`primary`,onClick:n[1]||=e=>{m((0,d.unref)(l),(0,d.unref)(u))}},{default:(0,d.withCtx)(()=>[...n[4]||=[(0,d.createTextVNode)(`字段管理 `,-1)]]),_:1}),(0,d.createVNode)(w,{icon:`cubes`,type:`danger`,onClick:n[2]||=e=>{a.value?.open()}},{default:(0,d.withCtx)(()=>[...n[5]||=[(0,d.createTextVNode)(`视图管理 `,-1)]]),_:1})]),_:1})),(0,d.createVNode)($,{ref_key:`viewFormRef`,ref:o,width:`600`,title:`权限管理`,confirm:h},{default:(0,d.withCtx)(({data:{entity:e,code:t}})=>[(0,d.createVNode)(en,{ref_key:`viewRef`,ref:s,entity:e,code:t},null,8,[`entity`,`code`])]),_:1},512),(0,d.createVNode)($,{ref_key:`fieldListRef`,ref:i,width:`1050`,title:`字段管理`},{default:(0,d.withCtx)(({data:{entity:e,code:t}})=>[(0,d.createVNode)($t,{entity:e,code:t},null,8,[`entity`,`code`])]),_:1},512),(0,d.createVNode)($,{ref_key:`viewListRef`,ref:a,width:`1000`,title:`视图管理`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(Lt,{entity:(0,d.unref)(l),code:(0,d.unref)(u),onForm:f,onList:m,onSwitch:g},null,8,[`entity`,`code`])]),_:1},512)],64)}}}),[[`__scopeId`,`data-v-60f998c8`]]),nn={class:`justified`},rn=(0,d.defineComponent)({__name:`MetaFieldForm`,props:{field_id:{}},setup(e){let t=e,{manager:n}=U(`valar.MetaField`),r=(0,d.ref)(),i=(0,d.ref)(),a=(0,d.ref)(),o=(0,d.ref)();function s(e,t){a.value?.open(e)}function c(e,t){o.value?.open(e)}let l=[{label:`工具`,value:`tool`},{label:`权限`,value:`rest`},{label:`表格`,value:`table`},{label:`表单`,value:`form`}],u=(0,d.ref)(`tool`),f=(0,d.ref)([]);(0,d.watch)(u,()=>n.meta(u.value).then(e=>f.value=e.fields),{immediate:!0});let p=(0,d.computed)(()=>!(0,g.isEmpty)(i.value)),m=()=>{n.fetch(t.field_id).then(e=>r.value=e)};(0,d.onMounted)(m);function h(e){(0,g.isEmpty)(e)||n.save_one(e).then(m)}return(e,t)=>{let n=(0,d.resolveComponent)(`el-segmented`),m=(0,d.resolveComponent)(`el-col`),g=(0,d.resolveComponent)(`el-row`),_=(0,d.resolveComponent)(`el-card`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(_,{shadow:`never`},(0,d.createSlots)({header:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,nn,[(0,d.createVNode)(n,{disabled:p.value,options:l,modelValue:u.value,"onUpdate:modelValue":t[0]||=e=>u.value=e},null,8,[`disabled`,`modelValue`]),(0,d.createVNode)(w,{plain:``,type:`success`,icon:`save`,disabled:!p.value,bounce:p.value,size:`default`,onClick:t[1]||=e=>h(i.value)},{default:(0,d.withCtx)(()=>[...t[3]||=[(0,d.createTextVNode)(`保存 `,-1)]]),_:1},8,[`disabled`,`bounce`])])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(Y,{original:r.value,fields:f.value,modelValue:i.value,"onUpdate:modelValue":t[2]||=e=>i.value=e},null,8,[`original`,`fields`,`modelValue`])]),_:2},[u.value===`tool`&&r.value&&!p.value?{name:`footer`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(g,{gutter:20},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(m,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(zt,{data:r.value,invoke:c},null,8,[`data`])]),_:1}),(0,d.createVNode)(m,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(Qt,{data:r.value,invoke:s},null,8,[`data`])]),_:1})]),_:1})]),key:`0`}:void 0]),1024),(0,d.createVNode)(Zt,{ref_key:`formatDialog`,ref:a,save:h},null,512),(0,d.createVNode)(Ut,{ref_key:`referDialog`,ref:o,save:h},null,512)],64)}}});function an(){let e=(0,d.ref)(!1);function t(){return e.value=!0,new Promise(t=>{document.addEventListener(`paste`,n=>{t(n.clipboardData?.getData(`text/plain`)||``),e.value=!1},{once:!0})})}async function n(){e.value=!0;try{if(!navigator.clipboard)throw Error(`浏览器不支持剪贴板`);return await navigator.clipboard.readText()}finally{e.value=!1}}return{openPaster:t,pending:e,getClipboardData:n,inactive:(0,d.computed)(()=>!navigator.clipboard)}}var on=(0,d.defineComponent)({__name:`ClipUploader`,props:{fields:{},referred:{type:Boolean}},emits:[`success`],setup(e,{emit:t}){let n=e,{inactive:r,pending:i,getClipboardData:a,openPaster:o}=an(),s=t,{$message:c}=P();function l(){c.info(`剪切板已打开`),o().then(m)}(0,d.onMounted)(l);async function u(){try{let e=await a();m(e)}catch(e){console.error(`读取剪贴板失败`,e),c.error(`读取剪贴板失败,请检查浏览器权限`)}}let{textToJson:f}=Qn();function p(e){return n.fields.length>0&&n.fields.every(t=>e[t.prop]===t.label)}let m=e=>{let t=n.fields.map(e=>e.prop),r=f(e,t),i=r[0];if(!i){c.warning(`剪贴板没有数据`);return}let a=p(i)?r.slice(1):r;a.length?(s(`success`,a),c.success(`数据已粘贴`)):c.warning(`只有表头,没有可导入的数据`)};return(t,n)=>{let a=(0,d.resolveComponent)(`el-result`),o=(0,d.resolveComponent)(`el-tag`),s=(0,d.resolveComponent)(`el-card`),c=(0,d.resolveComponent)(`el-col`),f=(0,d.resolveComponent)(`el-button`),p=(0,d.resolveComponent)(`el-row`);return(0,d.unref)(r)?((0,d.openBlock)(),(0,d.createBlock)(a,{key:0,title:`浏览器不支持剪切板`,icon:`warning`})):((0,d.openBlock)(),(0,d.createBlock)(p,{key:1,gutter:10},{default:(0,d.withCtx)(()=>[(0,d.unref)(i)?((0,d.openBlock)(),(0,d.createBlock)(c,{key:0,style:{margin:`5px 0 10px 0`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{effect:`light`,closable:!1,shadow:`never`,align:`center`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{size:`large`,icon:`spinner`,spin:``,type:`primary`,class:`block`,style:{margin:`20px 0 10px 0`}},{default:(0,d.withCtx)(()=>[n[3]||=(0,d.createTextVNode)(` 等待 `,-1),(0,d.createVNode)(o,{effect:`plain`},{default:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`Ctrl + V`,-1)]]),_:1}),n[4]||=(0,d.createTextVNode)(` 中... `,-1)]),_:1}),e.referred?((0,d.openBlock)(),(0,d.createBlock)(C,{key:0,icon:`book`,type:`info`,class:`block`},{default:(0,d.withCtx)(()=>[...n[5]||=[(0,d.createTextVNode)(` 字典字段使用索引值 `,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1})]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(c,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(f,{disabled:(0,d.unref)(i),onClick:n[0]||=e=>l(),type:`primary`,class:`full`,plain:``,size:`large`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`clipboard`},{default:(0,d.withCtx)(()=>[...n[6]||=[(0,d.createTextVNode)(`开启剪切板`,-1)]]),_:1})]),_:1},8,[`disabled`])]),_:1}),(0,d.createVNode)(c,{span:12},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(f,{disabled:!(0,d.unref)(i),onClick:n[1]||=e=>u(),type:`info`,plain:``,class:`full`,dashed:``,size:`large`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`hand-pointer`},{default:(0,d.withCtx)(()=>[...n[7]||=[(0,d.createTextVNode)(`手动读取`,-1)]]),_:1})]),_:1},8,[`disabled`])]),_:1})]),_:1}))}}}),sn=(0,d.defineComponent)({__name:`FileUploader`,props:{fields:{},sheet_name:{},referred:{type:Boolean}},emits:[`success`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.ref)(),{readBookFromFile:a,zip:o}=$n(),{$message:s}=P();async function c(e){i.value?.clearFiles();let t=e?.raw;if(t)try{let e=await a(t,!0),i=e[n.sheet_name];if(i||=Object.values(e)[0],!i||!i.columns||!i.headers)r(`success`,[]);else{let e=[];i.headers.forEach(t=>{let r=n.fields.find(e=>e.label===t);r&&e.push(r.prop)});let t=i.data.map(t=>o(e,t)).filter(e=>!(0,g.isEmpty)(e));r(`success`,t)}}catch{s.error(`读取文件失败`)}}return(t,n)=>{let r=(0,d.resolveComponent)(`el-text`),a=(0,d.resolveComponent)(`el-upload`);return(0,d.openBlock)(),(0,d.createBlock)(a,{ref_key:`uploadRef`,ref:i,limit:1,multiple:!1,"show-file-list":!1,accept:`.xls,.xlsx`,"auto-upload":!1,drag:``,"on-change":c,class:`full`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{class:`block`,size:`large`,tag:`b`,style:{margin:`20px 0 10px 0`}},{default:(0,d.withCtx)(()=>[n[1]||=(0,d.createTextVNode)(` 拖拽文件或点击 `,-1),(0,d.createVNode)(w,{type:`primary`,icon:`folder-open`,size:`default`},{default:(0,d.withCtx)(()=>[...n[0]||=[(0,d.createTextVNode)(`打开`,-1)]]),_:1})]),_:1}),e.referred?((0,d.openBlock)(),(0,d.createBlock)(C,{key:0,icon:`book`,type:`info`,class:`block`},{default:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(` 字典字段使用索引值 `,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1},512)}}}),cn={class:`justified`,style:{"margin-bottom":`10px`}},ln=(0,d.defineComponent)({__name:`UploadControl`,props:{raw:{},fields:{},file_name:{},sheet_name:{},valid:{type:[Boolean,null]},referred:{type:Boolean},options:{}},emits:[`update:raw`,`update:valid`,`update:referred`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.ref)(),a=(0,p.useVModel)(n,`raw`,r),o=(0,p.useVModel)(n,`valid`,r),s=(0,p.useVModel)(n,`referred`,r);(0,d.watch)(a,()=>o.value=null);let c=(0,d.computed)(()=>!!n.fields.filter(e=>G.referred.includes(e.domain)).length),{$confirm:l,$message:u}=P();function f(){l.info(`是否清空已上传的数据?`).then(()=>{a.value=[]})}let{copy:m}=(0,p.useClipboard)(),{writeSheets:h}=$n();function g(e){let t=n.fields.filter(e=>e).map(e=>e.label);if(e===`clip`)m(t.join(` `)).then(()=>u.success(`表头已复制到剪切板,请粘贴到Excel文件`));else{let e=`【数据上传模板】${n.file_name}`;h(e,{data:[],headers:t,name:n.sheet_name})}}function _(e){a.value=e,i.value?.close()}return(t,n)=>{let r=(0,d.resolveComponent)(`el-space`),l=(0,d.resolveComponent)(`el-popover`),u=(0,d.resolveComponent)(`el-checkbox`),p=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createElementVNode)(`div`,cn,[(0,d.createVNode)(r,{spacer:`|`,size:3},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(l,null,{reference:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`file-excel`,size:`default`,type:`info`},{default:(0,d.withCtx)(()=>[...n[8]||=[(0,d.createTextVNode)(`模板 `,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{spacer:`|`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`copy`,type:`info`,onClick:n[0]||=e=>g(`clip`)},{default:(0,d.withCtx)(()=>[...n[6]||=[(0,d.createTextVNode)(`复制 `,-1)]]),_:1}),(0,d.createVNode)(w,{icon:`download`,type:`info`,onClick:n[1]||=e=>g(`file`)},{default:(0,d.withCtx)(()=>[...n[7]||=[(0,d.createTextVNode)(`下载 `,-1)]]),_:1})]),_:1})]),_:1}),(0,d.createVNode)(l,null,{reference:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`upload`,size:`default`,type:`primary`,disabled:!!(0,d.unref)(a).length},{default:(0,d.withCtx)(()=>[...n[11]||=[(0,d.createTextVNode)(`上传 `,-1)]]),_:1},8,[`disabled`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{spacer:`|`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`clipboard`,type:`primary`,onClick:n[2]||=e=>i.value?.open(`clip`)},{default:(0,d.withCtx)(()=>[...n[9]||=[(0,d.createTextVNode)(`粘贴 `,-1)]]),_:1}),(0,d.createVNode)(w,{icon:`file-upload`,type:`primary`,onClick:n[3]||=e=>i.value?.open(`file`)},{default:(0,d.withCtx)(()=>[...n[10]||=[(0,d.createTextVNode)(`文件 `,-1)]]),_:1})]),_:1})]),_:1}),(0,d.unref)(a).length?((0,d.openBlock)(),(0,d.createBlock)(w,{key:0,icon:`trash`,type:`danger`,size:`default`,onClick:f},{default:(0,d.withCtx)(()=>[...n[12]||=[(0,d.createTextVNode)(`清空 `,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(r,{spacer:`|`,size:3},{default:(0,d.withCtx)(()=>[c.value?((0,d.openBlock)(),(0,d.createBlock)(u,{key:0,disabled:!!(0,d.unref)(a).length,border:``,modelValue:(0,d.unref)(s),"onUpdate:modelValue":n[4]||=e=>(0,d.isRef)(s)?s.value=e:null},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(T,null,{default:(0,d.withCtx)(()=>[...n[13]||=[(0,d.createTextVNode)(`使用索引值上传`,-1)]]),_:1})]),_:1},8,[`disabled`,`modelValue`])):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(p,{modelValue:(0,d.unref)(o),"onUpdate:modelValue":n[5]||=e=>(0,d.isRef)(o)?o.value=e:null,disabled:!(0,d.unref)(a).length,clearable:``,"value-on-clear":null,style:{width:`200px`},placeholder:`请选择校验状态...`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(A,{items:e.options},null,8,[`items`])]),_:1},8,[`modelValue`,`disabled`])]),_:1})]),(0,d.createVNode)($,{ref_key:`uploaderRef`,ref:i,title:`数据上传`,width:`350`},{default:(0,d.withCtx)(({data:t})=>[t===`file`?((0,d.openBlock)(),(0,d.createBlock)(sn,{key:0,fields:e.fields,sheet_name:e.sheet_name,referred:(0,d.unref)(s),onSuccess:_},null,8,[`fields`,`sheet_name`,`referred`])):(0,d.createCommentVNode)(``,!0),t===`clip`?((0,d.openBlock)(),(0,d.createBlock)(on,{key:1,fields:e.fields,referred:(0,d.unref)(s),onSuccess:_},null,8,[`fields`,`referred`])):(0,d.createCommentVNode)(``,!0)]),_:1},512)],64)}}}),un=(0,d.defineComponent)({__name:`UploadDictionary`,props:{field:{}},setup(e){let t=e,{results:n,total:r,pager:i}=gt((0,d.computed)(()=>t.field.values));return(e,t)=>{let a=(0,d.resolveComponent)(`el-table-column`),o=(0,d.resolveComponent)(`el-pagination`),s=(0,d.resolveComponent)(`el-table`);return(0,d.openBlock)(),(0,d.createBlock)(s,{data:(0,d.unref)(n),size:`small`,"show-overflow-tooltip":``,border:``,class:`m-table`},{append:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{"page-size":(0,d.unref)(i).size,"onUpdate:pageSize":t[0]||=e=>(0,d.unref)(i).size=e,"page-count":(0,d.unref)(i).page,"onUpdate:pageCount":t[1]||=e=>(0,d.unref)(i).page=e,total:(0,d.unref)(r),size:`small`,background:``,style:{"border-top":`1px solid #eee`,padding:`5px 15px`}},null,8,[`page-size`,`page-count`,`total`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{type:`index`,label:`#`,"header-align":`center`,align:`center`},{default:(0,d.withCtx)(({$index:e})=>[(0,d.createVNode)(T,{type:`info`,class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e),1)]),_:2},1024)]),_:1}),(0,d.createVNode)(a,{prop:`value`,label:`索引值`,width:`80`,align:`center`}),(0,d.createVNode)(a,{prop:`label`,label:`展示值`})]),_:1},8,[`data`])}}}),dn=(0,d.defineComponent)({__name:`DictDialog`,setup(e,{expose:t}){let{copy:n}=(0,p.useClipboard)(),{$message:r}=P(),i=(0,d.ref)();function a(e){let t=e.values.map(e=>Object.values(e).join(` `)).join(`\r
|
|
2
|
+
`);n(t).then(()=>r.success(`字典已复制到剪切板,请粘贴到Excel文件`))}function o(e){i.value?.open(e)}return t({open:o}),(e,t)=>{let n=(0,d.resolveComponent)(`el-text`),r=(0,d.resolveComponent)(`el-tag`),o=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)($,{ref_key:`dialogRef`,ref:i,width:`500`},{header:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(n,null,{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)(`数据字典:`+(0,d.toDisplayString)(e.label),1)]),_:2},1024)]),tool:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(o,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`copy`,type:`primary`,onClick:t=>a(e)},{default:(0,d.withCtx)(()=>[...t[0]||=[(0,d.createTextVNode)(`复制`,-1)]]),_:1},8,[`onClick`]),e.hasEmpty?((0,d.openBlock)(),(0,d.createBlock)(r,{key:0,effect:`plain`,size:`small`,type:`danger`},{default:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createElementVNode)(`span`,{class:`small`},`发现空值`,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0),e.isDuplicate?((0,d.openBlock)(),(0,d.createBlock)(r,{key:1,effect:`plain`,size:`small`,type:`warning`},{default:(0,d.withCtx)(()=>[...t[2]||=[(0,d.createElementVNode)(`span`,{class:`small`},`发现重复值`,-1)]]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:2},1024)]),default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(un,{field:e},null,8,[`field`])]),_:1},512)}}});function fn(e){if(!/^\d{4}-\d{2}-\d{2}$/.test(e))return!1;let t=new Date(e+`T00:00:00.000Z`);return Number.isFinite(t.getTime())&&t.toISOString().slice(0,10)===e}function pn(e){return/^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$/.test(e)}function mn(e){let[t,n,...r]=e.split(` `);return!!t&&!!n&&!r.length&&fn(t)&&pn(n)}function hn(e,t){let n=(0,d.computed)(()=>{let n=e.value.map(e=>{let n=e.values,r=n.length?Object.fromEntries(n.map(e=>t.value?[String(e.value),String(e.label)]:[String(e.label),String(e.value)]).reverse()):{};return[e.prop,{...e,mapping:r}]});return Object.fromEntries(n)});function r(e,r){let i=n.value[e];if(!i)return{$valid:`${e}字段缺失`};let{domain:a,not_null:o}=i;if(!r&&o)return{$valid:`${i.label}字段不能为空`};if(!r)return{value:null,label:``};if(G.referred.includes(a)){let e=G.multiple.includes(a),{mapping:n}=i;if(e){if(t.value){let e=r.split(`;`),t=e.filter(e=>!n[e]),i=t.length?`索引 ${t} 不在字典中`:void 0,a=e.filter(e=>!t.includes(e));return{value:a,$valid:i,label:a.map(e=>n[e]).join(`;`)}}{let e=r.split(`;`),t=e.filter(e=>!n[e]),i=t.length?`${t} 不在字典中`:void 0;return{value:e.filter(e=>!t.includes(e)).map(e=>n[e]),$valid:i,label:r}}}if(t.value){let e=n[r],t=e?void 0:`索引 ${r} 不在字典中`;return{value:e?r:null,$valid:t,label:e??r}}{let e=n[r];return{value:e,$valid:e?void 0:`${r} 不在字典中`,label:r}}}if([`IntegerField`,`BigIntegerField`,`BigAutoField`,`FloatField`,`SmallIntegerField`,`DecimalField`].includes(a)){let e=r.trim(),t=a!==`FloatField`,n=t?/^[+-]?\d+$/:/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/,i=Number(e),o=a===`FloatField`?parseFloat(r):parseInt(r);return!n.test(e)||!Number.isFinite(i)||t&&!Number.isSafeInteger(i)?{value:null,label:r,$valid:t?`请输入安全范围内的整数`:`请输入有效数值`}:{value:o,label:o}}if(a===`BooleanField`)return[`true`,`false`,`TRUE`,`FALSE`,`1`,`0`,`T`,`F`,`是`,`否`,`YES`,`NO`,`yes`,`no`].includes(r)?{value:[`true`,`TRUE`,`1`,`T`,`是`,`yes`,`YES`].includes(r),label:r}:{value:null,label:r,$valid:`非布尔型`};if(a===`JSONField`)try{return{value:JSON.parse(r),label:r}}catch{return{value:null,label:r,$valid:`非JSON`}}if([`TimeField`,`DateField`,`DateTimeField`].includes(a)){let e=r.trim();if(mn(e)){let[t=``,n=``]=e.split(` `);a===`DateField`&&(e=t),a===`TimeField`&&(e=n)}return(a===`DateField`?fn(e):a===`TimeField`?pn(e):mn(e))?{value:e,label:e}:{value:null,label:r,$valid:`日期或时间格式错误`}}return{value:r,label:r}}return{parser:r}}var gn={style:{height:`200px`},class:`h-center center`},_n={key:0},vn={key:1},yn=(0,d.defineComponent)({__name:`UploadTable`,props:{dict:{},is_update:{type:Boolean},id:{type:Boolean},sort:{type:Boolean},keys:{},validator:{type:Function}},setup(e,{expose:t}){let n=e,r=(0,d.ref)(),i=(0,d.ref)(),a=(0,d.ref)(null),o=(0,d.ref)(!1),s=(0,d.ref)([]);function c(e){let{row:t,column:{property:n}}=e;return t[n]?.$valid?`upload-invalid`:``}function l(e,t,n,r){let{property:a}=t,o=e[a];o?.$valid&&i.value?.open(r,o.$valid)}let u=(0,d.computed)(()=>s.value.map((e,t)=>{let r,i=Object.entries(e).map(([e,t])=>{let n=_(e,t);return n.$valid&&!r&&(r=`字段校验错误`),[e,n]}),a=Object.fromEntries(i);return a.$index=t+1,a.$valid=n.validator?.(e)||r,a})),f=(0,d.computed)(()=>{let e=u.value.length,t=u.value.map(e=>+(e.$valid==null)).reduce((e,t)=>e+t,0),n=e-t;return[{label:`校验成功`,value:!0,display:t,type:`success`,icon:`check`},{label:`校验失败`,value:!1,display:n,type:`danger`,icon:`remove`}]}),{results:p,pager:m,total:h}=gt((0,d.computed)(()=>a.value==null?u.value:u.value.filter(e=>a.value===(e.$valid==null)))),g=(0,d.computed)(()=>{let e=n.dict.fields.filter(e=>n.keys.includes(e.prop)),{id:t,sort:r}=n;return t&&e.unshift(v),r&&e.unshift(y),e}),{parser:_}=hn(g,o),v={label:`ID`,prop:`id`,domain:`BigAutoField`,values:[],isDuplicate:!1,not_null:!0,hasEmpty:!1,ref_label:`name`},y={label:`SORT`,prop:`sort`,domain:`BigIntegerField`,values:[],isDuplicate:!1,not_null:!0,hasEmpty:!1,ref_label:`name`},{$confirm:b,$message:x}=P();function S(){return f.value.find(e=>e.value===!1)?.display??0?(x.warning(`存在未通过校验的数据,请调整.`),!1):u.value.map(e=>{let t=[];return Object.entries(e).forEach(([e,n])=>{n&&typeof n==`object`&&n.value!=null&&t.push([e,n.value])}),Object.fromEntries(t)})}return t({getData:S}),(t,n)=>{let u=(0,d.resolveComponent)(`el-table-column`),_=(0,d.resolveComponent)(`el-tooltip`),v=(0,d.resolveComponent)(`el-text`),y=(0,d.resolveComponent)(`el-pagination`),b=(0,d.resolveComponent)(`el-table`),x=(0,d.resolveComponent)(`el-result`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(ln,{fields:g.value,file_name:e.dict.meta_name,sheet_name:e.dict.view_name,raw:s.value,"onUpdate:raw":n[0]||=e=>s.value=e,valid:a.value,"onUpdate:valid":n[1]||=e=>a.value=e,referred:o.value,"onUpdate:referred":n[2]||=e=>o.value=e,options:f.value},null,8,[`fields`,`file_name`,`sheet_name`,`raw`,`valid`,`referred`,`options`]),g.value.length?((0,d.openBlock)(),(0,d.createBlock)(b,{key:0,data:(0,d.unref)(p),border:``,size:`small`,"cell-class-name":c,onCellClick:l},{empty:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,gn,[(0,d.createVNode)(C,{icon:`info-circle`,size:`large`,"icon-size":`lg`},{default:(0,d.withCtx)(()=>[...n[5]||=[(0,d.createTextVNode)(` 请务必使用模板上传数据 `,-1)]]),_:1})])]),append:(0,d.withCtx)(()=>[(0,d.createVNode)(y,{"page-size":(0,d.unref)(m).size,"onUpdate:pageSize":n[3]||=e=>(0,d.unref)(m).size=e,"current-page":(0,d.unref)(m).page,"onUpdate:currentPage":n[4]||=e=>(0,d.unref)(m).page=e,total:(0,d.unref)(h),size:`small`,background:``,style:{"border-top":`1px solid #eee`,padding:`5px 15px`}},null,8,[`page-size`,`current-page`,`total`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(u,{type:`index`,width:`50`,align:`center`,"header-align":`center`,label:`#`},{default:(0,d.withCtx)(({row:e})=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.$index),1)]),_:1}),((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(g.value,e=>((0,d.openBlock)(),(0,d.createBlock)(u,{prop:e.prop},{header:(0,d.withCtx)(()=>[(0,d.createVNode)(v,{truncated:``,size:`small`},{default:(0,d.withCtx)(()=>[e.values.length?((0,d.openBlock)(),(0,d.createBlock)(_,{key:0,disabled:!e.hasEmpty&&!e.isDuplicate},{content:(0,d.withCtx)(()=>[e.hasEmpty?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,_n,`索引存在空值`)):(0,d.createCommentVNode)(``,!0),e.isDuplicate?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createElementBlock)(`div`,vn,`索引存在重复值`))]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:`book`,type:o.value?`warning`:`info`,onClick:t=>r.value?.open(e)},null,8,[`type`,`onClick`])]),_:2},1032,[`disabled`])):(0,d.createCommentVNode)(``,!0),(0,d.createTextVNode)(` `+(0,d.toDisplayString)(e.label),1)]),_:2},1024)]),default:(0,d.withCtx)(({row:t})=>[(0,d.createVNode)(v,{truncated:``,style:{color:`inherit!important`},class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(t[e.prop]?.label),1)]),_:2},1024)]),_:2},1032,[`prop`]))),256))]),_:1},8,[`data`])):((0,d.openBlock)(),(0,d.createBlock)(x,{key:1,title:`请至少选择一个字段`,icon:`warning`})),(0,d.createVNode)(dn,{ref_key:`dictRef`,ref:r},null,512),(0,d.createVNode)(K,{ref_key:`invalidRef`,ref:i,width:`80`,placement:`right`},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(T,{class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e),1)]),_:2},1024)]),_:1},512)],64)}}}),bn=(0,d.defineComponent)({__name:`UploadSwitcher`,props:{id:{type:Boolean},sort:{type:Boolean},is_update:{type:Boolean}},emits:[`update:id`,`update:sort`,`update:is_update`],setup(e,{emit:t}){let n=e,r=t,i=(0,p.useVModel)(n,`id`,r),a=(0,p.useVModel)(n,`sort`,r),o=(0,p.useVModel)(n,`is_update`,r);function s(e){i.value=e,a.value=!1}return(e,t)=>{let n=(0,d.resolveComponent)(`el-switch`),r=(0,d.resolveComponent)(`el-checkbox`),c=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(c,{spacer:`|`,style:{"margin-right":`25px`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{modelValue:(0,d.unref)(o),"onUpdate:modelValue":t[0]||=e=>(0,d.isRef)(o)?o.value=e:null,"active-text":`更新`,"inactive-text":`新增`,size:`small`,onChange:s},null,8,[`modelValue`]),(0,d.createVNode)(r,{size:`small`,modelValue:(0,d.unref)(i),"onUpdate:modelValue":t[1]||=e=>(0,d.isRef)(i)?i.value=e:null,disabled:(0,d.unref)(o),onChange:t[2]||=e=>a.value=!1},{default:(0,d.withCtx)(()=>[...t[4]||=[(0,d.createTextVNode)(`扩展ID `,-1)]]),_:1},8,[`modelValue`,`disabled`]),(0,d.createVNode)(r,{size:`small`,modelValue:(0,d.unref)(a),"onUpdate:modelValue":t[3]||=e=>(0,d.isRef)(a)?a.value=e:null,disabled:!(0,d.unref)(i)},{default:(0,d.withCtx)(()=>[...t[5]||=[(0,d.createTextVNode)(`扩展SORT `,-1)]]),_:1},8,[`modelValue`,`disabled`])]),_:1})}}}),xn=(0,d.defineComponent)({__name:`MUploader`,emits:[`confirm`],setup(e,{expose:t,emit:n}){let r=(0,d.ref)(),i=(0,d.ref)(),a=n,{post:o}=I();function s(e){let t=i.value?.getData();return t&&a(`confirm`,t),t}function c(e,t){o(`valar/get_dictionary/${e}/${t}`).then(e=>{let t=e.fields.map(e=>{let{label:t,prop:n,not_null:r}=e;return{label:t,value:n,disabled:r,display:n}}),n=t.map(e=>e.value);r.value?.open({dict:e,is_update:!1,id:!1,sort:!1,options:t,keys:n})})}return t({open:c}),(e,t)=>{let n=(0,d.resolveComponent)(`el-text`),a=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createBlock)($,{ref_key:`dialogRef`,ref:r,title:`数据上传`,width:`1100`,confirm:s},{header:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(n,null,{default:(0,d.withCtx)(()=>[...t[0]||=[(0,d.createTextVNode)(`数据上传:`,-1)]]),_:1}),(0,d.createVNode)(a,{style:{width:`250px`},modelValue:e.keys,"onUpdate:modelValue":t=>e.keys=t,multiple:``,"max-collapse-tags":1,"collapse-tags":``,clearable:``,"tag-effect":`plain`,placeholder:`请选择字段...`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(A,{items:e.options},null,8,[`items`])]),_:2},1032,[`modelValue`,`onUpdate:modelValue`])]),tool:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(bn,{id:e.id,"onUpdate:id":t=>e.id=t,sort:e.sort,"onUpdate:sort":t=>e.sort=t,is_update:e.is_update,"onUpdate:is_update":t=>e.is_update=t},null,8,[`id`,`onUpdate:id`,`sort`,`onUpdate:sort`,`is_update`,`onUpdate:is_update`])]),default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(yn,{ref_key:`tableRef`,ref:i,dict:e.dict,is_update:e.is_update,id:e.id,sort:e.sort,keys:e.keys},null,8,[`dict`,`is_update`,`id`,`sort`,`keys`])]),_:1},512)}}}),X=(0,d.defineComponent)({__name:`DataTable`,props:{disable_tree:{type:Boolean},title:{},single:{type:Boolean},form_width:{},form_height:{},table_width:{},table_height:{},table_size:{},codes:{},size:{},page:{},beforeReload:{},validator:{},convertor:{},entity:{},code:{default:`default`},unrestricted:{type:Boolean},disabled:{type:Boolean},beforeInit:{},orders:{},conditions:{},includes:{},excludes:{},buttons:{},columns:{}},setup(e,{expose:t}){let n=e,r=(0,d.ref)(n.code||`default`),i=(0,d.ref)(n.entity);(0,d.watch)(()=>[n.entity,n.code],()=>{r.value=n.code,i.value=n.entity});function a(){x.value?.open()}function o(e){k.save_many(e)}function s(e,t){b.value.open(e,t)}let c=(0,d.ref)({type:`table`,size:n.size||10,page:n.page||1}),l=(0,d.computed)(()=>({...n,code:r.value,entity:i.value})),u=(0,d.ref)(),f=(0,d.ref)(),m=(0,d.ref)(),h=(0,d.ref)(),_=(0,d.ref)(),v=(0,d.ref)(),y=(0,d.ref)(),b=(0,d.ref)(),x=(0,d.ref)(),{account:S}=F(),{meta:w,response:E,orders:D,conditions:O,manager:k,api:A,ticking:j,loading:ee,error:te,finder:M,collector:N}=me(l,c),ne=(0,d.ref)(0);function I(e){ne.value=e}let{columns:re}=nr((0,d.computed)(()=>n.columns||[]),r),L=(0,d.computed)(()=>S.value?.is_admin||n.unrestricted);async function R(e=!1){try{if(e){let t=await k.insert_one({}),n=[t],r={is_insert:e,items:n,count:n.length};if(t)return h.value?.open(r)}else{let t=await k.fetch(...N.value),n={is_insert:e,items:t,count:t.length};if(t.length)return h.value?.open(n)}}catch{ie.error(`创建临时数据失败`)}}async function z(e){let{is_insert:t,items:n}=e,r=n[0];t&&r&&await k.delete_one(r.id),await k.reload()}async function B(e){return _.value?.saveData()}let{writeSheets:V}=$n(),{copy:H}=(0,p.useClipboard)(),{$message:ie}=P();function ae(e){k.find().then(t=>{let n=Object.fromEntries(w.value.fields.filter(e=>e.allow_download).map(e=>[e.prop,e.label])),r=Object.keys(n),i=Object.values(n),a=t.map(e=>r.map(t=>e[t])),o={data:a,columns:r,headers:i,name:w.value.name};if(e)V(w.value.title,o);else{let e=[i,...a].map(e=>e.join(` `)).join(`\r
|
|
3
|
+
`);H(e).then(()=>ie.success(`数据已拷贝至剪切板`))}})}function oe(){k.delete_many([...N.value])}async function se(){m.value?.open(i.value,r.value)}function ce(e){v.value?.open(e,{},{placement:`right`})}function le(e){f.value?.open(e)}function ue(e){N.value.clear();let t=e.prop,n={},r=D.value[t];r==null?n[t]=1:r===1?n[t]=-1:n.sort=-1,D.value=n}function U(){N.value.size?N.value.clear():N.value=new Set(E.value.results.map(e=>e.id))}function de(e,t){y.value?.open(e,t)}function W(e,t){t?M.value[e]=t:delete M.value[e],y.value?.close()}function G({row:{id:e}}){let t=[`row-id-${e}`,`sortable`];return N.value.has(e)&&t.push(`selection`),t.join(` `)}function fe(e){let{row:t,column:n}=e,{property:r,type:i}=n,a=w.value?.fields.find(e=>e.prop===r);if(i===`index`){if(t.$message)return`invalid`}else if(a?.not_null&&t[r]==null)return`invalid`;return``}function pe(e,t){t.preventDefault(),t.stopPropagation()}function he(e,t,n,r){r.preventDefault(),r.stopPropagation();let i=e.id;N.value.clear(),N.value.add(i);let{property:a}=t;if(a&&w.value.control.allow_edit_on_cell){let t=w.value?.fields.find(e=>e.prop===a);t?.allow_edit&&!_e.includes(t.tool)&&b.value?.open(t,e,r)}}function ge(e,t,n,r){let{property:i}=t;r.preventDefault(),r.stopPropagation();let a=e.id;N.value.clear(),N.value.add(a),console.log(i,`cell-dbclick`),w.value.control.allow_edit&&R()}let _e=[`object`,`file`,`rich`,`transfer`];function ve(e,t,r,i){i.preventDefault(),i.stopPropagation();let{property:a}=t;w.value.fields.find(e=>e.prop===a)?.tool;let o=e.id;n.single?(N.value.clear(),N.value.add(o)):N.value.has(o)?N.value.delete(o):N.value.add(o)}let{createSortable:ye}=nt(u,k.sorting);return(0,d.watch)(()=>E.value.results,(e,t)=>{let n=!!w.value.control.allow_edit_on_sort&&(0,g.isEqual)(D.value,{sort:-1});ye(E.value.results,n)},{deep:!0}),t({api:A,manager:k,getSelection:()=>[...N.value].map(e=>E.value.mapping[e]),getMeta:()=>w.value||null,getResponse:()=>E.value}),(t,n)=>{let l=(0,d.resolveComponent)(`el-space`),p=(0,d.resolveComponent)(`el-table-column`),g=(0,d.resolveComponent)(`el-text`),S=(0,d.resolveComponent)(`el-table`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(Qe,{ref:`wrapperRef`,loading:(0,d.unref)(ee),ticking:(0,d.unref)(j)},{header:(0,d.withCtx)(()=>[(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[e.codes?((0,d.openBlock)(),(0,d.createBlock)(jt,{key:0,entity:e.entity,code:r.value,"onUpdate:code":n[0]||=e=>r.value=e,codes:e.codes},null,8,[`entity`,`code`,`codes`])):(0,d.createCommentVNode)(``,!0),(0,d.renderSlot)(t.$slots,`default`,{entity:i.value,code:r.value},()=>[e.codes?.length?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(T,{key:0,tag:`b`,size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.title||(0,d.unref)(w).title),1)]),_:1}))])]),_:3}),(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(t.$slots,`tool`,{entity:i.value,code:r.value}),(0,d.createVNode)(rt,{disable_tree:e.disable_tree,unrestricted:L.value,collector:(0,d.unref)(N),control:(0,d.unref)(w).control,meta:(0,d.unref)(w),onDownload:ae,onRemove:oe,onSave:R,onUpload:se,onTree:a},null,8,[`disable_tree`,`unrestricted`,`collector`,`control`,`meta`])]),_:3})]),footer:(0,d.withCtx)(({width:e})=>[(0,d.createVNode)(lt,{size:c.value.size,"onUpdate:size":n[1]||=e=>c.value.size=e,page:c.value.page,"onUpdate:page":n[2]||=e=>c.value.page=e,total:(0,d.unref)(E).total,width:e},null,8,[`size`,`page`,`total`,`width`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(S,{class:`m-table`,ref_key:`tableRef`,ref:u,border:``,fit:``,"row-key":`id`,"show-overflow-tooltip":``,"highlight-current-row":!1,"scrollbar-always-on":!1,height:e.table_height||`auto`,size:e.table_size||`small`,data:(0,d.unref)(E).results,"tooltip-options":(0,d.unref)(it),onCellClick:ve,onCellDblclick:ge,onCellContextmenu:he,onHeaderContextmenu:pe,"row-class-name":G,"cell-class-name":fe},{empty:(0,d.withCtx)(()=>[(0,d.unref)(te)?((0,d.openBlock)(),(0,d.createBlock)(g,{key:0,type:`danger`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(te)),1)]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(g,{type:`info`},{default:(0,d.withCtx)(()=>[...n[7]||=[(0,d.createTextVNode)(`无数据`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(at,{unrestricted:L.value,collector:(0,d.unref)(N),size:(0,d.unref)(E).results.length,onToggle:U,onMeta:ce},null,8,[`unrestricted`,`collector`,`size`]),((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)((0,d.unref)(w).fields,t=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[t.hide_on_table?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(p,{key:0,prop:t?.prop,label:t?.label,width:t.column_width?Math.max(t.column_width,90):`auto`,align:t.align,fixed:t.fixed,"header-align":`left`,"min-width":120},{header:(0,d.withCtx)(()=>[(0,d.createVNode)(st,{field:t,finder:(0,d.unref)(M),orders:(0,d.unref)(D),unrestricted:L.value,includes:e.includes,onSort:ue,onSearch:de,onMeta:le},null,8,[`field`,`finder`,`orders`,`unrestricted`,`includes`])]),default:(0,d.withCtx)(({row:e})=>[(0,d.createVNode)(Nt,{row:e,field:t,meta:(0,d.unref)(w),collector:(0,d.unref)(N),onOpen:s},null,8,[`row`,`field`,`meta`,`collector`])]),_:2},1032,[`prop`,`label`,`width`,`align`,`fixed`]))],64))),256)),((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)((0,d.unref)(re),e=>((0,d.openBlock)(),(0,d.createBlock)(p,{label:e.label,align:e.align||`center`,fixed:e.fixed||`right`,width:e.width||`auto`},{default:(0,d.withCtx)(({row:t})=>[(0,d.createVNode)(et,{data:t,column:e,collector:(0,d.unref)(N)},null,8,[`data`,`column`,`collector`])]),_:2},1032,[`label`,`align`,`fixed`,`width`]))),256)),e.buttons?.length?((0,d.openBlock)(),(0,d.createBlock)(p,{key:0,align:`center`,fixed:`right`,width:ne.value,"show-overflow-tooltip":!1},{header:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`screwdriver-wrench`})]),default:(0,d.withCtx)(({row:t})=>[(0,d.createVNode)(tt,{buttons:e.buttons,data:t,collector:(0,d.unref)(N),code:r.value,onWidth:I},null,8,[`buttons`,`data`,`collector`,`code`])]),_:1},8,[`width`])):(0,d.createCommentVNode)(``,!0)]),_:1},8,[`height`,`size`,`data`,`tooltip-options`])]),_:3},8,[`loading`,`ticking`]),(0,d.createVNode)($,{ref_key:`fieldRef`,ref:f,title:`元数据:字段`,width:`500`,onClosed:n[3]||=e=>(0,d.unref)(k).init()},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(rn,{field_id:e.id},null,8,[`field_id`])]),_:1},512),(0,d.createVNode)(K,{ref_key:`metaRef`,ref:v,onHide:(0,d.unref)(k).init},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(tn,{entity:i.value,"onUpdate:entity":n[4]||=e=>i.value=e,code:r.value,"onUpdate:code":n[5]||=e=>r.value=e},null,8,[`entity`,`code`])]),_:1},8,[`onHide`]),(0,d.createVNode)(xn,{ref_key:`uploadRef`,ref:m,onConfirm:o},null,512),(0,d.createVNode)(K,{ref_key:`searchRef`,ref:y,width:`250px`},{default:(0,d.withCtx)(({data:t})=>[(0,d.createVNode)(pt,{field:t,finder:(0,d.unref)(M),includes:e.includes,onConfirm:W,onCancel:n[6]||=e=>y.value?.close()},null,8,[`field`,`finder`,`includes`])]),_:1},512),(0,d.createVNode)($,{ref_key:`saveDialogRef`,ref:h,confirm:B,cancel:z,width:`550`},{header:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(mt,{data:e},null,8,[`data`])]),default:(0,d.withCtx)(({data:{items:e,is_insert:t,count:n}})=>[(0,d.createVNode)(ht,{ref_key:`saveFormRef`,ref:_,items:e,is_insert:t,meta:(0,d.unref)(w),count:n,manager:(0,d.unref)(k)},null,8,[`items`,`is_insert`,`meta`,`count`,`manager`])]),_:1},512),(0,d.createVNode)(At,{ref_key:`cellRef`,ref:b,manager:(0,d.unref)(k)},null,8,[`manager`]),(0,d.createVNode)($,{title:`树形展示`,ref_key:`treeDialogRef`,ref:x},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(Z,{entity:i.value,code:r.value,disable_table:``,"expand-all":``},null,8,[`entity`,`code`])]),_:1},512)],64)}}}),Sn=(0,d.defineComponent)({__name:`DTreeTablePlugin`,props:{data:{},param:{},invoke:{type:Function}},setup(e){return(t,n)=>e.data.isLeaf?((0,d.openBlock)(),(0,d.createBlock)(C,{key:0,type:`success`,icon:`leaf`})):((0,d.openBlock)(),(0,d.createBlock)(w,{key:1,"icon-size":`lg`,icon:`folder`,type:`warning`,onClick:n[0]||=t=>e.invoke(e.data,t)}))}}),Cn=(0,d.defineComponent)({__name:`DTreeTable`,props:{entity:{},code:{},id:{},mapping:{}},setup(e){let t=e,n=(0,d.ref)(t.id||0),r=(0,d.computed)(()=>{let{mapping:e}=t,r=e[n.value],i=[];for(;r;)i.push(r),r=r?.pid==null?null:e[r.pid];return i.reverse()}),i=[{label:`节点`,fixed:`left`,width:50,component:Sn,callback(e){n.value=e.id||0}}];return(t,a)=>{let o=(0,d.resolveComponent)(`el-text`),s=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createBlock)(X,{ref:`tableRef`,entity:e.entity,code:e.code,includes:{pid:n.value},columns:i,disable_tree:``},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{spacer:`/`,size:3},{default:(0,d.withCtx)(()=>[((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(r.value,(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(w,{icon:`folder`,type:`warning`,disabled:t===r.value.length-1,onClick:t=>n.value=e.id||0},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{size:`small`,type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.id?e.name:`ROOT`),1)]),_:2},1024)]),_:2},1032,[`disabled`,`onClick`]))),256))]),_:1})]),_:1},8,[`entity`,`code`,`includes`])}}}),wn={style:{padding:`10px`}},Tn={class:`justified full`,style:{"padding-right":`10px`}},Z=(0,d.defineComponent)({__name:`DataTree`,props:{disable_table:{type:Boolean},title:{},single:{type:Boolean},width:{},height:{},tree_size:{},label:{default:`name`},expandAll:{type:Boolean},root:{},beforeReload:{},validator:{},convertor:{},entity:{},code:{},unrestricted:{type:Boolean},disabled:{type:Boolean},beforeInit:{},orders:{},conditions:{},includes:{},excludes:{},buttons:{},columns:{}},emits:[`node-click`],setup(e,{expose:t,emit:n}){let r=e,i=n,a=(0,d.ref)(r.code||`default`),o=(0,d.ref)(r.entity),s=(0,d.ref)({type:`tree`,root:r.root}),{meta:c,response:l,manager:u,api:f,loading:p,ticking:m,error:h,finder:_,collector:v,model:y}=me((0,d.computed)(()=>({...r,code:a.value,entity:o.value})),s),{columns:b}=nr((0,d.computed)(()=>r.columns||[]),a),x=(0,d.ref)(),S=(0,d.ref)(),C=(0,d.ref)(),E=(0,d.ref)(),D=(0,d.computed)(()=>c.value.fields.find(e=>e.prop===r.label)),{$confirm:O}=P(),k=(0,d.ref)(``),A=(0,d.computed)(()=>j.value.length?`square-caret-down`:`square-caret-right`),j=(0,d.computed)(()=>{let e=[];return Object.values(y.value.mapping).forEach(t=>{let{id:n,children:r}=t;r?.length&&n&&x.value?.getNode(n)?.expanded&&e.push(n)}),e}),ee=(0,d.computed)(()=>Object.values(y.value.mapping).filter(e=>e.id&&e.children?.length).map(e=>e.id));function te(){j.value.length===ee.value.length?ee.value.forEach(e=>{let t=x.value?.getNode(e);t&&(t.expanded=!1)}):ee.value.forEach(e=>{let t=x.value?.getNode(e);t&&(t.expanded=!0)})}function M(){x.value?.filter(k.value)}function N(e,t,n){let i=t[r.label];return i&&e?i.includes(e):!0}function F(){if(S.value?.close(),v.value.size>1)return;let e=[...v.value][0]??s.value.root??0,t=y.value.mapping[e];if(t){let n=ne(t).map(e=>e[r.label]||`@root`);C.value?.open({path:n,pid:e,names:[]})}}function ne(e){let t=[e],n=e;for(;;){let e=n?.pid,r=y.value.mapping[e];if(!r)break;t.push(r),n=r}return t.reverse()}function I(e){let t=[...e.children||[]];return e.children?.forEach(e=>{e.children?.length&&t.push(...I(e))}),t}function re(e){let{names:t,pid:n}=e,i=t.map(e=>Object.fromEntries([[`pid`,n],[r.label,e],[`isLeaf`,!0]]));u.save_many(i),S.value?.close(),C.value?.close()}function L(){let e=[...v.value].map(e=>y.value.mapping[e]?.isLeaf),t=new Set(e);if(t.size!==1)return;let n=![...t][0],r=[...v.value].map(e=>({id:e,isLeaf:n}));u.save_many(r),S.value?.close()}function R(e=0){S.value?.close(),E.value?.open({id:e})}function z(){S.value?.close();let e=[...v.value],t=!1;e.forEach(n=>{let r=y.value.mapping[n];if(!r)return;let i=I(r);i.length&&(t=!0),e.push(...i.map(e=>e.id))});let n=e.length,r=n?t?`是否删除当前节点及其子节点?共 ${n} 条数据`:`是否删除 ${n} 条数据?`:`是否清空数据?`;O.info(r).then(()=>{u.delete_many(e)})}function B(e,t,n,a){a.preventDefault(),a.stopPropagation(),i(`node-click`,e);let{id:o,children:s}=e;if(!o)return;let c=[...v.value].filter(e=>!y.value.mapping[e]?.children?.length),l=new Set(c);if(v.value=l,s?.length){let t=x.value?.getNode(o);t&&(t.expanded?(0,g.intersection)(I(e).map(e=>e.id),[...v.value]).length||(t.expanded=!1):t.expanded=!0)}else l.has(o)?l.delete(o):(r.single&&l.clear(),l.add(o))}function V(e,t){e.preventDefault(),e.stopPropagation();let n=t.id;v.value.clear(),v.value.add(n);let{allow_edit_on_cell:r,allow_remove:i}=c.value.control;(r||i)&&S.value?.open(e,t)}function H(e){if(e.id&&v.value.has(e.id))return`selection`}function ie(e,t){let n=e.data.id;v.value.clear(),n&&v.value.add(n)}function ae(e,t,n){let r=e.data,i=t.data,a=i.isLeaf,o=!!i.children?.length,s=r.id,c=i.id;return!a&&c!==s&&(t.expanded=!0),n===`inner`?!a&&!o:c!=0}function oe(e,t,n,r){let i=e.data,a=t.data,o=i.id,s=a.id;if(n===`inner`){let e={id:o,pid:s};u.save_many([e])}else{let e=(0,g.mapValues)(y.value.mapping,e=>e.sort),n=t.parent.childNodes.map(e=>e.data),r=n.map(e=>e.sort).sort((e,t)=>t-e),i=a.pid,s=n.map((e,t)=>{let n=e.id,a={id:n,sort:r[t]};return n===o&&(a.pid=i),a}).filter(t=>{let n=t.id,r=t.sort;return n===o||r!==e[n]});u.sorting(s,o)}}return t({manager:u,api:f,model:y,selection:(0,d.computed)(()=>[...v.value].map(e=>y.value.mapping[e]).filter(e=>!!e&&e?.isLeaf))}),(t,n)=>{let r=(0,d.resolveComponent)(`el-divider`),i=(0,d.resolveComponent)(`el-space`),s=(0,d.resolveComponent)(`el-input`),l=(0,d.resolveComponent)(`el-tree`),f=(0,d.resolveComponent)(`el-text`),h=(0,d.resolveComponent)(`el-input-tag`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(K,{ref_key:`nodePopoverRef`,ref:S,placement:`right`,width:`250px`},{default:(0,d.withCtx)(({data:t})=>[(0,d.createVNode)(Ze,{control:(0,d.unref)(c).control,data:t,field:D.value,manager:(0,d.unref)(u),collector:(0,d.unref)(v),disable_table:e.disable_table,onRemove:z,onInsert:F,onSwitch:L,onTable:R,onHide:n[0]||=e=>S.value?.close()},null,8,[`control`,`data`,`field`,`manager`,`collector`,`disable_table`])]),_:1},512),(0,d.createVNode)(Qe,{ref:`wrapperRef`,loading:(0,d.unref)(p),ticking:(0,d.unref)(m)},{header:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{size:5},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(w,{icon:A.value,onClick:te,size:`large`},null,8,[`icon`]),(0,d.createVNode)(r,{direction:`vertical`}),(0,d.renderSlot)(t.$slots,`default`,{},()=>[(0,d.createVNode)(T,{tag:`b`,size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.title||(0,d.unref)(c).title),1)]),_:1})])]),_:3}),(0,d.createVNode)($e,{unrestricted:e.unrestricted,collector:(0,d.unref)(v),control:(0,d.unref)(c).control,mapping:(0,d.unref)(y).mapping,disable_table:e.disable_table,onRemove:z,onInsert:F,onSwitch:L,onTable:R},null,8,[`unrestricted`,`collector`,`control`,`mapping`,`disable_table`])]),default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,wn,[(0,d.createVNode)(s,{modelValue:k.value,"onUpdate:modelValue":n[1]||=e=>k.value=e,placeholder:`搜索...`,onInput:M},null,8,[`modelValue`])]),(0,d.createVNode)(l,{class:`m-tree`,data:(0,d.unref)(y).rootNode.children||[],ref_key:`treeRef`,ref:x,"node-key":`id`,indent:24,"highlight-current":!1,"expand-on-click-node":!1,"check-on-click-node":!1,"check-on-click-leaf":!1,"auto-expand-parent":!0,"show-checkbox":!1,"check-strictly":!1,accordion:!1,"default-expand-all":e.expandAll,"default-expanded-keys":[e.root,...j.value],props:{class:H},onNodeClick:B,onNodeContextmenu:V,draggable:(0,d.unref)(c).control.allow_order,"allow-drag":()=>!0,"allow-drop":ae,onNodeDragStart:ie,onNodeDrop:oe,"filter-node-method":N},{default:(0,d.withCtx)(({data:n,node:r})=>[(0,d.createElementVNode)(`div`,Tn,[(0,d.createVNode)(i,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(ge,{collector:(0,d.unref)(v),data:n,node:r,label:e.label,"query-string":k.value},null,8,[`collector`,`data`,`node`,`label`,`query-string`]),(0,d.renderSlot)(t.$slots,`prefix`,{isLeaf:n.isLeaf,node:r,data:n},()=>[n.isLeaf?(0,d.renderSlot)(t.$slots,`prefix-leaf`,{node:r,data:n},void 0,void 0,0):(0,d.renderSlot)(t.$slots,`prefix-branch`,{node:r,data:n},void 0,void 0,1)])]),_:2},1024),(0,d.createVNode)(i,null,{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(t.$slots,`suffix`,{isLeaf:n.isLeaf,node:r,data:n},()=>[n.isLeaf?(0,d.renderSlot)(t.$slots,`suffix-leaf`,{node:r,data:n},void 0,void 0,0):(0,d.renderSlot)(t.$slots,`suffix-branch`,{node:r,data:n},void 0,void 0,1)]),((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)((0,d.unref)(b),e=>((0,d.openBlock)(),(0,d.createBlock)(et,{data:n,column:e,collector:(0,d.unref)(v)},null,8,[`data`,`column`,`collector`]))),256)),(0,d.createVNode)(tt,{buttons:e.buttons,data:n,collector:(0,d.unref)(v),code:a.value},null,8,[`buttons`,`data`,`collector`,`code`])]),_:2},1024)])]),_:3},8,[`data`,`default-expand-all`,`default-expanded-keys`,`props`,`draggable`])]),_:3},8,[`loading`,`ticking`]),(0,d.createVNode)($,{ref_key:`addDialogRef`,ref:C,confirm:re},{header:(0,d.withCtx)(({data:{path:e}})=>[(0,d.createVNode)(f,{size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.join(` / `)),1)]),_:2},1024)]),default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(h,{modelValue:e.names,"onUpdate:modelValue":t=>e.names=t},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:1},512),(0,d.createVNode)($,{ref_key:`tableDialogRef`,ref:E,width:`1000`},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(Cn,{mapping:(0,d.unref)(y).mapping,entity:o.value,code:a.value,id:e.id},null,8,[`mapping`,`entity`,`code`,`id`])]),_:1},512)],64)}}}),En={class:`justified full`},Dn={key:0,style:{"padding-right":`5px`}},On=(0,d.defineComponent)({__name:`MenuTreeNode`,props:{item:{},node:{},path:{}},setup(e){let t=e,n=(0,d.computed)(()=>t.path===t.item.path),r=(0,d.computed)(()=>t.item.isLeaf?t.item.path?t.item.icon||`bookmark`:`ban`:t.node.expanded?`bars-staggered`:`bars`),i=(0,d.computed)(()=>{let{is_admin:e,roles:n,is_free:r}=t.item;return e?`lock`:r?`unlock`:n?.length?`user-lock`:`user`}),a=(0,d.computed)(()=>t.item.isLeaf&&n.value?`#000000`:`#c5c8d5`);return(t,o)=>((0,d.openBlock)(),(0,d.createElementBlock)(`div`,En,[(0,d.createElementVNode)(`div`,null,[(0,d.createVNode)((0,d.unref)(C),{style:(0,d.normalizeStyle)({color:a.value,marginRight:`7px`}),icon:r.value,"icon-size":e.item.isLeaf?`sm`:`lg`,shake:n.value},null,8,[`style`,`icon`,`icon-size`,`shake`]),(0,d.createVNode)((0,d.unref)(T),{size:n.value?`default`:`small`,tag:n.value?`b`:`span`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.item.name),1)]),_:1},8,[`size`,`tag`])]),e.item.isLeaf?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,Dn,[(0,d.createVNode)((0,d.unref)(C),{icon:i.value,"icon-size":`xs`,type:`info`},null,8,[`icon`])])):(0,d.createCommentVNode)(``,!0)]))}}),kn=(0,d.defineComponent)({__name:`MMenu`,props:{current:{},options:{}},emits:[`goto`],setup(e,{emit:t}){let n=e,r=t,i={label:`name`,value:`path`};function a(e,t,i,a){a.stopPropagation(),a.preventDefault();let{path:o,isLeaf:s}=e;s?o&&o!==n.current&&r(`goto`,o):t.expanded=!t.expanded}return(t,n)=>{let r=(0,d.resolveComponent)(`el-tree`);return(0,d.openBlock)(),(0,d.createBlock)(r,{ref:`tree`,data:e.options,"default-expand-all":!0,accordion:!1,class:`m-tree menu-tree`,"node-key":`path`,onNodeClick:a,props:i,"expand-on-click-node":!1,"auto-expand-parent":``},{empty:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`ban`},{default:(0,d.withCtx)(()=>[...n[0]||=[(0,d.createTextVNode)(`无菜单`,-1)]]),_:1})]),default:(0,d.withCtx)(({data:t,node:n})=>[(0,d.createVNode)(On,{item:t,path:e.current,node:n},null,8,[`item`,`path`,`node`])]),_:1},8,[`data`])}}}),An=(0,d.defineComponent)({__name:`RoleMenuView`,props:{roles_set:{},is_free:{type:Boolean}},setup(e){let t=e,n=(0,d.ref)([]),{post:r}=I();return(0,d.watch)(()=>t,()=>{let{roles_set:e,is_free:i}=t,a={is_free:i,roles:e.map(e=>e.id)};r(`valar/view_menu`,a).then(e=>{let t=V(e);n.value=t.rootNode.children||[]})},{deep:!0,immediate:!0}),(e,t)=>((0,d.openBlock)(),(0,d.createBlock)(kn,{options:n.value},null,8,[`options`]))}}),jn={style:{"text-align":`center`}},Mn=(0,d.defineComponent)({__name:`AccountSetting`,props:{account:{}},emits:[`update:account`],setup(e,{emit:t}){let n=(0,p.useVModel)(e,`account`,t),{user:r}=F(),i=(0,d.ref)([]),a=(0,d.computed)(()=>r.value?.user_entity?`user__name`:`username`),{manager:o}=U(`valar.Account`);return(0,d.onMounted)(()=>{let e=[`username`,`is_admin`,a.value];o.values(e,{}).then(e=>{i.value=e.map(e=>{let t={label:e[a.value],value:e.id};return a.value===`user__name`&&(t.display=e.username),t})})}),(e,t)=>((0,d.openBlock)(),(0,d.createElementBlock)(`div`,jn,[(0,d.createVNode)((0,d.unref)(q),{modelValue:(0,d.unref)(n),"onUpdate:modelValue":t[0]||=e=>(0,d.isRef)(n)?n.value=e:null,options:i.value},null,8,[`modelValue`,`options`])]))}}),Nn=(0,d.defineComponent)({__name:`RoleManage`,setup(e){let t=(0,d.ref)(),n=(0,d.ref)(),r=(0,d.ref)(),i=[{label:`账户设置`,icon:`users`,leaf_only:!0,dialog:n}],a=(0,d.computed)(()=>t.value?.selection||[]);function o(e){let{id:n,account:r}=e,i={id:n,account:r};t.value?.manager.save_many([i])}return(e,s)=>{let c=(0,d.resolveComponent)(`el-tag`),l=(0,d.resolveComponent)(`el-checkbox`),u=(0,d.resolveComponent)(`el-space`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(Z,{ref_key:`treeRef`,ref:t,code:`auth`,"expand-all":``,entity:`valar.Role`,buttons:i},{"suffix-leaf":(0,d.withCtx)(({data:e})=>[e.account?.length?((0,d.openBlock)(),(0,d.createBlock)(c,{key:0,size:`small`,effect:`plain`,class:`small`,type:`primary`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.account?.length)+` 人 `,1)]),_:2},1024)):(0,d.createCommentVNode)(``,!0)]),default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(w),{icon:`list`,type:`primary`,onClick:s[0]||=e=>r.value?.open({is_free:!1})},{default:(0,d.withCtx)(()=>[...s[1]||=[(0,d.createTextVNode)(`菜单预览 `,-1)]]),_:1})]),_:1},512),(0,d.createVNode)((0,d.unref)($),{ref_key:`accountDialogRef`,ref:n,width:`600`,confirm:o},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(Mn,{account:e.account,"onUpdate:account":t=>e.account=t},null,8,[`account`,`onUpdate:account`])]),_:1},512),(0,d.createVNode)((0,d.unref)($),{ref_key:`menuDialogRef`,ref:r,width:600},{header:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(u,{size:3},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(T),{size:`default`,tag:`b`},{default:(0,d.withCtx)(()=>[...s[2]||=[(0,d.createTextVNode)(`角色:`,-1)]]),_:1}),a.value.length?((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,{key:0},(0,d.renderList)(a.value,e=>((0,d.openBlock)(),(0,d.createBlock)(c,{effect:`plain`,size:`small`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`user-lock`,class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.name),1)]),_:2},1024)]),_:2},1024))),256)):((0,d.openBlock)(),(0,d.createBlock)(l,{key:1,modelValue:e.is_free,"onUpdate:modelValue":t=>e.is_free=t,size:`small`},{default:(0,d.withCtx)(()=>[...s[3]||=[(0,d.createTextVNode)(`无需登陆 `,-1)]]),_:1},8,[`modelValue`,`onUpdate:modelValue`]))]),_:2},1024)]),default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(An,{roles_set:a.value,is_free:e.is_free},null,8,[`roles_set`,`is_free`])]),_:1},512)],64)}}}),Pn=(0,d.defineComponent)({__name:`MenuAuthPlugin`,props:{data:{},param:{},invoke:{type:Function}},setup(e){return(t,n)=>{let r=(0,d.resolveComponent)(`el-tag`),i=(0,d.resolveComponent)(`el-space`);return e.data.isLeaf?((0,d.openBlock)(),(0,d.createBlock)(i,{key:0},{default:(0,d.withCtx)(()=>[e.data.is_admin?((0,d.openBlock)(),(0,d.createBlock)(r,{key:0,size:`small`,effect:`plain`,type:`warning`,class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`lock`,class:`small`,"icon-size":`1x`},{default:(0,d.withCtx)(()=>[...n[0]||=[(0,d.createTextVNode)(`超管可见`,-1)]]),_:1})]),_:1})):e.data.is_free?((0,d.openBlock)(),(0,d.createBlock)(r,{key:1,size:`small`,effect:`plain`,type:`info`,class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`unlock`,class:`small`,"icon-size":`1x`},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`无需登陆`,-1)]]),_:1})]),_:1})):e.data.roles_set?.length?((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,{key:3},(0,d.renderList)(e.data.roles_set,e=>((0,d.openBlock)(),(0,d.createBlock)(r,{size:`small`,effect:`plain`,type:`primary`,class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`user-lock`,class:`small`,"icon-size":`1x`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.name),1)]),_:2},1024)]),_:2},1024))),256)):((0,d.openBlock)(),(0,d.createBlock)(r,{key:2,size:`small`,effect:`plain`,type:`success`,class:`small`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`user`,class:`small`,"icon-size":`1x`},{default:(0,d.withCtx)(()=>[...n[2]||=[(0,d.createTextVNode)(`登陆可见`,-1)]]),_:1})]),_:1}))]),_:1})):(0,d.createCommentVNode)(``,!0)}}}),Fn={style:{"margin-bottom":`8px`}},In=(0,d.defineComponent)({__name:`RouteSetting`,props:{routes:{},menu:{}},emits:[`save`],setup(e,{emit:t}){let n=e,r=t,i=(0,d.ref)(n.menu.path);function a(){let{path:e,id:t}=n.menu;r(`save`,[{path:e,id:t}])}return(t,n)=>{let r=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createElementVNode)(`div`,Fn,[(0,d.createVNode)((0,d.unref)(w),{icon:`save`,disabled:i.value===e.menu.path,onClick:a},{default:(0,d.withCtx)(()=>[...n[1]||=[(0,d.createTextVNode)(`保存路由 `,-1)]]),_:1},8,[`disabled`])]),(0,d.createVNode)(r,{modelValue:e.menu.path,"onUpdate:modelValue":n[0]||=t=>e.menu.path=t,filterable:``,clearable:``,style:{width:`260px`}},{label:(0,d.withCtx)(({index:e,label:t})=>[(0,d.createVNode)((0,d.unref)(T),{type:e===-1?`danger`:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(t),1)]),_:2},1032,[`type`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(A),{items:e.routes},null,8,[`items`])]),_:1},8,[`modelValue`])],64)}}}),Ln={style:{"margin-bottom":`8px`},class:`justified`},Rn=(0,d.defineComponent)({__name:`AuthSetting`,props:{menu:{}},emits:[`save`],setup(e,{emit:t}){let n=e,r={value:`id`,label:`name`},i=t,{manager:a,loading:o}=U(`valar.Role`),s=(0,d.ref)();(0,d.onMounted)(()=>{a.tree().then(e=>s.value=e)});function c(){let{id:e,roles:t,is_admin:r,is_free:a}=n.menu;i(`save`,[{id:e,roles:t,is_admin:r,is_free:a}])}return(t,n)=>{let i=(0,d.resolveComponent)(`el-checkbox`),a=(0,d.resolveComponent)(`el-space`),o=(0,d.resolveComponent)(`el-tree-select`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createElementVNode)(`div`,Ln,[(0,d.createVNode)(a,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{size:`small`,modelValue:e.menu.is_admin,"onUpdate:modelValue":n[0]||=t=>e.menu.is_admin=t},{default:(0,d.withCtx)(()=>[...n[3]||=[(0,d.createTextVNode)(`超管可见`,-1)]]),_:1},8,[`modelValue`]),e.menu.is_admin?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(i,{key:0,size:`small`,modelValue:e.menu.is_free,"onUpdate:modelValue":n[1]||=t=>e.menu.is_free=t},{default:(0,d.withCtx)(()=>[...n[4]||=[(0,d.createTextVNode)(`无需登陆 `,-1)]]),_:1},8,[`modelValue`]))]),_:1}),(0,d.createVNode)((0,d.unref)(w),{icon:`save`,type:`success`,onClick:c},{default:(0,d.withCtx)(()=>[...n[5]||=[(0,d.createTextVNode)(`保存`,-1)]]),_:1})]),(0,d.createVNode)(o,{modelValue:e.menu.roles,"onUpdate:modelValue":n[2]||=t=>e.menu.roles=t,props:r,disabled:e.menu.is_admin||e.menu.is_free,data:s.value?.rootNode.children||[],multiple:``,style:{width:`250px`},"tag-effect":`plain`,"tag-type":`success`,"collapse-tags":``,"collapse-tags-tooltip":``,"max-collapse-tags":1,"default-expand-all":``},{default:(0,d.withCtx)(({data:e,node:t})=>[(0,d.createVNode)((0,d.unref)(O),{label:e.name,display:e.id,icon:e.isLeaf?`leaf`:t.expanded?`folder-open`:`folder`,type:e.isLeaf?`success`:`warning`},null,8,[`label`,`display`,`icon`,`type`])]),_:1},8,[`modelValue`,`disabled`,`data`])],64)}}}),zn=(0,d.defineComponent)({__name:`MenuManage`,setup(e){let t=(0,d.ref)(),n=(0,d.ref)(),r=(0,d.ref)(),i=(0,d.ref)();(0,d.ref)();let{routes:a}=Q(),{$message:o,$confirm:s}=P(),c=[{label:`路由设置`,popover:r,leaf_only:!0,disabled:e=>a.value.map(e=>e.path).includes(e.path)||!u.value.length,icon:e=>a.value.map(e=>e.path).includes(e.path)?`link`:`unlink`,type:e=>a.value.map(e=>e.path).includes(e.path)?``:`danger`},{label:`重制名称`,disabled(e){let t=a.value.find(t=>e.path===t.path);return!t||t.name===e.name},icon:`refresh`,leaf_only:!0,handler(e){let t=a.value.find(t=>e.path===t.path)?.name,n=`是否恢复默认名称:${t}`;s.info(n).then(()=>{p([{id:e.id,name:t}])})}},{label:`权限设置`,popover:i,icon:`lock`,leaf_only:!0}],l=[{component:Pn}],u=(0,d.computed)(()=>{let e=t.value?.model.mapping||{},n=Object.values(e).map(e=>e.path);return a.value.filter(e=>!n.includes(e.path)).map(({path:e,name:t})=>({label:t,value:e,display:e}))});function f(e){p(e.value.map(e=>a.value.find(t=>t.path===e)).filter(e=>(e&&(e.isLeaf=!0),e)))}function p(e){e.length&&t.value?.manager.save_many(e),r.value?.close(),i.value?.close()}return(e,o)=>{let s=(0,d.resolveComponent)(`el-tag`),m=(0,d.resolveComponent)(`el-select`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(Z,{ref_key:`treeRef`,ref:t,entity:`valar.Menu`,code:`auth`,single:``,"expand-all":``,buttons:c,columns:l},{"prefix-leaf":(0,d.withCtx)(({data:e})=>[(0,d.createVNode)((0,d.unref)(T),{tag:(0,d.unref)(a).map(e=>e.path).includes(e.path)?`span`:`del`,type:(0,d.unref)(a).map(e=>e.path).includes(e.path)?`info`:`danger`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`i`,null,`@`+(0,d.toDisplayString)(e?.path),1)]),_:2},1032,[`tag`,`type`])]),default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(w),{icon:`folder-plus`,"icon-size":`1x`,bounce:!!u.value.length,disabled:!u.value.length,type:`success`,onClick:o[0]||=e=>n.value?.open({value:[]})},{default:(0,d.withCtx)(()=>[...o[1]||=[(0,d.createTextVNode)(`添加菜单 `,-1)]]),_:1},8,[`bounce`,`disabled`]),u.value.length?((0,d.openBlock)(),(0,d.createBlock)(s,{key:0,effect:`plain`,type:`success`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(u.value.length)+` 可用 `,1)]),_:1})):(0,d.createCommentVNode)(``,!0)]),_:1},512),(0,d.createVNode)((0,d.unref)($),{ref_key:`insertDialogRef`,ref:n,title:`添加菜单`,confirm:f},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(m,{modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,multiple:``,filterable:``,clearable:``},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(A),{items:u.value},null,8,[`items`])]),_:1},8,[`modelValue`,`onUpdate:modelValue`])]),_:1},512),(0,d.createVNode)((0,d.unref)(K),{ref_key:`routePopoverRef`,ref:r},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(In,{routes:u.value,menu:e,onSave:p},null,8,[`routes`,`menu`])]),_:1},512),(0,d.createVNode)((0,d.unref)(K),{ref_key:`rolePopoverRef`,ref:i},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(Rn,{menu:e,onSave:p},null,8,[`menu`])]),_:1},512)],64)}}}),Bn=(0,d.defineComponent)({__name:`UserManage`,setup(e){let{user:t}=F(),n=(0,d.ref)(),r=(0,d.ref)(),i=(0,d.computed)(()=>t.value?.user_entity),a=(0,d.ref)(`auth`),{post:o}=I();function s(e){o(`valar/create_user_account`,e).then(e=>{r.value?.manager.reload()})}function c(){r.value?.getMeta()&&n.value?.open(i.value,a.value)}return(e,t)=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[i.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(X),{key:0,ref_key:`tableRef`,ref:r,entity:i.value,codes:[`auth`,`edit`],code:a.value},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(w),{icon:`user-plus`,"icon-size":`1x`,type:`primary`,onClick:c},{default:(0,d.withCtx)(()=>[...t[0]||=[(0,d.createTextVNode)(`批量添加用户 `,-1)]]),_:1})]),_:1},8,[`entity`,`code`])):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(xn,{ref_key:`uploadRef`,ref:n,onConfirm:s},null,512)],64))}}),Vn=(0,d.defineComponent)({__name:`MSystem`,setup(e){let t=(0,d.ref)(),{account:n,user:r,system:i}=F();return(e,a)=>{let o=(0,d.resolveComponent)(`el-tab-pane`),s=(0,d.resolveComponent)(`el-tabs`);return(0,d.unref)(n).is_admin?((0,d.openBlock)(),(0,d.createBlock)(s,{key:0,"tab-position":`left`,modelValue:(0,d.unref)(i),"onUpdate:modelValue":a[0]||=e=>(0,d.isRef)(i)?i.value=e:null},{default:(0,d.withCtx)(()=>[(0,d.unref)(r)?.user_entity?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,name:`user`,lazy:``},{label:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`users`},{default:(0,d.withCtx)(()=>[...a[1]||=[(0,d.createTextVNode)(`用户管理`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.unref)(i)===`user`?((0,d.openBlock)(),(0,d.createBlock)(Bn,{key:0})):(0,d.createCommentVNode)(``,!0)]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(o,{name:`account`,lazy:``},{label:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`circle-user`},{default:(0,d.withCtx)(()=>[...a[2]||=[(0,d.createTextVNode)(`账户管理`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.unref)(i)===`account`?((0,d.openBlock)(),(0,d.createBlock)(M,{key:0})):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(o,{name:`role`,lazy:``},{label:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`key`},{default:(0,d.withCtx)(()=>[...a[3]||=[(0,d.createTextVNode)(`角色管理`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.unref)(i)===`role`?((0,d.openBlock)(),(0,d.createBlock)(Nn,{key:0})):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(o,{name:`menu`,lazy:``},{label:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`list`},{default:(0,d.withCtx)(()=>[...a[4]||=[(0,d.createTextVNode)(`菜单管理`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.unref)(i)===`menu`?((0,d.openBlock)(),(0,d.createBlock)(zn,{key:0})):(0,d.createCommentVNode)(``,!0)]),_:1}),(0,d.createVNode)(o,{name:`meta`,lazy:``},{label:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`database`},{default:(0,d.withCtx)(()=>[...a[5]||=[(0,d.createTextVNode)(`数据管理`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.unref)(i)===`meta`?((0,d.openBlock)(),(0,d.createBlock)(Lt,{key:0,entity:`valar.Valar`,code:`default`,locked:``,onList:t.value?.openFieldList,onForm:t.value?.openViewForm},null,8,[`onList`,`onForm`])):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(tn,{ref_key:`metaRef`,ref:t,lock:``,entity:`valar.Valar`,code:`default`},null,512)]),_:1})]),_:1},8,[`modelValue`])):(0,d.createCommentVNode)(``,!0)}}}),Hn=(0,d.defineComponent)({__name:`NotFound`,setup(e){let t=(0,m.useRouter)(),{counter:n,pause:r,resume:i,isActive:a}=(0,p.useInterval)(1e3,{controls:!0,immediate:!0});return(0,d.watch)(n,()=>{n.value>=10&&(r(),t.push(`/`))}),(e,r)=>{let i=(0,d.resolveComponent)(`el-text`),a=(0,d.resolveComponent)(`el-button`),o=(0,d.resolveComponent)(`el-space`),s=(0,d.resolveComponent)(`el-empty`);return(0,d.openBlock)(),(0,d.createBlock)(s,{"image-size":100},{description:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{tag:`b`,style:{"font-size":`20px`},type:`danger`},{default:(0,d.withCtx)(()=>[...r[1]||=[(0,d.createTextVNode)(`#404`,-1)]]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{tag:`b`,style:{"font-size":`20px`},type:`info`},{default:(0,d.withCtx)(()=>[...r[2]||=[(0,d.createTextVNode)(`您访问的页面不存在。`,-1)]]),_:1}),r[4]||=(0,d.createElementVNode)(`br`,null,null,-1),r[5]||=(0,d.createElementVNode)(`br`,null,null,-1),(0,d.createVNode)(o,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(10-(0,d.unref)(n))+`秒后 `,1)]),_:1}),(0,d.createVNode)(a,{type:`primary`,onClick:r[0]||=e=>(0,d.unref)(t).push(`/`),link:``,size:`large`},{default:(0,d.withCtx)(()=>[...r[3]||=[(0,d.createTextVNode)(` 返回首页 `,-1)]]),_:1})]),_:1})]),_:1})}}}),Un=(0,d.defineComponent)({__name:`NoPermission`,setup(e){let t=(0,m.useRouter)(),{counter:n,pause:r,resume:i,isActive:a}=(0,p.useInterval)(1e3,{controls:!0,immediate:!0});return(0,d.watch)(n,()=>{n.value>=10&&(r(),t.push(`/`))}),(e,r)=>{let i=(0,d.resolveComponent)(`el-text`),a=(0,d.resolveComponent)(`el-button`),o=(0,d.resolveComponent)(`el-space`),s=(0,d.resolveComponent)(`el-result`);return(0,d.openBlock)(),(0,d.createBlock)(s,{icon:`warning`},{title:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{tag:`b`,style:{"font-size":`20px`},type:`warning`},{default:(0,d.withCtx)(()=>[...r[1]||=[(0,d.createTextVNode)(`#403`,-1)]]),_:1}),r[3]||=(0,d.createElementVNode)(`br`,null,null,-1),r[4]||=(0,d.createElementVNode)(`br`,null,null,-1),(0,d.createVNode)(i,{tag:`b`,style:{"font-size":`20px`},type:`info`},{default:(0,d.withCtx)(()=>[...r[2]||=[(0,d.createTextVNode)(`非常抱歉,您无权限访问该页面。`,-1)]]),_:1})]),"sub-title":(0,d.withCtx)(()=>[(0,d.createVNode)(o,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(i,{type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(10-(0,d.unref)(n))+`秒后 `,1)]),_:1}),(0,d.createVNode)(a,{type:`primary`,onClick:r[0]||=e=>(0,d.unref)(t).push(`/`),link:``,size:`large`},{default:(0,d.withCtx)(()=>[...r[5]||=[(0,d.createTextVNode)(` 返回首页 `,-1)]]),_:1})]),_:1})]),_:1})}}}),Q=(0,p.createGlobalState)(()=>{let e=(0,d.ref)({}),t=(0,d.computed)(()=>e.value?.base_url||`/api/`),n=(0,d.computed)(()=>e.value?.minio_url||`/minio/`),r=(0,d.computed)(()=>e.value?.title||`Morghulis System`),i=(0,d.computed)(()=>(e.value?.routes||[]).filter(e=>e.path!==`/`).map(({path:e,name:t})=>({path:e,name:t}))),a=(0,d.computed)(()=>e.value?.sign_in_only||!1),o=(0,d.computed)(()=>e.value?.username_label||``);function s(t,n){e.value=n||{},l.library.add(...qn,...n?.icons||[]);let i=[...n?.routes||[],...Gn];i.find(e=>e.path===`/`)||i.unshift(Wn);let a=(0,m.createRouter)({history:(0,m.createWebHistory)(),routes:i});a.beforeEach(e=>{document.title=`${String(e.name)} - ${r.value}`,Kn.includes(e.path)}),t.use(a)}return{options:e,base_url:t,minio_url:n,title:r,routes:i,sign_in_only:a,username_label:o,install:s}}),Wn={path:`/`,name:`Welcome`,component:te},Gn=[{path:`/:pathMatch(.*)*`,redirect:`/404`},{path:`/morghulis_system`,name:`系统管理`,component:Vn},{path:`/404`,name:`页面没找到`,component:Hn},{path:`/403`,name:`没有权限`,component:Un}],Kn=[`/`,`/404`,`/403`],qn=[u.faUser,u.faPaperPlane,u.faRefresh,u.faExchangeAlt,u.faCalculator,u.faDatabase,u.faClose,u.faPlus,u.faSave,u.faMinusSquare,u.faSearch,u.faBan,u.faEdit,u.faTrash,u.faPaste,u.faPlusSquare,u.faLeaf,u.faFolder,u.faTable,u.faUpload,u.faClone,u.faDownload,u.faFolderOpen,u.faExpand,u.faCode,u.faCheckCircle,u.faInfoCircle,u.faClipboard,u.faFileExcel,u.faXmark,u.faXmarkCircle,u.faXmarkSquare,u.faWarning,u.faFileText,u.faBookOpen,u.faFileImport,u.faCloudUploadAlt,u.faCloudUpload,u.faCheckSquare,u.faSort,u.faLayerGroup,u.faFile,u.faA,u.faCheck,u.faSortDesc,u.faSearchMinus,u.faSortAsc,u.faCaretSquareUp,u.faTableCells,u.faTableList,u.faRobot,u.faLock,u.faQuoteLeftAlt,u.faScroll,u.faSlidersH,u.faCalendarDay,u.faListUl,u.faCalendarWeek,u.faCalendarAlt,u.faLink,u.faUnlink,u.faBox,u.faBoxes,u.faFolderTree,u.faBolt,u.faCheckToSlot,u.faCircleDot,u.faCircle,u.faCopy,u.faCogs,u.faListAlt,u.faUnlock,u.faPen,u.faSpinner,u.faRightToBracket,u.faRightFromBracket,u.faEnvelope,u.faKey,u.faCodeBranch,u.faAddressCard,u.faHome,u.faCircleUser,u.faUsers,u.faList,u.faUserLock,u.faRotateLeft,u.faBars,u.faEye,u.faAt,u.faUserTag,u.faLockOpen,u.faCalendar,u.faStar,u.faCog,u.faSquare,u.faBoxOpen,u.faUserGroup,u.faHourglass,u.faUserGraduate,u.faAsterisk,u.faUserPlus],Jn=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;function Yn(){let{post:e}=I(),{$confirm:t,$message:n}=P(),{sign_in:r,sign_out:i,token:a,register:o}=F(),{options:s}=Q();async function c(t){try{let n=await e(`/valar/sign`,t);return r(n),!0}catch{return!1}}function l(){t.info(`是否退出系统?`).then(()=>{i(),n.info(`再见!`)})}(0,d.watch)(a,async(t,n,r)=>{let s=!0;if(r(()=>{s=!1}),o(``),t)try{let n=await e(`/valar/register`);if(!s||t!==a.value)return;n?o(n):i()}catch(e){s&&t===a.value&&console.error(`加载用户资料失败`,e)}},{immediate:!0,flush:`sync`});function u(e){let t=Zn(e,s.value)||Xn(e);return t&&n.error(t),!t}return{sign:c,exit:l,validate:u}}function Xn(e){return e.password.length<8?`密码长度不小于8位`:e.is_sign_in||e.password===e.$password?null:`两次输入的密码不一致`}function Zn(e,t){if(e.username===`admin`)return null;let{username_label:n,username_exp:r}=t;return((n?r||/.+/:Jn).test(e.username)?null:`${n||`邮箱`}格式错误`)||(n&&!e.is_sign_in?Jn.test(e.email)?null:`邮箱格式错误`:null)}function Qn(e){let t={line:e?.line??`\r
|
|
4
|
+
`,cell:e?.cell??` `};function n(n){if(!n)return[];let r=n.split(e?.line??/\r\n|\n|\r/);for(;r.length&&r[r.length-1]===``;)r.pop();return r.map(e=>e.split(t.cell))}function r(e,t){return t.length?n(e).map(e=>Object.fromEntries(t.map((t,n)=>[t,e[n]??``]))):[]}return{textToAoa:n,textToJson:r}}function $n(){async function e(e,t=!0){let n=await(await fetch(e)).arrayBuffer();return e.endsWith(`.csv`)?er(new TextDecoder(`utf-8`).decode(n),t):er(n,t)}async function t(e,t=!0){return er(await e.arrayBuffer(),t)}async function n(e,...t){let{utils:n,writeFile:r}=await import(`xlsx`),i=n.book_new();t.forEach((e,t)=>{let r=e.headers?[e.headers,...e.data]:e.data,a=n.aoa_to_sheet(r);a[`!merges`]=e.merges||[];let o=e.name||`Sheet${t+1}`;n.book_append_sheet(i,a,o)}),r(i,e+`.xlsx`)}function r(e,t){let n=e.map((e,n)=>[e,t[n]]);return Object.fromEntries(n)}return{writeSheets:n,readBookFromURL:e,readBookFromFile:t,zip:r}}async function er(e,t){let{utils:n,read:r,SSF:i}=await import(`xlsx`),a=r(e,{type:`binary`,cellDates:!0}),o=a.SheetNames.map(e=>{let n=a.Sheets[e],r={},o=[],s=0;Object.keys(n).sort().forEach(e=>{let t=e.match(/^([A-Za-z]+)(\d+)$/);if(!t)return;let a=n[e],c=t[1],l=parseInt(e.replace(c,``));l===1&&o.push(c),s=Math.max(l,s);let u=l-1,{t:d,v:f}=a,p=f;d===`s`?p=f.trim():d===`d`?p=i.format(`yyyy-mm-dd hh:mm:ss`,a.v):(d===`n`||d===`b`)&&(p=String(f));let m=r[c]||{};m[u]=p,r[c]=m});let c=(0,g.range)(s).map(e=>o.map(t=>r[t]?.[e]||null));return[e,{data:c,columns:o,name:e,headers:t?c.shift()||[]:o}]});return Object.fromEntries(o)}var tr=(0,p.createGlobalState)(()=>{let e=(0,d.ref)({mapping:{},options:[],rootNode:{children:[]}}),{post:t,loading:n}=I();function r(){t(`valar/load_menu`).then(t=>{e.value=V(t)})}return{model:e,loading:n,load:r}});function nr(e,t){return{columns:(0,d.computed)(()=>(e.value||[]).filter(e=>!e.codes?.length||e.codes.includes(t.value)))}}function rr(e,t,n){return{buttons:(0,d.computed)(()=>(e.value||[]).filter(e=>!e.codes?.length||e.codes.includes(t.value)).filter(e=>{let t=e.hide==null?!1:e.hide instanceof Function?e.hide(n.value):e.hide,r=e.leaf_only?n.value.isLeaf??!0:!0,i=!e.folder_only||n.value.isLeaf==null||!n.value.isLeaf;return!t&&i&&r}).map(e=>{let t=e.label==null?``:e.label instanceof Function?e.label(n.value):e.label,r=e.size==null?`small`:e.size instanceof Function?e.size(n.value):e.size,i=e.type==null?``:e.type instanceof Function?e.type(n.value):e.type,a=e.disabled==null?!1:e.disabled instanceof Function?e.disabled(n.value):e.disabled,o=e.plain==null?!1:e.plain instanceof Function?e.plain(n.value):e.plain;return{label:t,size:r,type:i,disabled:a,icon:e.icon==null?``:e.icon instanceof Function?e.icon(n.value):e.icon,plain:o,handler(n,r){e?.handler?.(n,r,this),e.dialog?.value?.open(n,{title:t}),r&&e.popover?.value?.open(r,n)}}}))}}function ir(){let{height:e}=(0,p.useWindowSize)();return{frame:(0,d.computed)(()=>{let t={header:60,body:100,footer:25,neck:35};return t.body=e.value-t.header-t.footer-t.neck,t})}}var ar={class:`justified`},or={class:`m-dialog-content`,"element-loading-custom-class":`m-dialog-loading`,"element-loading-background":`rgba(255,255,255,0.6)`,"element-loading-text":`加载中...`},sr={key:0,class:`right`},$=(0,d.defineComponent)({__name:`MDialog`,props:{title:{},subTitle:{},width:{},top:{},fullscreen:{type:Boolean},confirm:{type:Function},cancel:{type:Function}},emits:[`closed`],setup(e,{expose:t,emit:n}){let r=e,i=n,{$message:a}=P(),o=(0,d.ref)(),s=(0,d.ref)(!1),c=(0,d.ref)(!1),l=(0,d.ref)(null),u=(0,d.ref)({}),f=(0,d.computed)(()=>`${u.value.top??10}px`),p=(0,d.computed)(()=>u.value.confirm??r.confirm),m=(0,d.computed)(()=>u.value.cancel??r.cancel),h=(0,d.computed)(()=>!!p.value);function g(e,t={}){c.value||(l.value=e??null,u.value={title:t.title??r.title??`对话框`,subTitle:t.subTitle??r.subTitle??``,width:t.width??r.width??400,top:t.top??r.top??10,fullscreen:t.fullscreen??r.fullscreen??!1,confirm:t.confirm,cancel:t.cancel},s.value=!0)}async function _(e){if(!c.value){if(!e)s.value=!1;else{c.value=!0;try{await e(l.value)!==!1&&(s.value=!1)}catch(e){console.error(e instanceof Error?e.message:String(e))}finally{c.value=!1}}}}function v(){return _(p.value)}function y(){return _(m.value)}function b(e){c.value||y()}function x(){c.value||(u.value.fullscreen=!u.value.fullscreen)}return t({open:g,close:y,submit:v}),(e,t)=>{let n=(0,d.resolveComponent)(`el-text`),r=(0,d.resolveComponent)(`el-space`),a=(0,d.resolveComponent)(`el-button`),p=(0,d.resolveComponent)(`el-dialog`),m=(0,d.resolveDirective)(`loading`);return(0,d.openBlock)(),(0,d.createBlock)(p,{ref_key:`dialogRef`,ref:o,modelValue:s.value,"onUpdate:modelValue":t[0]||=e=>s.value=e,"append-to-body":``,"destroy-on-close":``,"open-delay":0,"close-delay":0,"close-on-click-modal":!1,"close-on-press-escape":!1,"show-close":!1,draggable:``,autofocus:``,width:u.value.width,top:f.value,fullscreen:u.value.fullscreen,"before-close":b,class:`m-dialog`,"modal-class":`m-dialog-modal`,"header-class":`m-dialog-header`,"body-class":`m-dialog-body`,"footer-class":`m-dialog-footer`,onClosed:t[1]||=e=>i(`closed`),onKeydown:(0,d.withKeys)(y,[`esc`])},{header:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,ar,[(0,d.createVNode)(r,null,{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`header`,{data:l.value},()=>[(0,d.createVNode)(n,{tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(u.value.title),1)]),_:1}),(0,d.createVNode)(n,{size:`small`,type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(u.value.subTitle),1)]),_:1})])]),_:3}),(0,d.createVNode)(r,{size:0},{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`tool`,{data:l.value}),(0,d.createVNode)(w,{icon:`expand`,style:{"margin-left":`15px`},disabled:c.value,onClick:x},null,8,[`disabled`]),(0,d.createVNode)(w,{icon:`close`,type:c.value?`info`:`danger`,disabled:c.value,onClick:y},null,8,[`type`,`disabled`])]),_:3})])]),footer:(0,d.withCtx)(()=>[h.value?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,sr,[(0,d.createVNode)(a,{type:`success`,plain:``,loading:c.value,onClick:v},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`check-circle`}),t[2]||=(0,d.createTextVNode)(` 确定 `,-1)]),_:1},8,[`loading`]),(0,d.createVNode)(a,{type:`info`,plain:``,disabled:c.value,onClick:y},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(C,{icon:`xmark-circle`}),t[3]||=(0,d.createTextVNode)(` 取消 `,-1)]),_:1},8,[`disabled`])])):(0,d.createCommentVNode)(``,!0)]),default:(0,d.withCtx)(()=>[(0,d.withDirectives)(((0,d.openBlock)(),(0,d.createElementBlock)(`div`,or,[(0,d.renderSlot)(e.$slots,`default`,{data:l.value})])),[[m,c.value]])]),_:3},8,[`modelValue`,`width`,`top`,`fullscreen`])}}}),cr=(0,d.defineComponent)({__name:`MCharts`,props:{options:{default:{xAxis:{type:`category`,data:[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`]},yAxis:{type:`value`},series:[{data:[150,230,224,218,135,147,260],type:`line`}]}},width:{default:`100%`},height:{default:`400px`}},setup(e){let t=e,n=(0,d.ref)(),r=null;return(0,d.onMounted)(async()=>{n.value&&(r=(await import(`echarts`)).init(n.value),r.setOption(t.options))}),(0,d.watch)(()=>t.options,e=>{r&&e&&(0,d.nextTick)().then(()=>r&&r.setOption(e,!0,!0))},{deep:!0}),(0,d.onBeforeUnmount)(()=>{r?.dispose()}),(t,r)=>((0,d.openBlock)(),(0,d.createElementBlock)(`div`,{ref_key:`chartRef`,ref:n,style:(0,d.normalizeStyle)({width:e.width,height:e.height})},null,4))}}),lr=o({DataTable:()=>X,DataTree:()=>Z,DataWrapper:()=>Qe,MButton:()=>w,MCell:()=>Ye,MCharts:()=>cr,MDialog:()=>$,MForm:()=>Y,MIcon:()=>C,MObjectEditor:()=>J,MOptionContent:()=>O,MOptionItem:()=>k,MOptionList:()=>A,MPopover:()=>K,MRichEditor:()=>qe,MText:()=>T,MTransferEditor:()=>q,MUploader:()=>xn}),ur=(0,d.defineComponent)({__name:`FrameMenu`,emits:[`click`],setup(e,{expose:t,emit:n}){let{model:r,loading:i,load:a}=tr(),o=(0,d.computed)(()=>l.path),s=(0,d.ref)(),c=(0,m.useRouter)(),l=(0,m.useRoute)(),u=(0,d.ref)(!1),{height:f}=(0,p.useWindowSize)();(0,d.watch)(o,()=>{(0,d.nextTick)().then(()=>s.value?.setCurrentKey(o.value))},{immediate:!0});function h(e){c.push(e),u.value=!1}function g(){u.value=!0}return t({open:g}),(e,t)=>{let n=(0,d.resolveComponent)(`el-button`),i=(0,d.resolveComponent)(`el-drawer`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(n,{link:``,color:`black`,plain:``,onClick:t[0]||=e=>g()},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`list`,"icon-size":`lg`})]),_:1}),(0,d.createVNode)(i,{modelValue:u.value,"onUpdate:modelValue":t[2]||=e=>u.value=e,size:`320px`,"with-header":!1,direction:`ltr`,onOpen:(0,d.unref)(a)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{style:{width:`100%`,"margin-bottom":`10px`},type:`info`,plain:``,disabled:o.value===`/`,onClick:t[1]||=e=>h(`/`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`home`,shake:o.value===`/`},{default:(0,d.withCtx)(()=>[...t[3]||=[(0,d.createTextVNode)(`主页`,-1)]]),_:1},8,[`shake`])]),_:1},8,[`disabled`]),(0,d.createElementVNode)(`div`,{style:(0,d.normalizeStyle)({height:`${(0,d.unref)(f)-90}px`}),class:`menu-tree-wrapper`},[(0,d.createVNode)(kn,{options:(0,d.unref)(r).rootNode?.children||[],current:o.value,onGoto:h},null,8,[`options`,`current`])],4)]),_:1},8,[`modelValue`,`onOpen`])],64)}}}),dr={key:1,class:`right`},fr=(0,d.defineComponent)({__name:`LoginForm`,emits:[`retrieve`],setup(e,{expose:t,emit:n}){let r=n,{username_label:i,sign_in_only:a}=Q(),{validate:o}=Yn(),s=(0,d.ref)({is_sign_in:!0,username:``,email:``,password:``,$password:``});function c(){r(`retrieve`)}let l=()=>(!i.value&&!s.value.is_sign_in&&(s.value.email=s.value.username),o(s.value)?s.value:null),u=[{label:`登录系统`,value:!0},{label:`注册账号`,value:!1}];return t({getData:l}),(e,t)=>{let n=(0,d.resolveComponent)(`el-segmented`),r=(0,d.resolveComponent)(`el-input`),o=(0,d.resolveComponent)(`el-form-item`),l=(0,d.resolveComponent)(`el-form`),f=(0,d.resolveComponent)(`el-card`);return(0,d.openBlock)(),(0,d.createBlock)(f,{shadow:`never`},(0,d.createSlots)({default:(0,d.withCtx)(()=>[(0,d.createVNode)(l,{"label-position":`top`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{label:(0,d.unref)(i)||`邮箱`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{modelValue:s.value.username,"onUpdate:modelValue":t[1]||=e=>s.value.username=e},null,8,[`modelValue`])]),_:1},8,[`label`]),(0,d.unref)(i)&&!s.value.is_sign_in?((0,d.openBlock)(),(0,d.createBlock)(o,{key:0,label:`邮箱`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{modelValue:s.value.email,"onUpdate:modelValue":t[2]||=e=>s.value.email=e},null,8,[`modelValue`])]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(o,{label:`登录密码`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{modelValue:s.value.password,"onUpdate:modelValue":t[3]||=e=>s.value.password=e,type:`password`,"show-password":``},null,8,[`modelValue`])]),_:1}),s.value.is_sign_in?((0,d.openBlock)(),(0,d.createElementBlock)(`div`,dr,[(0,d.createVNode)((0,d.unref)(w),{type:`info`,onClick:c},{default:(0,d.withCtx)(()=>[...t[5]||=[(0,d.createTextVNode)(`找回密码 `,-1)]]),_:1})])):((0,d.openBlock)(),(0,d.createBlock)(o,{key:2,label:`确认密码`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(r,{modelValue:s.value.$password,"onUpdate:modelValue":t[4]||=e=>s.value.$password=e,type:`password`,"show-password":``},null,8,[`modelValue`])]),_:1}))]),_:1})]),_:2},[(0,d.unref)(a)?void 0:{name:`header`,fn:(0,d.withCtx)(()=>[(0,d.createVNode)(n,{block:``,options:u,modelValue:s.value.is_sign_in,"onUpdate:modelValue":t[0]||=e=>s.value.is_sign_in=e},null,8,[`modelValue`])]),key:`0`}]),1024)}}}),pr=(0,d.defineComponent)({__name:`ProfileManage`,setup(e,{expose:t}){let{account:n,user:r}=F(),{$message:i}=P(),{manager:a}=U(r.value.user_entity||`valar.Valar`),{post:o}=I(),s=(0,d.ref)(),c=(0,d.ref)({}),l=(0,d.ref)([]);(0,d.onMounted)(()=>{o(`valar/load_user`).then(e=>s.value=e).then(()=>a.meta(`edit`)).then(e=>l.value=e.fields)});async function u(){return(0,g.isEmpty)(c.value)||await a.save_one(c.value),!0}return t({save:u}),(e,t)=>s.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(Y),{key:0,original:s.value,modelValue:c.value,"onUpdate:modelValue":t[0]||=e=>c.value=e,fields:l.value},null,8,[`original`,`modelValue`,`fields`])):(0,d.createCommentVNode)(``,!0)}}),mr={key:0},hr=(0,d.defineComponent)({__name:`PasswordManage`,setup(e,{expose:t}){let n=(0,d.ref)(),{user:r,account:i}=F(),a=(0,d.ref)({old_password:`12345678`,new_password:`19870120`,$new_password:`19870120`}),o=[{required:!0,message:`不能为空`,trigger:`blur`},{min:8,max:32,message:`密码长度应介于8-32位`,trigger:`blur`}],s={old_password:o,new_password:o,$new_password:o},{$message:c}=P(),{post:l}=I();async function u(){let{old_password:e,new_password:t,$new_password:r}=a.value;if(t!==r)return c.warning(`两次输入的密码不一致`),!1;let i=!1;return await n.value?.validate(e=>{i=e}),i?await l(`valar/change_password`,{old_password:e,new_password:t}):!1}return t({save:u}),(e,t)=>{let r=(0,d.resolveComponent)(`el-alert`),o=(0,d.resolveComponent)(`el-input`),c=(0,d.resolveComponent)(`el-form-item`),l=(0,d.resolveComponent)(`el-form`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.unref)(i).isTemporal?((0,d.openBlock)(),(0,d.createBlock)(r,{key:0,closable:!1,type:`warning`,style:{"margin-bottom":`15px`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`warning`,"icon-size":`lg`,shake:``},{default:(0,d.withCtx)(()=>[...t[3]||=[(0,d.createTextVNode)(`账户存在临时密码,请尽快修改密码。`,-1)]]),_:1})]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(l,{ref_key:`formRef`,ref:n,"label-position":`top`,model:a.value,rules:s},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(c,{prop:`old_password`},{label:(0,d.withCtx)(()=>[t[4]||=(0,d.createTextVNode)(` 旧密码`,-1),(0,d.unref)(i).isTemporal?((0,d.openBlock)(),(0,d.createElementBlock)(`span`,mr,` (或临时密码)`)):(0,d.createCommentVNode)(``,!0)]),default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{type:`password`,"show-password":``,modelValue:a.value.old_password,"onUpdate:modelValue":t[0]||=e=>a.value.old_password=e},null,8,[`modelValue`])]),_:1}),(0,d.createVNode)(c,{label:`新密码`,prop:`new_password`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{type:`password`,"show-password":``,modelValue:a.value.new_password,"onUpdate:modelValue":t[1]||=e=>a.value.new_password=e},null,8,[`modelValue`])]),_:1}),(0,d.createVNode)(c,{label:`确认新密码`,prop:`$new_password`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(o,{type:`password`,"show-password":``,modelValue:a.value.$new_password,"onUpdate:modelValue":t[2]||=e=>a.value.$new_password=e},null,8,[`modelValue`])]),_:1})]),_:1},8,[`model`])],64)}}}),gr=(0,d.defineComponent)({__name:`AccountManage`,setup(e,{expose:t}){let{user:n,account:r}=F(),{username_label:i}=Q(),{$message:a}=P(),{manager:o}=U(`valar.Account`),s=(0,d.ref)(),c=(0,d.ref)({}),l=(0,d.ref)([]);(0,d.onMounted)(async()=>{s.value=await o.fetch(r.value.id);let e=await o.meta(`edit`);l.value=e.fields.map(e=>(e.prop===`username`&&i.value&&(e.label=i.value),e))});async function u(){return(0,g.isEmpty)(c.value)?(a.warning(`还未补充邮箱信息`),!1):Jn.test(c.value.email)?(await o.save_one(c.value),!0):(a.warning(`邮箱格式错误`),!1)}return t({save:u}),(e,t)=>{let n=(0,d.resolveComponent)(`el-alert`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.unref)(r).hasEmail?(0,d.createCommentVNode)(``,!0):((0,d.openBlock)(),(0,d.createBlock)(n,{key:0,closable:!1,type:`warning`,style:{"margin-bottom":`15px`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`warning`,"icon-size":`lg`,shake:``},{default:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createTextVNode)(`请补充邮箱,否则将无法使用密码找回功能。`,-1)]]),_:1})]),_:1})),s.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(Y),{key:1,original:s.value,modelValue:c.value,"onUpdate:modelValue":t[0]||=e=>c.value=e,fields:l.value},null,8,[`original`,`modelValue`,`fields`])):(0,d.createCommentVNode)(``,!0)],64)}}}),_r=(0,d.defineComponent)({__name:`AuthDropdown`,setup(e){let{user:t,account:n,sign_in:r}=F(),i=(0,d.ref)(),a=(0,d.ref)(),o=(0,d.shallowRef)();function s(e){let{component:t,title:n,width:r}=f[e]||{};t&&(o.value=t,i.value?.open({key:e},{width:r,title:n}))}let{post:c}=I();async function l(e){let t=await a.value?.save();if(t){let e=await c(`valar/retokenize`);r(e)}return t}let u=(0,d.computed)(()=>{let{hasUser:e,hasEmail:t,isTemporal:r}=n.value;return!e||!t||r}),f={profile:{component:pr,title:`个人信息管理`,width:600},account:{component:gr,title:`账户信息管理`,width:600},password:{component:hr,title:`密码管理`,width:350}};return(e,r)=>{let c=(0,d.resolveComponent)(`el-text`),f=(0,d.resolveComponent)(`el-dropdown-item`),p=(0,d.resolveComponent)(`el-dropdown-menu`),m=(0,d.resolveComponent)(`el-dropdown`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.createVNode)(m,{placement:`bottom-start`,trigger:`hover`},{dropdown:(0,d.withCtx)(()=>[(0,d.createVNode)(p,{style:{width:`130px`}},{default:(0,d.withCtx)(()=>[(0,d.unref)(t)?.user_entity?((0,d.openBlock)(),(0,d.createBlock)(f,{key:0,onClick:r[0]||=e=>s(`profile`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`address-card`,bounce:!(0,d.unref)(n).hasUser},{default:(0,d.withCtx)(()=>[...r[3]||=[(0,d.createTextVNode)(`\xA0个人信息`,-1)]]),_:1},8,[`bounce`])]),_:1})):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)(f,{onClick:r[1]||=e=>s(`account`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`envelope`,bounce:!(0,d.unref)(n).hasEmail},{default:(0,d.withCtx)(()=>[...r[4]||=[(0,d.createTextVNode)(`\xA0账户信息`,-1)]]),_:1},8,[`bounce`])]),_:1}),(0,d.createVNode)(f,{onClick:r[2]||=e=>s(`password`)},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`key`,bounce:(0,d.unref)(n).isTemporal},{default:(0,d.withCtx)(()=>[...r[5]||=[(0,d.createTextVNode)(`\xA0修改密码`,-1)]]),_:1},8,[`bounce`])]),_:1})]),_:1})]),default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(w),{icon:u.value?`user-edit`:`user`,type:u.value?`warning`:`info`,shake:u.value,"icon-size":`lg`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(c,{tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(t)?.name||(0,d.unref)(n).username),1)]),_:1})]),_:1},8,[`icon`,`type`,`shake`])]),_:1}),(0,d.createVNode)((0,d.unref)($),{ref_key:`dialogRef`,ref:i,confirm:l},{default:(0,d.withCtx)(({data:e})=>[o.value?((0,d.openBlock)(),(0,d.createBlock)((0,d.resolveDynamicComponent)(o.value),{key:0,ref_key:`formRef`,ref:a},null,512)):(0,d.createCommentVNode)(``,!0)]),_:1},512)],64)}}}),vr=(0,d.defineComponent)({__name:`FrameAuth`,setup(e){let t=(0,d.ref)(),n=(0,d.ref)(),r=(0,d.ref)(),{account:i,is_login:a}=F(),{sign:o,exit:s}=Yn();function c(){t.value?.open()}async function l(e){let t=r.value?.getData();if(t)return await o(t)}let u={email:[{validator:(e,t,n)=>{t===``?n(Error(`请输入邮箱`)):Jn.test(t)?n():n(Error(`邮箱格式错误`))},trigger:`blur`}]},f=(0,d.ref)(),{post:p}=I();async function m(e){let t=!1;return await f.value?.validate(e=>{t=e}),t?await p(`valar/retrieve_password`,e):!1}return(e,o)=>{let p=(0,d.resolveComponent)(`el-space`),h=(0,d.resolveComponent)(`el-input`),g=(0,d.resolveComponent)(`el-form-item`),_=(0,d.resolveComponent)(`el-form`);return(0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[(0,d.unref)(a)?((0,d.openBlock)(),(0,d.createBlock)(p,{key:0},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(_r),(0,d.unref)(i)?.is_admin?((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(w),{key:0,icon:e.$route.path===`/morghulis_system`?`rotate-backward`:`gear`,type:e.$route.path===`/morghulis_system`?`warning`:`success`,onClick:o[0]||=t=>e.$route.path===`/morghulis_system`?e.$router.back():e.$router.push(`/morghulis_system`)},null,8,[`icon`,`type`])):(0,d.createCommentVNode)(``,!0),(0,d.createVNode)((0,d.unref)(w),{icon:`right-from-bracket`,onClick:(0,d.unref)(s),type:`info`,"icon-size":`lg`},{default:(0,d.withCtx)(()=>[...o[2]||=[(0,d.createTextVNode)(`退出 `,-1)]]),_:1},8,[`onClick`])]),_:1})):((0,d.openBlock)(),(0,d.createBlock)((0,d.unref)(w),{key:1,icon:`right-to-bracket`,size:`small`,shake:``,"icon-size":`xl`,onClick:c},{default:(0,d.withCtx)(()=>[...o[3]||=[(0,d.createElementVNode)(`b`,null,`\xA0登录`,-1)]]),_:1})),(0,d.createVNode)((0,d.unref)($),{ref_key:`dialog`,ref:t,title:`登录系统`,width:`400`,confirm:l},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(fr,{ref_key:`form`,ref:r,onRetrieve:o[1]||=e=>n.value?.open({email:``})},null,512)]),_:1},512),(0,d.createVNode)((0,d.unref)($),{ref_key:`retrieveRef`,ref:n,title:`找回密码`,width:`300`,top:50,confirm:m},{default:(0,d.withCtx)(({data:e})=>[(0,d.createVNode)(_,{ref_key:`formRef`,ref:f,model:e,rules:u},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(g,{label:`邮箱`,"label-position":`top`,prop:`email`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(h,{modelValue:e.email,"onUpdate:modelValue":t=>e.email=t},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:2},1024)]),_:2},1032,[`model`])]),_:1},512)],64)}}}),yr=(0,d.defineComponent)({__name:`FrameNavigate`,emits:[`open`],setup(e,{emit:t}){let{model:n}=tr();(0,m.useRouter)();let r=(0,m.useRoute)(),i=t,a=(0,d.computed)(()=>r.path),o=(0,d.computed)(()=>{let e=Object.values(n.value.mapping),t=e.find(e=>e.path===a.value),r=[];for(;t&&t.id;)r.push(t),t=e.find(e=>e.id===t?.pid);return r.reverse()});function s(e){i(`open`)}return(e,t)=>{let n=(0,d.resolveComponent)(`el-breadcrumb-item`),i=(0,d.resolveComponent)(`el-breadcrumb`);return(0,d.openBlock)(),(0,d.createBlock)(i,{separator:`/`},{default:(0,d.withCtx)(()=>[(0,d.unref)(r).path===`/morghulis_system`?((0,d.openBlock)(),(0,d.createBlock)(n,{key:0},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`gear`},{default:(0,d.withCtx)(()=>[...t[1]||=[(0,d.createTextVNode)(`系统设置`,-1)]]),_:1})]),_:1})):((0,d.openBlock)(),(0,d.createBlock)(n,{key:1,to:{path:`/`}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`home`},{default:(0,d.withCtx)(()=>[...t[2]||=[(0,d.createTextVNode)(`主页`,-1)]]),_:1})]),_:1})),((0,d.openBlock)(!0),(0,d.createElementBlock)(d.Fragment,null,(0,d.renderList)(o.value,e=>((0,d.openBlock)(),(0,d.createElementBlock)(d.Fragment,null,[e.isLeaf?((0,d.openBlock)(),(0,d.createBlock)(n,{key:0,to:{path:e.path}},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{class:`pointer`,onClick:t[0]||=e=>s(e),icon:`bookmark`,"icon-size":`xs`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.name),1)]),_:2},1024)]),_:2},1032,[`to`])):((0,d.openBlock)(),(0,d.createBlock)(n,{key:1},{default:(0,d.withCtx)(()=>[(0,d.createVNode)((0,d.unref)(C),{icon:`bars-staggered`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)(e.name),1)]),_:2},1024)]),_:2},1024))],64))),256))]),_:1})}}}),br={class:`justified`,style:{height:`100%`}},xr={class:`justified`,style:{height:`100%`}},Sr=S((0,d.defineComponent)({__name:`MFrame`,setup(e){let{frame:t}=ir(),n=(0,d.computed)(()=>`${t.value.body}px`),r=(0,m.useRouter)(),{title:i}=Q(),a=(0,d.ref)();return(e,o)=>{let s=(0,d.resolveComponent)(`el-divider`),c=(0,d.resolveComponent)(`el-text`),l=(0,d.resolveComponent)(`el-space`),u=(0,d.resolveComponent)(`el-header`),f=(0,d.resolveComponent)(`router-view`),p=(0,d.resolveComponent)(`el-main`),m=(0,d.resolveComponent)(`el-link`),h=(0,d.resolveComponent)(`el-footer`),g=(0,d.resolveComponent)(`el-container`);return(0,d.openBlock)(),(0,d.createBlock)(g,{class:`container`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(u,{class:`header`,height:`${(0,d.unref)(t).header}px`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,br,[(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[(0,d.createVNode)(ur,{ref_key:`menuRef`,ref:a},null,512),(0,d.createVNode)(s,{direction:`vertical`,style:{"border-color":`#555555`}}),(0,d.createVNode)(c,{size:`large`,tag:`b`,class:`pointer`,onClick:o[0]||=e=>(0,d.unref)(r).push(`/`)},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(i)),1)]),_:1})]),_:1}),(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`tool`,{},void 0,!0),(0,d.createVNode)(vr)]),_:3})])]),_:3},8,[`height`]),(0,d.createVNode)(u,{class:`neck`,height:`${(0,d.unref)(t).neck}px`},{default:(0,d.withCtx)(()=>[(0,d.createElementVNode)(`div`,xr,[(0,d.createVNode)(yr,{onOpen:o[1]||=e=>a.value?.open()}),(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`tag`,{},void 0,!0)]),_:3})])]),_:3},8,[`height`]),(0,d.createVNode)(p,{class:`main`,style:(0,d.normalizeStyle)({height:n.value})},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(f)]),_:1},8,[`style`]),(0,d.createVNode)(h,{class:`footer center`,height:`${(0,d.unref)(t).footer}px`},{default:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`footer`,{},()=>[(0,d.createVNode)(c,{type:`info`},{default:(0,d.withCtx)(()=>[(0,d.createVNode)(l,null,{default:(0,d.withCtx)(()=>[o[4]||=(0,d.createTextVNode)(` Developed by `,-1),(0,d.createVNode)(m,{type:`info`,href:`https://pypi.org/project/valar/`,target:`_blank`},{default:(0,d.withCtx)(()=>[...o[2]||=[(0,d.createTextVNode)(`Valar`,-1)]]),_:1}),o[5]||=(0,d.createTextVNode)(` and `,-1),(0,d.createVNode)(m,{type:`info`,href:`https://www.npmjs.com/package/morghulis`,target:`_blank`},{default:(0,d.withCtx)(()=>[...o[3]||=[(0,d.createTextVNode)(`Morghulis `,-1)]]),_:1}),o[6]||=(0,d.createTextVNode)(` framework. `,-1)]),_:1})]),_:1})],!0)]),_:3},8,[`height`])]),_:3})}}}),[[`__scopeId`,`data-v-1b59bf74`]]),Cr=(0,d.defineComponent)({__name:`MApp`,setup(e){let{title:t}=Q(),{open:n,status:r}=L();return(e,i)=>{let a=(0,d.resolveComponent)(`el-text`),o=(0,d.resolveComponent)(`el-result`),s=(0,d.resolveComponent)(`el-button`);return(0,d.unref)(r).code===200?((0,d.openBlock)(),(0,d.createBlock)(Sr,{key:0},{tool:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`tool`)]),footer:(0,d.withCtx)(()=>[(0,d.renderSlot)(e.$slots,`footer`)]),_:3})):(0,d.unref)(r).count===0||(0,d.unref)(r).code===400?((0,d.openBlock)(),(0,d.createBlock)(o,{key:1,icon:`warning`},{title:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{size:`large`},{default:(0,d.withCtx)(()=>[...i[0]||=[(0,d.createTextVNode)(`连接中...`,-1)]]),_:1})]),"sub-title":(0,d.withCtx)(()=>[(0,d.createVNode)(a,null,{default:(0,d.withCtx)(()=>[i[1]||=(0,d.createTextVNode)(`努力连接 `,-1),(0,d.createElementVNode)(`b`,null,(0,d.toDisplayString)((0,d.unref)(t)),1),i[2]||=(0,d.createTextVNode)(` 服务器`,-1)]),_:1})]),extra:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{type:`primary`,tag:`b`},{default:(0,d.withCtx)(()=>[(0,d.createTextVNode)((0,d.toDisplayString)((0,d.unref)(r).count)+` / `+(0,d.toDisplayString)((0,d.unref)(r).retries)+` 次 `,1)]),_:1})]),_:1})):(0,d.unref)(r).code===404?((0,d.openBlock)(),(0,d.createBlock)(o,{key:2,icon:`error`},{title:(0,d.withCtx)(()=>[(0,d.createVNode)(a,{size:`large`},{default:(0,d.withCtx)(()=>[...i[3]||=[(0,d.createTextVNode)(`连接已断开`,-1)]]),_:1})]),"sub-title":(0,d.withCtx)(()=>[(0,d.createVNode)(a,null,{default:(0,d.withCtx)(()=>[i[4]||=(0,d.createTextVNode)(`无法连接 `,-1),(0,d.createElementVNode)(`b`,null,(0,d.toDisplayString)((0,d.unref)(t)),1),i[5]||=(0,d.createTextVNode)(` 服务器`,-1)]),_:1})]),extra:(0,d.withCtx)(()=>[(0,d.createVNode)(s,{type:`primary`,onClick:(0,d.unref)(n)},{default:(0,d.withCtx)(()=>[...i[6]||=[(0,d.createTextVNode)(`手动连接`,-1)]]),_:1},8,[`onClick`])]),_:1})):(0,d.createCommentVNode)(``,!0)}}}),wr=lr,Tr=e=>(l.library.add(u.fas),{install(t){let{install:n}=Q();n(t,e),Object.entries(wr).forEach(([e,n])=>{t.component(e,n)})}});exports.DataTable=X,exports.DataTree=Z,exports.DataWrapper=Qe,exports.MApp=Cr,exports.MButton=w,exports.MCell=Ye,exports.MCharts=cr,exports.MDialog=$,exports.MForm=Y,exports.MIcon=C,exports.MObjectEditor=J,exports.MOptionContent=O,exports.MOptionItem=k,exports.MOptionList=A,exports.MPopover=K,exports.MRichEditor=qe,exports.MText=T,exports.MTransferEditor=q,exports.MUploader=xn,exports.createMorghulis=Tr,exports.default=Tr,exports.useAuth=Yn,exports.useChannel=z,exports.useChannelContainer=N,exports.useDao=U,exports.useData=Qn,exports.useExcel=$n,exports.useFeedback=P,exports.useFrameSize=ir,exports.useMenu=tr,exports.useMetaQuery=fe,exports.useOptionState=Q,exports.usePagination=gt,exports.usePaster=an,exports.usePluginButton=rr,exports.usePluginColumn=nr,exports.useRequest=I,exports.useSocket=L,exports.useSocketCallback=R,exports.useUserState=F,exports.useValar=me;
|