@ximatai/muyun-web-app 0.26.7 → 0.26.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/dist/DictionaryManagementView-CtIQpqVA.js +1035 -0
  2. package/dist/MenuManagementView-DJhkN2sG.js +837 -0
  3. package/dist/{MetadataOrchestrationView-B-CPudJl.js → MetadataOrchestrationView-CzhAgEdX.js} +210 -204
  4. package/dist/{ModuleActionManagementView-CmVj0e0C.js → ModuleActionManagementView-CM2d8jPO.js} +69 -69
  5. package/dist/RoleAuthorizationView-jn_WUCeg.js +599 -0
  6. package/dist/{RoleDetailWorkspaceView-DmJlJgAj.js → RoleDetailWorkspaceView-CzaQ3Dz1.js} +1 -1
  7. package/dist/RoleManagementView-nY7qu4GF.js +1951 -0
  8. package/dist/{SystemUserDetailWorkspaceView-U6Ij0US1.js → SystemUserDetailWorkspaceView-CBvqmWvP.js} +1 -1
  9. package/dist/SystemUserManagementView-AEomKvK7.js +887 -0
  10. package/dist/index.css +1 -1
  11. package/dist/index.js +651 -6970
  12. package/dist/{platform-components-DKKWbNrz.js → platform-components-CIi6GdC9.js} +5292 -3634
  13. package/dist/types/App.vue.d.ts +1 -0
  14. package/dist/types/app/StaticRoutePageHost.vue.d.ts +11 -0
  15. package/dist/types/app/loginTenant.d.ts +1 -1
  16. package/dist/types/app/menuRouteCompiler.d.ts +45 -0
  17. package/dist/types/app/menuRouteRuntime.d.ts +24 -0
  18. package/dist/types/app/pageRouteContext.d.ts +24 -0
  19. package/dist/types/app/routeDiagnosticsStore.d.ts +10 -0
  20. package/dist/types/app/router.d.ts +15 -0
  21. package/dist/types/app/staticRouteDefinitions.d.ts +25 -0
  22. package/dist/types/app/workbenchRouteSync.d.ts +1 -1
  23. package/dist/types/app/workbenchStartup.d.ts +9 -5
  24. package/dist/types/consumer/AppWorkbenchShell.vue.d.ts +2 -2
  25. package/dist/types/consumer/index.d.ts +7 -4
  26. package/dist/types/dynamic-page-runtime/DynamicModuleHost.vue.d.ts +3 -10
  27. package/dist/types/{views/EmployeeEmploymentDrawer.vue.d.ts → dynamic-page-runtime/DynamicModuleWorkspaceDetailView.vue.d.ts} +3 -7
  28. package/dist/types/dynamic-page-runtime/DynamicRecordDetailActions.vue.d.ts +39 -0
  29. package/dist/types/dynamic-page-runtime/ManagedDetailRelationInlineSurface.vue.d.ts +40 -0
  30. package/dist/types/dynamic-page-runtime/ManagedDetailRelationSurface.vue.d.ts +14 -0
  31. package/dist/types/dynamic-page-runtime/ModulePageDetailRelations.vue.d.ts +26 -0
  32. package/dist/types/dynamic-page-runtime/ModulePageFormContributionRenderer.vue.d.ts +12 -0
  33. package/dist/types/dynamic-page-runtime/ModulePageHost.vue.d.ts +14 -0
  34. package/dist/types/dynamic-page-runtime/ModulePageListExpansionSurface.vue.d.ts +19 -0
  35. package/dist/types/dynamic-page-runtime/ModulePageListRelationExpansion.vue.d.ts +13 -0
  36. package/dist/types/dynamic-page-runtime/ModulePageListRelationExpansions.vue.d.ts +16 -0
  37. package/dist/types/dynamic-page-runtime/ModulePageRecordContent.vue.d.ts +42 -0
  38. package/dist/types/dynamic-page-runtime/ModuleRecordDetailActions.vue.d.ts +41 -0
  39. package/dist/types/dynamic-page-runtime/NavigatorManagementEditor.vue.d.ts +44 -0
  40. package/dist/types/dynamic-page-runtime/PageNavigatorExplorer.vue.d.ts +50 -0
  41. package/dist/types/dynamic-page-runtime/RecordFormSurface.vue.d.ts +31 -0
  42. package/dist/types/dynamic-page-runtime/composables/useManagedDetailRelationRuntime.d.ts +30 -0
  43. package/dist/types/dynamic-page-runtime/composables/useModulePageActions.d.ts +13 -0
  44. package/dist/types/dynamic-page-runtime/composables/useModulePageBootstrap.d.ts +17 -0
  45. package/dist/types/dynamic-page-runtime/composables/useModulePageDetailActionRuntime.d.ts +48 -0
  46. package/dist/types/dynamic-page-runtime/composables/useModulePageDetailExtensionRuntime.d.ts +26 -0
  47. package/dist/types/dynamic-page-runtime/composables/useModulePageFormContributionRuntime.d.ts +22 -0
  48. package/dist/types/dynamic-page-runtime/composables/useModulePageListSession.d.ts +41 -0
  49. package/dist/types/dynamic-page-runtime/composables/useNavigatorRuntime.d.ts +1324 -0
  50. package/dist/types/dynamic-page-runtime/composables/useRecordEditingSession.d.ts +22 -0
  51. package/dist/types/dynamic-page-runtime/detailSurfacePreference.d.ts +10 -0
  52. package/dist/types/dynamic-page-runtime/dynamicModuleDetailStateModel.d.ts +5 -12
  53. package/dist/types/dynamic-page-runtime/formComputeCoordinator.d.ts +18 -0
  54. package/dist/types/dynamic-page-runtime/index.d.ts +4 -2
  55. package/dist/types/dynamic-page-runtime/listPageSizePreference.d.ts +10 -0
  56. package/dist/types/dynamic-page-runtime/moduleDetailStateModel.d.ts +12 -0
  57. package/dist/types/dynamic-page-runtime/modulePageEnhancements.d.ts +218 -6
  58. package/dist/types/dynamic-page-runtime/modulePageNavigation.d.ts +1 -1
  59. package/dist/types/dynamic-page-runtime/navigatorVisibility.d.ts +6 -0
  60. package/dist/types/dynamic-page-runtime/pageContextRuntime.d.ts +6 -0
  61. package/dist/types/dynamic-page-runtime/recordDetailController.d.ts +35 -0
  62. package/dist/types/dynamic-page-runtime/relationFormComputeCoordinator.d.ts +9 -0
  63. package/dist/types/formula/FormulaRuntime.d.ts +29 -0
  64. package/dist/types/platform-admin-runtime/WorkspaceViewDrawer.vue.d.ts +1 -0
  65. package/dist/types/{views/EmployeeDetailWorkspaceView.vue.d.ts → platform-admin-runtime/employee/EmployeeAccountDrawer.vue.d.ts} +2 -1
  66. package/dist/types/platform-admin-runtime/employeeModulePageEnhancement.d.ts +3 -0
  67. package/dist/types/platform-admin-runtime/moduleOpenApi.d.ts +2 -0
  68. package/dist/types/platform-admin-runtime/passwordPolicyPageEnhancement.d.ts +6 -0
  69. package/dist/types/platform-admin-runtime/platformAdminRoutes.d.ts +1 -1
  70. package/dist/types/platform-admin-runtime/platformModulePageEnhancement.d.ts +9 -0
  71. package/dist/types/platform-admin-runtime/realtime.d.ts +2 -1
  72. package/dist/types/platform-admin-runtime/tenant/TenantApplicationConfigurationDrawer.vue.d.ts +7 -0
  73. package/dist/types/platform-admin-runtime/tenant/TenantApplicationsDetailSection.vue.d.ts +7 -0
  74. package/dist/types/platform-admin-runtime/tenantModulePageEnhancement.d.ts +7 -0
  75. package/dist/types/platform-admin-runtime/user/UserOnlineStatusCell.vue.d.ts +8 -0
  76. package/dist/types/platform-admin-runtime/user/UserPasswordDrawer.vue.d.ts +7 -0
  77. package/dist/types/platform-admin-runtime/user/UserSessionListExpansion.vue.d.ts +7 -0
  78. package/dist/types/platform-admin-runtime/user/useUserSessionRows.d.ts +23 -0
  79. package/dist/types/platform-admin-runtime/user/userOnlineStatusStore.d.ts +11 -0
  80. package/dist/types/platform-admin-runtime/userModulePageEnhancement.d.ts +7 -0
  81. package/dist/types/platform-components/BusinessNotificationPanel.vue.d.ts +12 -0
  82. package/dist/types/platform-components/CrudRecordListExplorer.vue.d.ts +10 -2
  83. package/dist/types/platform-components/DetailRelationListPanel.vue.d.ts +13 -0
  84. package/dist/types/{views/EmployeeManagementView.vue.d.ts → platform-components/DrawerTitleActions.vue.d.ts} +2 -2
  85. package/dist/types/platform-components/FileTransferUploader.vue.d.ts +7 -0
  86. package/dist/types/platform-components/ManagementPanelHeader.vue.d.ts +5 -3
  87. package/dist/types/platform-components/ManagementWorkspace.vue.d.ts +8 -2
  88. package/dist/types/platform-components/ModuleActionButton.vue.d.ts +5 -2
  89. package/dist/types/platform-components/RecordActionBar.vue.d.ts +1 -1
  90. package/dist/types/platform-components/RecordContentSectionHeading.vue.d.ts +17 -0
  91. package/dist/types/platform-components/RecordDetailDrawer.vue.d.ts +7 -1
  92. package/dist/types/platform-components/RecordDetailExtensionSection.vue.d.ts +8 -3
  93. package/dist/types/platform-components/RecordDetailFields.vue.d.ts +5 -0
  94. package/dist/types/platform-components/RecordDetailLayout.vue.d.ts +17 -7
  95. package/dist/types/platform-components/RecordDetailPanel.vue.d.ts +15 -5
  96. package/dist/types/platform-components/RecordExpandedSubtable.vue.d.ts +3 -0
  97. package/dist/types/platform-components/RecordFileReferenceTransfer.vue.d.ts +4 -0
  98. package/dist/types/platform-components/RecordFormFields.vue.d.ts +29 -1
  99. package/dist/types/platform-components/RecordImageFileReferencePreview.vue.d.ts +11 -0
  100. package/dist/types/platform-components/RecordListExpansionSurface.vue.d.ts +13 -0
  101. package/dist/types/platform-components/RecordListExplorer.vue.d.ts +4 -2
  102. package/dist/types/platform-components/RecordModeDrawer.vue.d.ts +6 -2
  103. package/dist/types/platform-components/RecordMultiPicker.vue.d.ts +12 -2
  104. package/dist/types/platform-components/RecordPanelButton.vue.d.ts +2 -0
  105. package/dist/types/platform-components/RecordPicker.vue.d.ts +10 -2
  106. package/dist/types/platform-components/RecordQueryListPanel.vue.d.ts +42 -7
  107. package/dist/types/platform-components/RecordRelationTabs.vue.d.ts +14 -0
  108. package/dist/types/platform-components/RecordSelectionCheckbox.vue.d.ts +13 -0
  109. package/dist/types/platform-components/RecordStatusSwitch.vue.d.ts +3 -0
  110. package/dist/types/platform-components/StaticManagementLayout.vue.d.ts +21 -7
  111. package/dist/types/platform-components/TreeRecordExplorer.vue.d.ts +7 -2
  112. package/dist/types/platform-components/UserSessionExpandedSubtable.vue.d.ts +2 -0
  113. package/dist/types/platform-components/drawerTitleActions.d.ts +11 -0
  114. package/dist/types/platform-components/index.d.ts +15 -5
  115. package/dist/types/platform-components/managementWorkspaceLayout.d.ts +14 -0
  116. package/dist/types/platform-components/optionFieldOptionCache.d.ts +3 -0
  117. package/dist/types/platform-components/recordDetailFieldModel.d.ts +2 -0
  118. package/dist/types/platform-components/recordFormFieldModel.d.ts +69 -6
  119. package/dist/types/platform-components/recordPickerConstraints.d.ts +2 -0
  120. package/dist/types/platform-components/recordPickerModel.d.ts +6 -2
  121. package/dist/types/platform-components/recycleBinState.d.ts +2 -0
  122. package/dist/types/platform-components/scopedTreeModuleContext.d.ts +11 -0
  123. package/dist/types/platform-workbench/Workbench.vue.d.ts +2 -2
  124. package/dist/types/platform-workbench/index.d.ts +4 -2
  125. package/dist/types/platform-workbench/legacyPageHostTypeCompatibility.d.ts +6 -0
  126. package/dist/types/platform-workbench/menuNavigation.d.ts +26 -1
  127. package/dist/types/platform-workbench/modulePageWorkspaceViews.d.ts +7 -0
  128. package/dist/types/platform-workbench/pageCacheKey.d.ts +2 -0
  129. package/dist/types/platform-workbench/pageHostRegistry.d.ts +1 -1
  130. package/dist/types/platform-workbench/workbenchLayout.d.ts +36 -0
  131. package/dist/types/platform-workbench/workbenchNavigation.d.ts +16 -1
  132. package/dist/types/platform-workbench/workspaceViewHost.d.ts +2 -0
  133. package/dist/types/views/PasswordPolicyPreview.vue.d.ts +7 -0
  134. package/dist/types/views/RoleAccountGrantDrawer.vue.d.ts +1 -0
  135. package/dist/types/views/RoleAuthorizationView.vue.d.ts +2 -0
  136. package/dist/types/views/RoleEmploymentGrantDrawer.vue.d.ts +1 -0
  137. package/dist/types/views/{UserDetailWorkspaceView.vue.d.ts → UserDetailRouteView.vue.d.ts} +3 -2
  138. package/dist/types/views/UserManagementView.vue.d.ts +1 -6
  139. package/dist/types/views/menuManagementState.d.ts +2 -0
  140. package/dist/types/views/userDetailStateModel.d.ts +1 -3
  141. package/dist/types/views/userManagementRouteState.d.ts +11 -0
  142. package/dist/types/vue-ui-antdv/components/UiButton.vue.d.ts +4 -1
  143. package/dist/types/vue-ui-antdv/components/UiDataTable.vue.d.ts +1 -1
  144. package/dist/types/vue-ui-antdv/components/UiIcon.vue.d.ts +1 -1
  145. package/dist/types/vue-ui-antdv/components/UiInput.vue.d.ts +2 -1
  146. package/dist/types/vue-ui-antdv/components/UiModal.vue.d.ts +1 -1
  147. package/dist/types/vue-ui-antdv/components/UiRadioGroup.vue.d.ts +18 -0
  148. package/dist/types/vue-ui-antdv/components/UiRecordExplorerItem.vue.d.ts +2 -2
  149. package/dist/types/vue-ui-antdv/components/UiSelect.vue.d.ts +1 -1
  150. package/dist/types/vue-ui-antdv/components/UiTree.vue.d.ts +4 -2
  151. package/dist/types/vue-ui-antdv/components/UiTreeSelect.vue.d.ts +7 -1
  152. package/dist/types/vue-ui-antdv/index.d.ts +5 -2
  153. package/dist/types/web-contracts/index.d.ts +408 -24
  154. package/dist/types/web-core/businessNotifications.d.ts +4 -0
  155. package/dist/types/web-core/index.d.ts +2 -0
  156. package/dist/types/web-core/module/abilities.d.ts +7 -7
  157. package/dist/types/web-core/module/moduleContext.d.ts +6 -3
  158. package/dist/types/web-core/module/runtimeContext.d.ts +5 -1
  159. package/dist/types/web-core/module/staticModuleClient.d.ts +42 -9
  160. package/dist/types/web-core/realtime.d.ts +5 -1
  161. package/dist/types/web-core/referenceResolveClient.d.ts +11 -0
  162. package/dist/workspaceViewSessions-B5g4M0rT.js +51 -0
  163. package/dist/workspaceViews-CkERhK0K.js +8748 -0
  164. package/package.json +1 -1
  165. package/dist/EmployeeDetailWorkspaceView-DYJLlkSz.js +0 -14
  166. package/dist/EmployeeManagementView-taxWUa7g.js +0 -1778
  167. package/dist/RoleAuthorizationView-q_6CsBYq.js +0 -592
  168. package/dist/RoleManagementView-HCa9rH0f.js +0 -1927
  169. package/dist/SystemUserManagementView-C1CkKivH.js +0 -758
  170. package/dist/UserDetailWorkspaceView-OPYvD6mH.js +0 -17
  171. package/dist/UserManagementView-gbCL9SnC.js +0 -965
  172. package/dist/pageRealtime-CzJlr9hs.js +0 -225
  173. package/dist/types/views/EmployeeDetailContent.vue.d.ts +0 -64
  174. package/dist/types/views/PositionManagementView.vue.d.ts +0 -3
  175. package/dist/types/views/TenantManagementView.vue.d.ts +0 -3
  176. package/dist/types/views/applicationManagementState.d.ts +0 -64
  177. package/dist/types/views/departmentManagementState.d.ts +0 -137
  178. package/dist/types/views/employeeDetailStateModel.d.ts +0 -39
  179. package/dist/types/views/employeeDetailWorkspaceSession.d.ts +0 -16
  180. package/dist/types/views/employeeDetailWorkspaceView.d.ts +0 -4
  181. package/dist/types/views/fieldSpecManagementState.d.ts +0 -80
  182. package/dist/types/views/fieldUiControlManagementState.d.ts +0 -76
  183. package/dist/types/views/moduleManagementState.d.ts +0 -76
  184. package/dist/types/views/organizationManagementState.d.ts +0 -64
  185. package/dist/types/views/positionManagementState.d.ts +0 -218
  186. package/dist/types/views/tenantManagementState.d.ts +0 -74
  187. package/dist/types/views/useEmployeeEmploymentRows.d.ts +0 -20
  188. package/dist/types/views/userDetailWorkspaceSession.d.ts +0 -14
  189. package/dist/types/views/userDetailWorkspaceView.d.ts +0 -4
  190. package/dist/useUserSessionRows-CBHEzRFQ.js +0 -128
  191. package/dist/workspaceViewSessions-DkB9myrq.js +0 -3252
  192. /package/dist/types/views/{ApplicationManagementView.vue.d.ts → DynamicModuleRouteView.vue.d.ts} +0 -0
  193. /package/dist/types/views/{DepartmentManagementView.vue.d.ts → ExternalRouteView.vue.d.ts} +0 -0
  194. /package/dist/types/views/{FieldSpecManagementView.vue.d.ts → ModuleOpenApiRouteView.vue.d.ts} +0 -0
  195. /package/dist/types/views/{FieldUiControlManagementView.vue.d.ts → OpenApiCatalogRouteView.vue.d.ts} +0 -0
  196. /package/dist/types/views/{ModuleManagementView.vue.d.ts → RouteDiagnosticsView.vue.d.ts} +0 -0
  197. /package/dist/types/views/{OrganizationManagementView.vue.d.ts → UserManagementListView.vue.d.ts} +0 -0
  198. /package/dist/types/views/{PasswordManagementView.vue.d.ts → WorkspaceRouteView.vue.d.ts} +0 -0
