@ximatai/muyun-web-app 0.26.22 → 0.26.24
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BusinessActivityLogView-CXBpVbZW.js → BusinessActivityLogView-DQ5_VmLp.js} +2 -2
- package/dist/{BusinessLogListDrawer-DToyqP9V.js → BusinessLogListDrawer-BnucgqNA.js} +116 -116
- package/dist/{CodeConfigurationView-DAdbnF2Y.js → CodeConfigurationView-CtQjmpLz.js} +527 -527
- package/dist/{ConfigurationTranslationView-D1aLZQlx.js → ConfigurationTranslationView-BiYn2MJx.js} +26 -26
- package/dist/{LoginAuditLogView-DRxp6BbU.js → LoginAuditLogView-BIz1LVC3.js} +2 -2
- package/dist/ModuleActionManagementView-0_ek9yag.js +780 -0
- package/dist/{ModuleGovernanceView-C7V5KQcA.js → ModuleGovernanceView-DEDF61vj.js} +3061 -3061
- package/dist/{RequestErrorLogView-S6O4ha82.js → RequestErrorLogView-HatmiK8_.js} +2 -2
- package/dist/RoleDetailWorkspaceView-BzzoarpR.js +1435 -0
- package/dist/{RuntimeLogView-BuF-xgEc.js → RuntimeLogView-Vdt6SWK6.js} +65 -65
- package/dist/{WorkflowAdministrationView-DkK3Wybi.js → WorkflowAdministrationView-Dlw2ng0N.js} +193 -193
- package/dist/{WorkflowConfigurationView-8DFNdIyI.js → WorkflowConfigurationView-j2xnGmkM.js} +39 -39
- package/dist/{WorkflowWorkbenchView-CAloU49z.js → WorkflowWorkbenchView-Nv4mvTTP.js} +122 -122
- package/dist/{codeConfiguration-BV9yki1E.js → codeConfiguration-B_z1qQvB.js} +43 -43
- package/dist/index.css +1 -1
- package/dist/index.js +1344 -818
- package/dist/moduleMenuWorkspace-1N0U7QW9.js +626 -0
- package/dist/{platform-components-C9cG_1E2.js → platform-components-Xb5qgsXU.js} +3088 -2999
- package/dist/{platform-workbench-BSTroBaq.js → platform-workbench-VhgKhPLI.js} +5106 -5031
- package/dist/record-read.js +2 -0
- package/dist/recordReadEntry-CxDHM44F.js +152 -0
- package/dist/types/app/CurrentUserProfileDialog.vue.d.ts +6 -0
- package/dist/types/app/ExternalIdentityBindings.vue.d.ts +8 -0
- package/dist/types/app/ExternalProvisioningConfirmation.vue.d.ts +15 -0
- package/dist/types/app/LoginView.vue.d.ts +3 -1
- package/dist/types/app/WeLinkQrCode.vue.d.ts +11 -0
- package/dist/types/app/externalLoginReturn.d.ts +38 -0
- package/dist/types/app/useExternalLoginHost.d.ts +27 -0
- package/dist/types/app/weLinkQrCode.d.ts +22 -0
- package/dist/types/consumer/index.d.ts +7 -2
- package/dist/types/consumer/recordRead.d.ts +6 -0
- package/dist/types/dynamic-page-runtime/ManagedDetailRelationInlineSurface.vue.d.ts +1 -0
- package/dist/types/dynamic-page-runtime/ManagedDetailRelationSurface.vue.d.ts +1 -0
- package/dist/types/dynamic-page-runtime/ModulePageBusinessSession.d.ts +4 -0
- package/dist/types/dynamic-page-runtime/ModulePageDetailRelations.vue.d.ts +1 -0
- package/dist/types/dynamic-page-runtime/ModulePageHostRuntime.vue.d.ts +11 -15
- package/dist/types/dynamic-page-runtime/composables/useModulePageDetailActionRuntime.d.ts +2 -0
- package/dist/types/dynamic-page-runtime/useModulePageSession.d.ts +2 -0
- package/dist/types/platform-admin-runtime/job/ScheduledActionTargetFields.vue.d.ts +7 -0
- package/dist/types/platform-admin-runtime/scheduledActionPlanPageEnhancement.d.ts +3 -0
- package/dist/types/platform-components/BusinessNotificationCard.vue.d.ts +30 -0
- package/dist/types/platform-components/BusinessNotificationPanel.vue.d.ts +4 -39
- package/dist/types/platform-components/FileTransferUploader.vue.d.ts +1 -1
- package/dist/types/platform-components/RecordExplorerPanel.vue.d.ts +8 -17
- package/dist/types/platform-components/RecordFileReferenceTransfer.vue.d.ts +2 -0
- package/dist/types/platform-components/RecordFormFields.vue.d.ts +2 -2
- package/dist/types/platform-components/SingleImageFileReferenceField.vue.d.ts +4 -0
- package/dist/types/platform-components/fileReferenceTransfer.d.ts +9 -2
- package/dist/types/platform-components/managementWorkspaceContext.d.ts +2 -1
- package/dist/types/platform-components/useNotificationDeckMotion.d.ts +7 -0
- package/dist/types/views/businessRuleGovernance.d.ts +1 -0
- package/dist/types/web-contracts/index.d.ts +71 -2
- package/dist/types/web-core/clients.d.ts +11 -1
- package/dist/{useWorkflowConfigurationContext-ClwD0BWE.js → useWorkflowConfigurationContext-BLFXzHwn.js} +8 -8
- package/dist/{workspaceViews-Cvi7uakV.js → workspaceViews-Cas3PR5B.js} +1035 -879
- package/package.json +5 -1
- package/dist/ModuleActionManagementView-D4oXCnW2.js +0 -755
- package/dist/RoleDetailWorkspaceView-lg4XwTlN.js +0 -1435
- package/dist/moduleMenuWorkspace-BBOQrHeT.js +0 -626
|
@@ -43,7 +43,7 @@ declare var __VLS_9: {
|
|
|
43
43
|
group: import("../web-contracts/index").FormGroupDescriptor | undefined;
|
|
44
44
|
}, __VLS_20: {
|
|
45
45
|
field: RecordFormFieldState;
|
|
46
|
-
},
|
|
46
|
+
}, __VLS_227: {
|
|
47
47
|
field: RecordFormFieldState;
|
|
48
48
|
};
|
|
49
49
|
type __VLS_Slots = {} & {
|
|
@@ -53,7 +53,7 @@ type __VLS_Slots = {} & {
|
|
|
53
53
|
} & {
|
|
54
54
|
'field-actions'?: (props: typeof __VLS_20) => any;
|
|
55
55
|
} & {
|
|
56
|
-
'after-field'?: (props: typeof
|
|
56
|
+
'after-field'?: (props: typeof __VLS_227) => any;
|
|
57
57
|
};
|
|
58
58
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
59
59
|
"validity-change": (validity: RecordFormValidity) => any;
|
|
@@ -2,6 +2,8 @@ import { type ModuleContext } from '../web-core/index';
|
|
|
2
2
|
import type { ResolvedFileReferenceFieldDescriptor } from '../web-contracts/index';
|
|
3
3
|
type __VLS_Props = {
|
|
4
4
|
label: string;
|
|
5
|
+
/** Hides the field title and places the available actions below the image. */
|
|
6
|
+
hideLabel?: boolean;
|
|
5
7
|
required?: boolean;
|
|
6
8
|
value: unknown;
|
|
7
9
|
record: Record<string, unknown>;
|
|
@@ -16,8 +18,10 @@ type __VLS_Props = {
|
|
|
16
18
|
};
|
|
17
19
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
18
20
|
"update:value": (value: string | undefined) => any;
|
|
21
|
+
"update:record-id": (recordId: string) => any;
|
|
19
22
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
20
23
|
"onUpdate:value"?: ((value: string | undefined) => any) | undefined;
|
|
24
|
+
"onUpdate:record-id"?: ((recordId: string) => any) | undefined;
|
|
21
25
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
26
|
declare const _default: typeof __VLS_export;
|
|
23
27
|
export default _default;
|
|
@@ -1,8 +1,15 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type HttpClient } from '../web-core/index';
|
|
2
2
|
import type { ResolvedFileReferenceFieldDescriptor } from '../web-contracts/index';
|
|
3
3
|
import type { FileTransferUploadAccess } from './fileTransferUpload';
|
|
4
|
+
export interface FileReferenceUploadAccess extends FileTransferUploadAccess {
|
|
5
|
+
registrationId: string;
|
|
6
|
+
}
|
|
7
|
+
/** Gives every upload from the same new draft a stable entity identity before ordinary CRUD save. */
|
|
8
|
+
export declare function fileReferenceDraftRecordId(draft: Record<string, unknown>): string;
|
|
4
9
|
/** Issues the module-owned short-lived upload ticket for a declared file-reference field. */
|
|
5
|
-
export declare function issueFileReferenceUploadAccess(http: HttpClient, moduleAlias: string, definition: ResolvedFileReferenceFieldDescriptor, draft: Record<string, unknown>, file: File, intent: FileReferenceUploadIntent): Promise<
|
|
10
|
+
export declare function issueFileReferenceUploadAccess(http: HttpClient, moduleAlias: string, definition: ResolvedFileReferenceFieldDescriptor, draft: Record<string, unknown>, file: File, intent: FileReferenceUploadIntent): Promise<FileReferenceUploadAccess>;
|
|
11
|
+
/** Binds the direct-upload result to its platform-issued upload registration before updating the draft. */
|
|
12
|
+
export declare function registerFileReferenceUpload(http: HttpClient, moduleAlias: string, ticketId: string, fileId: string): Promise<void>;
|
|
6
13
|
/** Uploads one DATABASE_INLINE field through the same authenticated platform HTTP client. */
|
|
7
14
|
export declare function uploadInlineFileReference(http: HttpClient, moduleAlias: string, definition: ResolvedFileReferenceFieldDescriptor, draft: Record<string, unknown>, file: File, intent: FileReferenceUploadIntent): Promise<{
|
|
8
15
|
file: File;
|
|
@@ -8,7 +8,8 @@ export interface ManagementWorkspaceContext {
|
|
|
8
8
|
registerExplorer: (registration: ManagementWorkspaceExplorerRegistration) => void;
|
|
9
9
|
unregisterExplorer: (id: string) => void;
|
|
10
10
|
isExplorerCollapsed: (id: string) => boolean;
|
|
11
|
-
|
|
11
|
+
expandExplorer: (id: string) => void;
|
|
12
|
+
collapseExplorer: (id: string) => void;
|
|
12
13
|
collapsedExplorerOffset: (id: string) => number;
|
|
13
14
|
hasCollapsedExplorers: ComputedRef<boolean>;
|
|
14
15
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type Ref } from 'vue';
|
|
2
|
+
/** Keep cards on a continuous path when the bell changes their layout. */
|
|
3
|
+
export declare function useNotificationDeckMotion(host: Ref<HTMLElement | undefined>, expanded: Ref<boolean>): {
|
|
4
|
+
moving: Ref<boolean, boolean>;
|
|
5
|
+
arrange: (open: boolean) => Promise<boolean>;
|
|
6
|
+
stop: () => void;
|
|
7
|
+
};
|
|
@@ -150,6 +150,7 @@ export interface BusinessRuleProposal {
|
|
|
150
150
|
}
|
|
151
151
|
export interface BusinessRuleIssue {
|
|
152
152
|
readonly messageSources?: readonly OperationErrorMessage[];
|
|
153
|
+
readonly messageText?: TextPresentation | null;
|
|
153
154
|
code: string;
|
|
154
155
|
ruleCode?: string;
|
|
155
156
|
field?: string;
|
|
@@ -126,7 +126,7 @@ export interface WebBusinessNotification {
|
|
|
126
126
|
content: string;
|
|
127
127
|
dismissible: boolean;
|
|
128
128
|
actions: WebBusinessNotificationAction[];
|
|
129
|
-
/** Persistent cards remain above ordinary overlays
|
|
129
|
+
/** Persistent floating cards remain actionable above ordinary overlays; all reminders share the current collection. */
|
|
130
130
|
displayPolicy?: 'standard' | 'persistent';
|
|
131
131
|
/** Optional absolute action deadline, in ISO-8601 format. */
|
|
132
132
|
expiresAt?: string;
|
|
@@ -247,6 +247,71 @@ export interface TenantBranding {
|
|
|
247
247
|
export interface TenantLoginContext {
|
|
248
248
|
tenantId: string;
|
|
249
249
|
branding?: TenantBranding;
|
|
250
|
+
/** External identity providers the tenant offers on its sign-in entry; empty when federation is off. */
|
|
251
|
+
externalLoginMethods?: ExternalLoginMethod[];
|
|
252
|
+
}
|
|
253
|
+
export interface ExternalLoginMethod {
|
|
254
|
+
providerId: string;
|
|
255
|
+
title: string;
|
|
256
|
+
providerType: string;
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* A started external sign-in or bind transaction. `state` and `browserProof` must stay in the initiating
|
|
260
|
+
* browser; only that browser can complete the transaction, and the proof is never put into a URL.
|
|
261
|
+
*/
|
|
262
|
+
export interface ExternalLoginStart {
|
|
263
|
+
transactionId: string;
|
|
264
|
+
state: string;
|
|
265
|
+
authorizationUrl: string;
|
|
266
|
+
browserProof: string;
|
|
267
|
+
expiresAt: string;
|
|
268
|
+
qrCode?: {
|
|
269
|
+
providerType: string;
|
|
270
|
+
scriptUrl: string;
|
|
271
|
+
authorizationUrl: string;
|
|
272
|
+
clientId: string;
|
|
273
|
+
redirectUri: string;
|
|
274
|
+
state: string;
|
|
275
|
+
scope: string;
|
|
276
|
+
messageOrigin: string;
|
|
277
|
+
} | null;
|
|
278
|
+
}
|
|
279
|
+
export type ExternalLoginStatus = 'succeeded' | 'denied' | 'expired' | 'confirmationRequired' | 'reviewPending' | 'reviewRejected';
|
|
280
|
+
export type ExternalLoginFailure = 'admissionRejected' | 'identityNotBound' | 'identityConflict' | 'alreadyBound' | 'enterpriseMismatch' | 'policyDisabled' | 'accountUnavailable' | 'sessionEnded' | 'providerRejected' | 'providerUnavailable' | 'internalError';
|
|
281
|
+
export type ExternalLoginPurpose = 'login' | 'bind';
|
|
282
|
+
export interface ExternalIdentityView {
|
|
283
|
+
id: string;
|
|
284
|
+
providerId: string;
|
|
285
|
+
providerTitle: string;
|
|
286
|
+
externalUserId: string;
|
|
287
|
+
displayName?: string;
|
|
288
|
+
boundAt: string;
|
|
289
|
+
lastAuthenticatedAt?: string;
|
|
290
|
+
}
|
|
291
|
+
/** What the initiating browser submits after the provider returned it to the workbench. */
|
|
292
|
+
export interface ExternalLoginCompleteRequest {
|
|
293
|
+
state: string;
|
|
294
|
+
browserProof: string;
|
|
295
|
+
/** Every provider parameter on the return address, verified on the server. */
|
|
296
|
+
parameters: Record<string, string>;
|
|
297
|
+
}
|
|
298
|
+
export interface ExternalProvisioningProfile {
|
|
299
|
+
displayName: string;
|
|
300
|
+
tenantId: string;
|
|
301
|
+
departmentIds: string[];
|
|
302
|
+
placements?: string[];
|
|
303
|
+
}
|
|
304
|
+
export interface ExternalLoginCompletion {
|
|
305
|
+
status: ExternalLoginStatus;
|
|
306
|
+
purpose: ExternalLoginPurpose;
|
|
307
|
+
failure?: ExternalLoginFailure;
|
|
308
|
+
login?: LoginResult;
|
|
309
|
+
binding?: ExternalIdentityView;
|
|
310
|
+
confirmation?: ExternalProvisioningProfile;
|
|
311
|
+
}
|
|
312
|
+
export interface OwnExternalIdentities {
|
|
313
|
+
bindings: ExternalIdentityView[];
|
|
314
|
+
bindableProviders: ExternalLoginMethod[];
|
|
250
315
|
}
|
|
251
316
|
export interface LoginRequest {
|
|
252
317
|
tenantId?: string;
|
|
@@ -1411,6 +1476,8 @@ export interface UserSessionView {
|
|
|
1411
1476
|
maxExpiresAt?: string;
|
|
1412
1477
|
lastSeenAt?: string;
|
|
1413
1478
|
passwordChangeRequired?: boolean;
|
|
1479
|
+
/** How the session was authenticated, for example `password`. */
|
|
1480
|
+
authenticationMethod?: string;
|
|
1414
1481
|
loginIp?: string;
|
|
1415
1482
|
loginUserAgent?: string;
|
|
1416
1483
|
terminalType?: string;
|
|
@@ -1433,7 +1500,8 @@ export interface UserSessionStatusView {
|
|
|
1433
1500
|
presentSessionCount?: number;
|
|
1434
1501
|
idleSessionCount?: number;
|
|
1435
1502
|
}
|
|
1436
|
-
|
|
1503
|
+
/** `none` marks an account that has no local password and signs in through another method. */
|
|
1504
|
+
export type UserPasswordStatus = 'normal' | 'initial' | 'resetRequired' | 'expired' | 'none';
|
|
1437
1505
|
export interface ResetPasswordResponse {
|
|
1438
1506
|
count: number;
|
|
1439
1507
|
temporaryPassword?: string;
|
|
@@ -1586,6 +1654,7 @@ export interface PlatformModule extends StandardEnabledTreeEntity {
|
|
|
1586
1654
|
}
|
|
1587
1655
|
/** A governed operation exposed by one platform module. */
|
|
1588
1656
|
export interface PlatformModuleAction extends StandardEnabledSortableEntity {
|
|
1657
|
+
schedulable?: boolean;
|
|
1589
1658
|
bindingPending?: boolean;
|
|
1590
1659
|
formSupported?: boolean;
|
|
1591
1660
|
moduleAlias?: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ChangeOwnPasswordRequest, CurrentUserProfile, CurrentUser, LoginRequest, LoginResult, UpdateCurrentUserProfileRequest, MenuMineResponse, PageBootstrap, TenantBranding, TenantLoginContext } from '../web-contracts/index';
|
|
1
|
+
import type { ChangeOwnPasswordRequest, CurrentUserProfile, CurrentUser, ExternalLoginCompleteRequest, ExternalLoginCompletion, ExternalLoginStart, LoginRequest, LoginResult, UpdateCurrentUserProfileRequest, MenuMineResponse, OwnExternalIdentities, PageBootstrap, TenantBranding, TenantLoginContext } from '../web-contracts/index';
|
|
2
2
|
import type { HttpClient } from './http';
|
|
3
3
|
export interface SessionClient {
|
|
4
4
|
current(): Promise<CurrentUser>;
|
|
@@ -18,6 +18,15 @@ export interface AuthClient {
|
|
|
18
18
|
updateCurrentProfile(request: UpdateCurrentUserProfileRequest, token: string): Promise<CurrentUserProfile>;
|
|
19
19
|
logout(token?: string): Promise<void>;
|
|
20
20
|
}
|
|
21
|
+
/** External identity sign-in and the current user's bindings; available only when federation is enabled. */
|
|
22
|
+
export interface ExternalLoginClient {
|
|
23
|
+
startLogin(providerId: string, tenantId: string): Promise<ExternalLoginStart>;
|
|
24
|
+
startBind(providerId: string, token: string): Promise<ExternalLoginStart>;
|
|
25
|
+
complete(providerId: string, request: ExternalLoginCompleteRequest): Promise<ExternalLoginCompletion>;
|
|
26
|
+
confirm(providerId: string, request: Omit<ExternalLoginCompleteRequest, 'parameters'>): Promise<ExternalLoginCompletion>;
|
|
27
|
+
identities(token: string): Promise<OwnExternalIdentities>;
|
|
28
|
+
unbind(identityId: string, token: string): Promise<void>;
|
|
29
|
+
}
|
|
21
30
|
/** Resolves the public context used by a tenant-locked login entry. */
|
|
22
31
|
export interface LoginContextClient {
|
|
23
32
|
loginContext(tenantId: string): Promise<TenantLoginContext>;
|
|
@@ -33,4 +42,5 @@ export declare function createPageBootstrapClient(http: HttpClient): PageBootstr
|
|
|
33
42
|
* contract instead of requiring application-level compatibility code.
|
|
34
43
|
*/
|
|
35
44
|
export declare function normalizeMenuMineResponse(response: unknown): MenuMineResponse;
|
|
45
|
+
export declare function createExternalLoginClient(http: HttpClient): ExternalLoginClient;
|
|
36
46
|
export declare function createAuthClient(http: HttpClient): AuthClient;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { E as e, y as t } from "./platform-workbench-
|
|
2
|
-
import {
|
|
1
|
+
import { E as e, y as t } from "./platform-workbench-VhgKhPLI.js";
|
|
2
|
+
import { Gr as n, Jr as r, Pr as i, Za as a, Zr as o, _n as s, zt as c } from "./platform-components-Xb5qgsXU.js";
|
|
3
3
|
import { computed as l, onMounted as u } from "vue";
|
|
4
4
|
//#region src/views/useWorkflowConfigurationContext.ts
|
|
5
5
|
function d(d) {
|
|
6
|
-
let f =
|
|
6
|
+
let f = a(), p = r({ moduleAlias: "platform.workflow.definition" }), m = i(p.http, d), h = {
|
|
7
7
|
loadFunctions: async () => (await m.formulaFunctions()).map((e) => ({
|
|
8
8
|
name: e.name,
|
|
9
9
|
title: e.title,
|
|
@@ -12,12 +12,12 @@ function d(d) {
|
|
|
12
12
|
signature: `${e.name}(${e.parameters.map((e) => e.name).join(", ")})`
|
|
13
13
|
})),
|
|
14
14
|
validate: (e) => m.validateCondition(e)
|
|
15
|
-
}, g =
|
|
15
|
+
}, g = n({
|
|
16
16
|
http: p.http,
|
|
17
17
|
language: f,
|
|
18
18
|
moduleAlias: d,
|
|
19
19
|
runtimeAccess: "VIEW"
|
|
20
|
-
}), _ = t(), v = l(() => _?.value?.tenantId ?
|
|
20
|
+
}), _ = t(), v = l(() => _?.value?.tenantId ? n({
|
|
21
21
|
http: p.http,
|
|
22
22
|
language: f,
|
|
23
23
|
moduleAlias: "iam.organization",
|
|
@@ -30,14 +30,14 @@ function d(d) {
|
|
|
30
30
|
try {
|
|
31
31
|
await g.runtime.refreshTexts?.();
|
|
32
32
|
} catch (e) {
|
|
33
|
-
|
|
33
|
+
s(e, {
|
|
34
34
|
source: "workflow-design",
|
|
35
35
|
phase: "load"
|
|
36
36
|
});
|
|
37
37
|
}
|
|
38
38
|
}
|
|
39
39
|
});
|
|
40
|
-
let y = l(() =>
|
|
40
|
+
let y = l(() => o(g.runtime)), b = l(() => [...c(y.value?.uiDescriptor)].map(([e, t]) => ({
|
|
41
41
|
name: e,
|
|
42
42
|
label: t.label ?? e,
|
|
43
43
|
valueType: t.valueType,
|
|
@@ -47,7 +47,7 @@ function d(d) {
|
|
|
47
47
|
try {
|
|
48
48
|
await g.runtime.ready;
|
|
49
49
|
} catch (e) {
|
|
50
|
-
|
|
50
|
+
s(e, {
|
|
51
51
|
source: "workflow-design",
|
|
52
52
|
phase: "load"
|
|
53
53
|
});
|