@@ -1,965 +0,0 @@
1
- import { A as e, C as t, Dt as n, F as r, I as i, M as a, Mt as ee, N as te, O as ne, S as re, Y as ie, _ as o, c as ae, i as s, jt as c, lt as l, m as oe, q as u, r as se, rt as d, st as f, tt as ce, ut as p, v as m, vt as le, w as ue, zn as h, zt as de } from "./platform-components-DKKWbNrz.js";
2
- import { d as g, i as fe, n as _, r as v, t as y, x as pe } from "./workspaceViewSessions-DkB9myrq.js";
3
- import { n as me } from "./currentUserContext-B1lj1WgF.js";
4
- import { f as b, n as he } from "./pageRealtime-CzJlr9hs.js";
5
- import { t as ge } from "./useUserSessionRows-CBHEzRFQ.js";
6
- import { Fragment as x, computed as S, createBlock as C, createCommentVNode as w, createElementBlock as T, createElementVNode as E, createTextVNode as D, createVNode as O, defineComponent as k, normalizeClass as _e, onBeforeUnmount as ve, onMounted as ye, openBlock as A, ref as j, toDisplayString as M, unref as N, watch as be, withCtx as P, withModifiers as F } from "vue";
7
- //#region src/platform-admin-runtime/sessionRecovery.ts
8
- var I;
9
- function L(e, t) {
10
- return I?.(e, t) ?? !1;
11
- }
12
- //#endregion
13
- //#region src/platform-admin-runtime/backendHttp.ts
14
- function xe(e = {}) {
15
- return h({
16
- baseUrl: void 0,
17
- token: e.withAuth === !1 ? void 0 : b(void 0),
18
- credentials: Se(void 0),
19
- onAuthenticationRequired: e.withAuth === !1 ? void 0 : (e, t) => L(e, t)
20
- });
21
- }
22
- function Se(e) {
23
- return e === "include" || e === "omit" || e === "same-origin" ? e : void 0;
24
- }
25
- //#endregion
26
- //#region src/views/UserDetailContent.vue?vue&type=script&setup=true&lang.ts
27
- var Ce = {
28
- key: 1,
29
- class: "user-detail-state"
30
- }, we = {
31
- key: 1,
32
- class: "user-password-reset-result"
33
- }, Te = { key: 0 }, R = { key: 1 }, Ee = { class: "user-form-label" }, De = /*#__PURE__*/ ee(/* @__PURE__ */ k({
34
- name: "UserDetailContent",
35
- __name: "UserDetailContent",
36
- props: {
37
- mode: {},
38
- draft: {},
39
- selectedUser: {},
40
- loading: { type: Boolean },
41
- loadFailed: { type: Boolean },
42
- saving: { type: Boolean },
43
- tenantTitle: {},
44
- fields: {},
45
- fallback: {},
46
- fieldNames: {},
47
- password: {},
48
- resetPasswordResult: {},
49
- displayOf: { type: Function },
50
- disabledOf: { type: Function }
51
- },
52
- emits: [
53
- "retry",
54
- "save",
55
- "update:field",
56
- "update:password"
57
- ],
58
- setup(t, { emit: r }) {
59
- let i = r;
60
- return (r, a) => t.loading ? (A(), C(N(p), {
61
- key: 0,
62
- class: "user-detail-state",
63
- tip: "加载用户详情"
64
- })) : t.loadFailed ? (A(), T("div", Ce, [O(N(l), {
65
- title: "详情加载失败",
66
- message: "无法加载用户详情,请重试"
67
- }), O(N(c), {
68
- type: "primary",
69
- "icon-name": "reload",
70
- onClick: a[0] ||= (e) => i("retry")
71
- }, {
72
- default: P(() => [...a[4] ||= [D("重试", -1)]]),
73
- _: 1
74
- })])) : t.mode === "view" || t.mode === "create" || t.selectedUser ? (A(), T(x, { key: 2 }, [
75
- t.mode === "view" ? (A(), C(N(e), {
76
- key: 0,
77
- record: t.draft,
78
- fields: t.fields,
79
- fallback: t.fallback,
80
- "display-of": t.displayOf
81
- }, null, 8, [
82
- "record",
83
- "fields",
84
- "fallback",
85
- "display-of"
86
- ])) : w("v-if", !0),
87
- t.mode === "view" && t.resetPasswordResult?.temporaryPassword ? (A(), T("div", we, [
88
- a[6] ||= E("span", null, "临时密码", -1),
89
- O(N(n), {
90
- value: t.resetPasswordResult.temporaryPassword,
91
- disabled: ""
92
- }, null, 8, ["value"]),
93
- t.resetPasswordResult.expiresAt ? (A(), T("small", Te, [a[5] ||= D(" 有效期至 ", -1), O(N(u), { value: t.resetPasswordResult.expiresAt }, null, 8, ["value"])])) : w("v-if", !0)
94
- ])) : w("v-if", !0),
95
- t.mode === "view" ? w("v-if", !0) : (A(), T("form", {
96
- key: 2,
97
- class: "user-form",
98
- onSubmit: a[3] ||= F((e) => i("save"), ["prevent"])
99
- }, [
100
- E("label", null, [a[7] ||= E("span", { class: "user-form-label" }, "当前租户", -1), O(N(n), {
101
- value: t.tenantTitle,
102
- disabled: ""
103
- }, null, 8, ["value"])]),
104
- t.mode === "resetPassword" ? w("v-if", !0) : (A(), C(N(m), {
105
- key: 0,
106
- record: t.draft,
107
- "field-names": t.fieldNames,
108
- fields: t.fields,
109
- fallback: t.fallback,
110
- disabled: t.saving,
111
- "disabled-of": t.disabledOf,
112
- "onUpdate:field": a[1] ||= (e, t) => i("update:field", e, t)
113
- }, null, 8, [
114
- "record",
115
- "field-names",
116
- "fields",
117
- "fallback",
118
- "disabled",
119
- "disabled-of"
120
- ])),
121
- t.mode === "create" || t.mode === "resetPassword" ? (A(), T("label", R, [E("span", Ee, M(t.mode === "create" ? "初始密码" : "新密码"), 1), O(N(n), {
122
- value: t.password,
123
- type: "password",
124
- disabled: t.saving,
125
- placeholder: "请输入密码",
126
- "allow-clear": "",
127
- "onUpdate:value": a[2] ||= (e) => i("update:password", e)
128
- }, null, 8, ["value", "disabled"])])) : w("v-if", !0)
129
- ], 32)),
130
- t.mode !== "create" && t.mode !== "resetPassword" ? (A(), C(N(o), {
131
- key: 3,
132
- record: t.draft
133
- }, null, 8, ["record"])) : w("v-if", !0)
134
- ], 64)) : w("v-if", !0);
135
- }
136
- }), [["__scopeId", "data-v-621edc75"]]);
137
- //#endregion
138
- //#region src/views/userDetailWorkspaceSession.ts
139
- function Oe(e, t) {
140
- return y(g, e, {
141
- ...t,
142
- selectedUser: { ...t.selectedUser },
143
- draft: { ...t.draft },
144
- tenant: t.tenant ? { ...t.tenant } : void 0
145
- });
146
- }
147
- function ke(e, t) {
148
- return _(g, e, t);
149
- }
150
- function Ae(e) {
151
- return v(g, e);
152
- }
153
- //#endregion
154
- //#region src/views/userDetailStateModel.ts
155
- function je(e) {
156
- return !e;
157
- }
158
- function Me(e) {
159
- return e.activeRequestSeq === e.requestSeq && e.selectedUserKey === e.recordId;
160
- }
161
- function Ne(e) {
162
- return e === "edit" ? "edit" : "view";
163
- }
164
- //#endregion
165
- //#region src/views/UserManagementView.vue
166
- var Pe = /*#__PURE__*/ ee(/* @__PURE__ */ k({
167
- name: "UserManagementView",
168
- __name: "UserManagementView",
169
- props: {
170
- recordId: {},
171
- mode: {}
172
- },
173
- setup(e) {
174
- let n = e, ee = de({ moduleAlias: "iam.tenant" }), o = de({ moduleAlias: "iam.user" }), c = me(), l = pe(), u = j(""), p = j(0), m = j(0), h = j(), _ = j(), v = j(), y = j(!1), b = j("view"), x = j(!1), E = j(!1), D = j(!1), k = j(0), M = j(X(void 0)), F = j(""), I = j(), L = j(te(void 0)), { expandedUserKeys: Se, handleUserListLoaded: Ce, handleUserRowExpand: we, handleUserSessionBusinessEvent: Te, loadUserSessions: R, resetUserSessionRows: Ee, userOnlineStatusTitle: Pe, userSessionState: z } = ge({
175
- context: o,
176
- source: "user-management"
177
- }), Fe = S(() => ee), B = S(() => !!n.recordId), V = S(() => B.value && l?.presentation === "drawer"), Ie = S(() => !B.value || V.value), H = S(() => c?.value?.system === !0), U = S(() => {
178
- let e = c?.value?.tenantId;
179
- if (!(c?.value?.system === !0 || !e)) return {
180
- id: e,
181
- title: e,
182
- alias: e,
183
- enabled: !0
184
- };
185
- }), Le = S(() => $e(o, h.value)), Re = S(() => [
186
- {
187
- key: "username",
188
- title: "账号",
189
- width: "180px"
190
- },
191
- {
192
- key: "onlineStatus",
193
- title: "在线状态",
194
- width: "100px",
195
- align: "center"
196
- },
197
- {
198
- key: "enabled",
199
- title: "状态",
200
- type: "enabledStatus",
201
- width: "90px",
202
- align: "center"
203
- },
204
- {
205
- key: "passwordStatus",
206
- title: "密码状态",
207
- width: "120px"
208
- },
209
- {
210
- key: "employeeNo",
211
- title: "职员工号",
212
- width: "150px"
213
- },
214
- {
215
- key: "employeeTitle",
216
- title: "职员姓名",
217
- width: "150px"
218
- },
219
- {
220
- key: "lastLoginAt",
221
- title: "最后登录时间",
222
- type: "datetime",
223
- width: "180px"
224
- }
225
- ]), ze = S(() => !!h.value?.id), Be = S(() => h.value ? `用户列表 - ${$(h.value)}` : "用户列表"), Ve = S(() => b.value === "create" ? "新建用户" : Dt(v.value ?? M.value)), He = S(() => {
226
- if (b.value !== "create") return Ot(v.value ?? M.value);
227
- }), W = S(() => {
228
- if (x.value) return !1;
229
- if (b.value === "create") return !!h.value?.id && o.can("create") === !0;
230
- if (b.value === "edit") return !!v.value?.id && o.can("update") === !0;
231
- if (b.value === "resetPassword") {
232
- let e = v.value?.id;
233
- return !!e && o.can("changePassword", e) === !0;
234
- }
235
- return !1;
236
- }), Ue = S(() => !v.value?.id || x.value ? !1 : o.can(Et(v.value)) === !0), We = S(() => b.value === "view" ? v.value?.id ? [
237
- {
238
- key: "edit",
239
- actionCode: "update",
240
- title: "编辑",
241
- iconName: "edit",
242
- disabled: D.value
243
- },
244
- {
245
- key: "resetPassword",
246
- actionCode: "changePassword",
247
- title: "修改密码",
248
- iconName: "lock",
249
- disabled: D.value
250
- },
251
- {
252
- key: "resetGeneratedPassword",
253
- actionCode: "resetPassword",
254
- title: "重置密码",
255
- iconName: "reload",
256
- disabled: D.value
257
- },
258
- {
259
- key: "delete",
260
- actionCode: "delete",
261
- title: "删除",
262
- iconName: "delete",
263
- danger: !0,
264
- disabled: D.value
265
- }
266
- ] : [] : [{
267
- key: "cancel",
268
- title: "取消",
269
- iconName: "close",
270
- disabled: D.value
271
- }, {
272
- key: "save",
273
- actionCode: b.value === "create" ? "create" : b.value === "resetPassword" ? "changePassword" : "update",
274
- title: "保存",
275
- iconName: "save",
276
- primary: !0,
277
- loading: D.value,
278
- disabled: !W.value
279
- }]), Ge = S(() => We.value), Ke = S(() => b.value === "view" ? v.value?.id ? [{
280
- key: "edit",
281
- actionCode: "update",
282
- title: "编辑",
283
- iconName: "edit",
284
- disabled: D.value
285
- }] : [] : b.value === "edit" ? [{
286
- key: "cancel",
287
- title: "取消",
288
- iconName: "close",
289
- disabled: D.value
290
- }, {
291
- key: "save",
292
- actionCode: "update",
293
- title: "保存",
294
- iconName: "save",
295
- primary: !0,
296
- loading: D.value,
297
- disabled: !W.value
298
- }] : []), qe = fe({
299
- view: g,
300
- input: S(() => {
301
- let e = v.value?.id, t = b.value;
302
- return e && (t === "view" || t === "edit") ? { recordId: e } : void 0;
303
- }),
304
- title: S(() => Dt(v.value)),
305
- eligibility: S(() => ({
306
- hasStableIdentity: !!v.value?.id && !x.value,
307
- busy: D.value
308
- })),
309
- beforePromote: async (e) => {
310
- let t = v.value;
311
- if (t) return await Oe(e, {
312
- selectedUser: t,
313
- draft: M.value,
314
- tenant: h.value,
315
- mode: b.value === "edit" ? "edit" : "view",
316
- password: F.value,
317
- resetPasswordResult: I.value
318
- }) === "accepted";
319
- },
320
- onPromoted: K
321
- });
322
- be(v, (e) => {
323
- !B.value || !e || l?.setTitle(Dt(e));
324
- }, { immediate: !0 });
325
- let Je = S(() => ({
326
- username: {
327
- label: "账号",
328
- required: !0,
329
- visible: !0,
330
- placeholder: "请输入登录账号"
331
- },
332
- enabled: {
333
- label: "允许登录",
334
- visible: !0,
335
- controlType: "enabledStatus"
336
- }
337
- })), Ye = S(() => ["username", "enabled"]), Xe;
338
- ye(() => {
339
- if (Qe(), n.recordId) {
340
- let e = { recordId: n.recordId };
341
- V.value || (Xe = ke(e, Ze));
342
- let t = Ae(e);
343
- if (t) {
344
- yt(t);
345
- return;
346
- }
347
- G({ id: n.recordId }, n.mode ?? "view");
348
- }
349
- }), ve(() => Xe?.());
350
- function Ze(e) {
351
- return b.value === "view" ? (yt(e), !0) : !1;
352
- }
353
- he(Te), be(U, nt, { immediate: !0 }), be(h, () => {
354
- B.value || (_.value = void 0, v.value = void 0, Ee(), M.value = X(h.value), K(), m.value += 1);
355
- });
356
- async function Qe() {
357
- try {
358
- L.value = te((await o.runtime.ready).uiDescriptor);
359
- } catch (e) {
360
- ce(e, {
361
- source: "user-management",
362
- phase: "load"
363
- });
364
- }
365
- }
366
- function $e(e, t) {
367
- return {
368
- ...e,
369
- crud: {
370
- ...e.crud,
371
- query: (n) => e.crud.query(et(n, t))
372
- }
373
- };
374
- }
375
- function et(e, t) {
376
- let n = [...e?.conditions ?? []];
377
- return t?.id && n.push({
378
- fieldName: "tenantId",
379
- operator: "EQ",
380
- values: [t.id]
381
- }), {
382
- ...e,
383
- conditions: n
384
- };
385
- }
386
- function tt(e) {
387
- !H.value || h.value || e.length > 0 && rt(e[0]);
388
- }
389
- function nt(e = U.value) {
390
- B.value || !e || H.value || h.value || (h.value = e);
391
- }
392
- function rt(e) {
393
- q() && (h.value = e);
394
- }
395
- function it(e) {
396
- e.key === "create" && st();
397
- }
398
- function at(e, t) {
399
- if (q()) {
400
- if (e.key === "view") {
401
- G(t, "view");
402
- return;
403
- }
404
- if (e.key === "edit") {
405
- G(t, "edit");
406
- return;
407
- }
408
- e.key === "delete" && vt(t);
409
- }
410
- }
411
- function ot(e) {
412
- q() && G(e, "view");
413
- }
414
- function st() {
415
- if (q()) {
416
- if (!h.value?.id) {
417
- d("请先选择租户", { phase: "validation" });
418
- return;
419
- }
420
- v.value = void 0, _.value = void 0, M.value = X(h.value), F.value = "", b.value = "create", x.value = !1, E.value = !1, k.value += 1, y.value = !0;
421
- }
422
- }
423
- async function G(e, t) {
424
- if (!q()) return;
425
- let n = String(e.id ?? "");
426
- if (!n) return;
427
- _.value = n, y.value = !0, b.value = t, v.value = void 0, M.value = Z(e), F.value = "", I.value = void 0, x.value = !0, E.value = !1;
428
- let r = k.value + 1;
429
- k.value = r;
430
- try {
431
- let e = await o.crud.view(n);
432
- if (!J(n, r)) return;
433
- if (!e?.id) {
434
- E.value = !0, d("未找到指定用户", {
435
- source: "user-management",
436
- phase: "load"
437
- });
438
- return;
439
- }
440
- let i = await ct(n);
441
- if (!J(n, r)) return;
442
- Y({
443
- ...e,
444
- ...i
445
- }, t);
446
- } catch (e) {
447
- J(n, r) && (E.value = !0, ce(e, {
448
- source: "user-management",
449
- phase: "load"
450
- }));
451
- } finally {
452
- J(n, r) && (x.value = !1);
453
- }
454
- }
455
- function ct(e) {
456
- return xe().request({ path: `/iam.user/${encodeURIComponent(e)}/employee-binding` });
457
- }
458
- function K() {
459
- D.value || (k.value += 1, x.value = !1, E.value = !1, y.value = !1, b.value = "view", F.value = "", I.value = void 0, M.value = v.value ? Z(v.value) : X(h.value), V.value && l?.dismiss());
460
- }
461
- function lt() {
462
- if (!D.value) {
463
- if (!v.value?.id || b.value === "create") {
464
- K();
465
- return;
466
- }
467
- M.value = Z(v.value), F.value = "", I.value = void 0, b.value = "view", x.value = !1, E.value = !1;
468
- }
469
- }
470
- function ut(e) {
471
- if (e.key === "cancel") {
472
- lt();
473
- return;
474
- }
475
- if (e.key === "save") {
476
- ft();
477
- return;
478
- }
479
- if (q()) {
480
- if (e.key === "edit" && v.value) {
481
- M.value = Z(v.value), b.value = "edit";
482
- return;
483
- }
484
- if (e.key === "resetPassword" && v.value) {
485
- F.value = "", I.value = void 0, b.value = "resetPassword";
486
- return;
487
- }
488
- if (e.key === "resetGeneratedPassword" && v.value) {
489
- mt();
490
- return;
491
- }
492
- e.key === "delete" && vt(v.value);
493
- }
494
- }
495
- function dt() {
496
- let e = String(M.value.id ?? _.value ?? "");
497
- if (!e) return;
498
- let t = b.value === "create" ? "view" : b.value;
499
- G({
500
- ...M.value,
501
- id: e
502
- }, t);
503
- }
504
- async function ft() {
505
- if (b.value === "resetPassword") {
506
- await pt();
507
- return;
508
- }
509
- await se({
510
- loading: D,
511
- mode: b.value === "edit" ? "edit" : "create",
512
- source: "user-management",
513
- validateContext: () => b.value === "create" && !h.value?.id ? "请先选择租户" : void 0,
514
- canSave: () => W.value,
515
- deniedMessage: "当前用户无权保存用户",
516
- createRecord: () => St(M.value, h.value, b.value, F.value),
517
- validateRecord: Ct,
518
- save: (e, t) => t === "edit" && v.value?.id ? o.crud.update(v.value.id, e) : o.crud.insert(e),
519
- onSaved: ({ record: e }) => {
520
- Y(e), m.value += 1;
521
- }
522
- });
523
- }
524
- async function pt() {
525
- await s({
526
- loading: D,
527
- source: "user-management",
528
- record: () => v.value?.id ? v.value : void 0,
529
- canExecute: () => W.value,
530
- deniedMessage: "当前用户无权重置用户密码",
531
- execute: (e) => o.http.request({
532
- method: "POST",
533
- path: `/iam.user/changePassword/${encodeURIComponent(e.id)}`,
534
- body: { password: F.value }
535
- }),
536
- onExecuted: async (e, t) => {
537
- Y(await o.crud.view(t.id)), m.value += 1;
538
- }
539
- });
540
- }
541
- async function mt() {
542
- await s({
543
- loading: D,
544
- source: "user-management",
545
- record: () => v.value?.id ? v.value : void 0,
546
- canExecute: (e) => o.can("resetPassword", e.id) === !0,
547
- deniedMessage: "当前用户无权重置用户密码",
548
- execute: (e) => o.http.request({
549
- method: "POST",
550
- path: `/iam.user/resetPassword/${encodeURIComponent(e.id)}`
551
- }),
552
- onExecuted: async (e, t) => {
553
- Y(await o.crud.view(t.id)), I.value = e, m.value += 1;
554
- }
555
- });
556
- }
557
- async function ht(e, t) {
558
- await s({
559
- loading: D,
560
- source: "user-management",
561
- record: () => e?.id ? e : void 0,
562
- canExecute: (e) => o.can("revokeSession", e.id) === !0 && !t.current,
563
- deniedMessage: "当前用户无权下线该登录会话",
564
- confirm: (e) => f({
565
- title: "下线登录会话",
566
- content: `确认下线用户「${Q(e)}」的该登录会话?`,
567
- okText: "下线",
568
- danger: !0
569
- }),
570
- execute: (e) => o.http.request({
571
- method: "POST",
572
- path: `/iam.user/${encodeURIComponent(e.id)}/sessions/${encodeURIComponent(t.id)}/revoke`
573
- }),
574
- onExecuted: (e, t) => {
575
- R(t.id), m.value += 1;
576
- }
577
- });
578
- }
579
- async function gt(e) {
580
- let t = bt(String(e.id ?? "")).map((e) => e.id);
581
- if (t.length === 0) {
582
- d("当前没有可下线的登录会话", {
583
- source: "user-management",
584
- phase: "validation"
585
- });
586
- return;
587
- }
588
- await s({
589
- loading: D,
590
- source: "user-management",
591
- record: () => e?.id ? e : void 0,
592
- canExecute: (e) => o.can("revokeSessions", e.id) === !0,
593
- deniedMessage: "当前用户无权批量下线登录会话",
594
- confirm: (e) => f({
595
- title: "批量下线登录会话",
596
- content: `确认下线用户「${Q(e)}」的 ${t.length} 个登录会话?`,
597
- okText: "全部下线",
598
- danger: !0
599
- }),
600
- execute: (e) => o.http.request({
601
- method: "POST",
602
- path: `/iam.user/${encodeURIComponent(e.id)}/sessions/revoke`,
603
- body: { sessionIds: t }
604
- }),
605
- onExecuted: (e, t) => {
606
- R(t.id), m.value += 1;
607
- }
608
- });
609
- }
610
- async function _t() {
611
- await s({
612
- loading: D,
613
- source: "user-management",
614
- record: () => v.value?.id ? v.value : void 0,
615
- canExecute: () => Ue.value,
616
- deniedMessage: "当前用户无权变更用户启停状态",
617
- execute: (e) => e.enabled === !1 ? o.crud.enable(e.id, { version: e.version }) : o.crud.disable(e.id, { version: e.version }),
618
- onExecuted: async (e, t) => {
619
- Y(await o.crud.view(t.id)), m.value += 1;
620
- }
621
- });
622
- }
623
- async function vt(e) {
624
- await s({
625
- loading: D,
626
- source: "user-management",
627
- record: () => e?.id ? e : void 0,
628
- canExecute: () => o.can("delete") === !0,
629
- deniedMessage: "当前用户无权删除用户",
630
- confirm: (e) => f({
631
- title: "删除用户",
632
- content: `确认删除用户「${Q(e)}」?`,
633
- okText: "删除",
634
- danger: !0
635
- }),
636
- execute: (e) => o.crud.delete(String(e.id), { version: e.version }),
637
- onExecuted: (e, t) => {
638
- _.value === String(t.id) && (_.value = void 0, v.value = void 0, M.value = X(h.value), y.value = !1, b.value = "view", x.value = !1, E.value = !1, k.value += 1), m.value += 1;
639
- }
640
- });
641
- }
642
- function q() {
643
- return je(D.value);
644
- }
645
- function J(e, t) {
646
- return Me({
647
- activeRequestSeq: k.value,
648
- requestSeq: t,
649
- selectedUserKey: _.value,
650
- recordId: e
651
- });
652
- }
653
- function Y(e, t = "view") {
654
- return v.value = e, _.value = e.id, M.value = Z(e), F.value = "", b.value = Ne(t), y.value = !0, x.value = !1, E.value = !1, k.value += 1, k.value;
655
- }
656
- function yt(e) {
657
- v.value = e.selectedUser, _.value = e.selectedUser.id, h.value = e.tenant, M.value = e.draft, b.value = e.mode, F.value = e.password, I.value = e.resetPasswordResult, y.value = !0, x.value = !1, E.value = !1, k.value += 1;
658
- }
659
- function bt(e) {
660
- return !e || o.can("revokeSession", e) !== !0 ? [] : z(e).records.filter((e) => !e.current);
661
- }
662
- function xt(e, t) {
663
- return !!e && !t.current && o.can("revokeSession", e) === !0;
664
- }
665
- function X(e) {
666
- return {
667
- tenantId: e?.id,
668
- enabled: !0
669
- };
670
- }
671
- function Z(e) {
672
- return {
673
- ...e,
674
- password: void 0
675
- };
676
- }
677
- function St(e, t, n, r) {
678
- return ae(e, {
679
- tenantId: t?.id ?? e.tenantId,
680
- username: e.username?.trim(),
681
- enabled: e.enabled !== !1,
682
- password: n === "create" ? r.trim() : void 0
683
- });
684
- }
685
- function Ct(e) {
686
- for (let t of ["username"]) {
687
- let n = a(t, {
688
- fields: L.value,
689
- fallback: Je.value
690
- });
691
- if (n.visible && n.required && !e[t]) return `请填写${n.label}`;
692
- }
693
- if (b.value === "create" && !e.password) return "请填写初始密码";
694
- if (b.value === "resetPassword" && !F.value.trim()) return "请填写新密码";
695
- }
696
- function wt(e) {
697
- return e === "username" && b.value === "edit";
698
- }
699
- function Tt(e, t) {
700
- M.value = {
701
- ...M.value,
702
- [e]: t
703
- };
704
- }
705
- function Et(e) {
706
- return e.enabled === !1 ? "enable" : "disable";
707
- }
708
- function Q(e) {
709
- return String(e?.username ?? e?.id ?? "用户");
710
- }
711
- function Dt(e) {
712
- return Q(e);
713
- }
714
- function Ot(e) {
715
- let t = String(e?.employeeTitle ?? "").trim();
716
- return t ? `职员:${t}` : "未关联职员";
717
- }
718
- function $(e) {
719
- return String(e?.title ?? e?.alias ?? e?.id ?? "未命名租户");
720
- }
721
- let kt = () => void 0;
722
- function At(e) {
723
- return {
724
- title: $(e),
725
- secondary: e.alias ?? e.id,
726
- muted: e.enabled === !1
727
- };
728
- }
729
- return (e, n) => (A(), T("section", { class: _e(["user-management-page", { "user-management-page--task": B.value && !V.value }]) }, [
730
- !B.value || V.value ? (A(), C(N(t), {
731
- key: 0,
732
- class: "user-scope-panel",
733
- title: "租户",
734
- "refresh-title": "刷新租户列表",
735
- "search-keyword": u.value,
736
- "search-placeholder": "搜索租户名称、alias 或 ID",
737
- searchable: H.value,
738
- onRefresh: n[2] ||= (e) => H.value ? p.value += 1 : nt(),
739
- "onUpdate:searchKeyword": n[3] ||= (e) => u.value = e
740
- }, {
741
- default: P(() => [!H.value && U.value ? (A(), T("button", {
742
- key: 0,
743
- class: "user-scope-entry",
744
- type: "button",
745
- onClick: n[0] ||= (e) => rt(U.value)
746
- }, [O(N(le), {
747
- title: $(U.value),
748
- secondary: "当前租户",
749
- clickable: "",
750
- selected: h.value?.id === U.value.id
751
- }, null, 8, ["title", "selected"])])) : w("v-if", !0), H.value ? (A(), C(N(ie), {
752
- key: 1,
753
- context: Fe.value,
754
- "selected-id": h.value?.id,
755
- "reload-key": p.value,
756
- keyword: u.value,
757
- "empty-description": "暂无租户",
758
- "loading-tip": "加载租户列表",
759
- "fallback-title": "未命名租户",
760
- "item-of": At,
761
- onLoaded: tt,
762
- onSelect: n[1] ||= (e) => rt(e)
763
- }, null, 8, [
764
- "context",
765
- "selected-id",
766
- "reload-key",
767
- "keyword"
768
- ])) : w("v-if", !0)]),
769
- _: 1
770
- }, 8, ["search-keyword", "searchable"])) : w("v-if", !0),
771
- !B.value || V.value ? (A(), C(N(oe), {
772
- key: 1,
773
- class: "user-list-panel",
774
- context: Le.value,
775
- title: Be.value,
776
- columns: Re.value,
777
- "standard-crud-actions": "",
778
- "standard-crud-row-actions": "",
779
- "selected-key": _.value,
780
- "expanded-row-keys": N(Se),
781
- "cell-renderers": { onlineStatus: N(Pe) },
782
- "reload-key": m.value,
783
- ready: ze.value,
784
- "quick-search-placeholder": "搜索账号",
785
- "empty-description": "当前租户暂无账号",
786
- "waiting-description": "请选择租户",
787
- onAction: it,
788
- onRowAction: at,
789
- onRowDblclick: ot,
790
- onRowExpand: N(we),
791
- onLoaded: N(Ce),
792
- onSelect: n[4] ||= (e) => _.value = String(e.id ?? "")
793
- }, {
794
- expandedRow: P(({ record: e }) => [O(N(ue), {
795
- sessions: N(z)(String(e.id ?? "")).records,
796
- loading: N(z)(String(e.id ?? "")).loading,
797
- error: N(z)(String(e.id ?? "")).error,
798
- "actions-disabled": D.value,
799
- "can-revoke": (t) => xt(String(e.id ?? ""), t),
800
- "can-revoke-all": bt(String(e.id ?? "")).length > 1,
801
- onRefresh: (t) => N(R)(String(e.id ?? "")),
802
- onRevoke: (t) => ht(e, t),
803
- onRevokeAll: (t) => gt(e)
804
- }, null, 8, [
805
- "sessions",
806
- "loading",
807
- "error",
808
- "actions-disabled",
809
- "can-revoke",
810
- "can-revoke-all",
811
- "onRefresh",
812
- "onRevoke",
813
- "onRevokeAll"
814
- ])]),
815
- _: 1
816
- }, 8, [
817
- "context",
818
- "title",
819
- "columns",
820
- "selected-key",
821
- "expanded-row-keys",
822
- "cell-renderers",
823
- "reload-key",
824
- "ready",
825
- "onRowExpand",
826
- "onLoaded"
827
- ])) : w("v-if", !0),
828
- Ie.value ? (A(), C(N(r), {
829
- key: 2,
830
- open: y.value,
831
- title: Ve.value,
832
- subtitle: He.value,
833
- "close-on-outside": b.value === "view",
834
- promotion: N(qe),
835
- onClose: K
836
- }, {
837
- status: P(() => [b.value === "view" && v.value ? (A(), C(N(re), {
838
- key: 0,
839
- enabled: v.value.enabled !== !1,
840
- disabled: D.value || !Ue.value,
841
- loading: D.value,
842
- "show-label": !1,
843
- onChange: _t
844
- }, null, 8, [
845
- "enabled",
846
- "disabled",
847
- "loading"
848
- ])) : w("v-if", !0)]),
849
- operation: P(() => [O(N(i), {
850
- context: Le.value,
851
- actions: Ge.value,
852
- "record-id": v.value?.id,
853
- onAction: ut
854
- }, null, 8, [
855
- "context",
856
- "actions",
857
- "record-id"
858
- ])]),
859
- default: P(() => [O(De, {
860
- mode: b.value,
861
- draft: M.value,
862
- "selected-user": v.value,
863
- loading: x.value,
864
- "load-failed": E.value,
865
- saving: D.value || x.value,
866
- "tenant-title": $(h.value),
867
- fields: L.value,
868
- fallback: Je.value,
869
- "field-names": Ye.value,
870
- password: F.value,
871
- "reset-password-result": I.value,
872
- "display-of": kt,
873
- "disabled-of": wt,
874
- onRetry: dt,
875
- onSave: ft,
876
- "onUpdate:field": Tt,
877
- "onUpdate:password": n[5] ||= (e) => F.value = e
878
- }, null, 8, [
879
- "mode",
880
- "draft",
881
- "selected-user",
882
- "loading",
883
- "load-failed",
884
- "saving",
885
- "tenant-title",
886
- "fields",
887
- "fallback",
888
- "field-names",
889
- "password",
890
- "reset-password-result"
891
- ])]),
892
- _: 1
893
- }, 8, [
894
- "open",
895
- "title",
896
- "subtitle",
897
- "close-on-outside",
898
- "promotion"
899
- ])) : (A(), C(N(ne), {
900
- key: 3,
901
- title: Ve.value,
902
- subtitle: He.value
903
- }, {
904
- status: P(() => [b.value === "view" && v.value ? (A(), C(N(re), {
905
- key: 0,
906
- enabled: v.value.enabled !== !1,
907
- disabled: D.value || !Ue.value,
908
- loading: D.value,
909
- "show-label": !1,
910
- onChange: _t
911
- }, null, 8, [
912
- "enabled",
913
- "disabled",
914
- "loading"
915
- ])) : w("v-if", !0)]),
916
- operation: P(() => [O(N(i), {
917
- context: N(o),
918
- actions: Ke.value,
919
- "record-id": v.value?.id,
920
- onAction: ut
921
- }, null, 8, [
922
- "context",
923
- "actions",
924
- "record-id"
925
- ])]),
926
- default: P(() => [O(De, {
927
- mode: b.value,
928
- draft: M.value,
929
- "selected-user": v.value,
930
- loading: x.value,
931
- "load-failed": E.value,
932
- saving: D.value || x.value,
933
- "tenant-title": $(h.value ?? { id: M.value.tenantId }),
934
- fields: L.value,
935
- fallback: Je.value,
936
- "field-names": Ye.value,
937
- password: F.value,
938
- "reset-password-result": I.value,
939
- "display-of": kt,
940
- "disabled-of": wt,
941
- onRetry: dt,
942
- onSave: ft,
943
- "onUpdate:field": Tt,
944
- "onUpdate:password": n[6] ||= (e) => F.value = e
945
- }, null, 8, [
946
- "mode",
947
- "draft",
948
- "selected-user",
949
- "loading",
950
- "load-failed",
951
- "saving",
952
- "tenant-title",
953
- "fields",
954
- "fallback",
955
- "field-names",
956
- "password",
957
- "reset-password-result"
958
- ])]),
959
- _: 1
960
- }, 8, ["title", "subtitle"]))
961
- ], 2));
962
- }
963
- }), [["__scopeId", "data-v-9f0f413a"]]);
964
- //#endregion
965
- export { xe as n, Pe as t };