@topconsultnpm/sdkui-react-beta 6.10.87 → 6.10.89
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/lib/hooks/useForm.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { useEffect, useState } from "react";
|
|
2
2
|
import { FormModes } from "../ts";
|
|
3
3
|
import { TMExceptionBoxManager, TMSpinner } from "../components";
|
|
4
|
-
import { AreaDescriptor, BasketTypeDescriptor, DataListDescriptor, DiskDescriptor, GroupDescriptor, JobEngine, JobTypes, LDAPDescriptor, LDAPProviders, MembershipConstraints, NumeratorDescriptor, ObjectClasses, ProcessEngine, ResultTypes, SavedQueryEngine, SDK_Globals, SignCertDescriptor, TaskDescriptor, TreeDescriptor, TSADescriptor, UserDescriptor, UserLevels, UserTypes } from "@topconsultnpm/sdk-ts-beta";
|
|
4
|
+
import { ArchiveConstraints, AreaDescriptor, BasketTypeDescriptor, DataListDescriptor, DcmtTypeDescriptor, DiskDescriptor, EncryptionModes, GroupDescriptor, JobEngine, JobTypes, LDAPDescriptor, LDAPProviders, MembershipConstraints, NumeratorDescriptor, ObjectClasses, ProcessEngine, ResultTypes, SavedQueryEngine, SDK_Globals, SignCertDescriptor, TaskDescriptor, TreeDescriptor, TSADescriptor, UserDescriptor, UserLevels, UserTypes } from "@topconsultnpm/sdk-ts-beta";
|
|
5
5
|
import { PlatformObjectService } from "../services";
|
|
6
6
|
import { SDKUI_Localizator, calcIsModified } from "../helper";
|
|
7
7
|
export class SaveFormOptions {
|
|
@@ -16,6 +16,17 @@ export function useSaveForm(formMode, id, sfo, validator, onSaved, onStatusChang
|
|
|
16
16
|
const [exception, setException] = useState();
|
|
17
17
|
const [validationItems, setValidationItems] = useState([]);
|
|
18
18
|
// #region Normalize object
|
|
19
|
+
function normalizeDcmtType(d) {
|
|
20
|
+
d.archiveConstraint = ArchiveConstraints.None;
|
|
21
|
+
d.encryptionMode = EncryptionModes.None;
|
|
22
|
+
d.indexes = [];
|
|
23
|
+
d.metadata = [];
|
|
24
|
+
d.trgSharedArk = 0;
|
|
25
|
+
d.wfAppr = 0;
|
|
26
|
+
d.hasBlog = 0;
|
|
27
|
+
d.cico = 0;
|
|
28
|
+
return d;
|
|
29
|
+
}
|
|
19
30
|
function normalizeGroup(d) {
|
|
20
31
|
d.membershipConstraint = MembershipConstraints.Mixed;
|
|
21
32
|
return d;
|
|
@@ -45,8 +56,9 @@ export function useSaveForm(formMode, id, sfo, validator, onSaved, onStatusChang
|
|
|
45
56
|
switch (sfo.objClass) {
|
|
46
57
|
case ObjectClasses.Area: return new AreaDescriptor();
|
|
47
58
|
case ObjectClasses.BasketType: return new BasketTypeDescriptor();
|
|
48
|
-
case ObjectClasses.
|
|
59
|
+
case ObjectClasses.DcmtType: return normalizeDcmtType(new DcmtTypeDescriptor());
|
|
49
60
|
case ObjectClasses.DataList: return new DataListDescriptor();
|
|
61
|
+
case ObjectClasses.Disk: return new DiskDescriptor();
|
|
50
62
|
case ObjectClasses.Group: return normalizeGroup(new GroupDescriptor());
|
|
51
63
|
case ObjectClasses.LDAP: return normalizeLDAP(new LDAPDescriptor());
|
|
52
64
|
case ObjectClasses.Numerator: return new NumeratorDescriptor();
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { JobTypes, ObjectClasses, ProcessDescriptor, UserDescriptor } from "@topconsultnpm/sdk-ts-beta";
|
|
2
2
|
export declare class PlatformObjectService {
|
|
3
3
|
private static readonly retrieveAllJobsAsync;
|
|
4
|
-
static readonly retrieveAllAsync: (objClass: ObjectClasses, jobType?: JobTypes) => Promise<UserDescriptor[] | import("@topconsultnpm/sdk-ts-beta").FEDistillerJobDescriptor[] | import("@topconsultnpm/sdk-ts-beta").AreaDescriptor[] | import("@topconsultnpm/sdk-ts-beta").DataListDescriptor[] | import("@topconsultnpm/sdk-ts-beta").DiskDescriptor[] | import("@topconsultnpm/sdk-ts-beta").GroupDescriptor[] | import("@topconsultnpm/sdk-ts-beta").LDAPDescriptor[] | import("@topconsultnpm/sdk-ts-beta").NumeratorDescriptor[] | import("@topconsultnpm/sdk-ts-beta").SignCertDescriptor[] | import("@topconsultnpm/sdk-ts-beta").SignServerDescriptor[] | import("@topconsultnpm/sdk-ts-beta").TreeDescriptor[] | import("@topconsultnpm/sdk-ts-beta").TSADescriptor[] | ProcessDescriptor[] | import("@topconsultnpm/sdk-ts-beta").TaskDescriptor[] | undefined>;
|
|
4
|
+
static readonly retrieveAllAsync: (objClass: ObjectClasses, jobType?: JobTypes) => Promise<import("@topconsultnpm/sdk-ts-beta").DcmtTypeDescriptor[] | UserDescriptor[] | import("@topconsultnpm/sdk-ts-beta").FEDistillerJobDescriptor[] | import("@topconsultnpm/sdk-ts-beta").AreaDescriptor[] | import("@topconsultnpm/sdk-ts-beta").DataListDescriptor[] | import("@topconsultnpm/sdk-ts-beta").DiskDescriptor[] | import("@topconsultnpm/sdk-ts-beta").GroupDescriptor[] | import("@topconsultnpm/sdk-ts-beta").LDAPDescriptor[] | import("@topconsultnpm/sdk-ts-beta").NumeratorDescriptor[] | import("@topconsultnpm/sdk-ts-beta").SignCertDescriptor[] | import("@topconsultnpm/sdk-ts-beta").SignServerDescriptor[] | import("@topconsultnpm/sdk-ts-beta").TreeDescriptor[] | import("@topconsultnpm/sdk-ts-beta").TSADescriptor[] | ProcessDescriptor[] | import("@topconsultnpm/sdk-ts-beta").TaskDescriptor[] | undefined>;
|
|
5
5
|
private static readonly loadCacheForJobAsync;
|
|
6
6
|
private static readonly retrieveAdminJobAsync;
|
|
7
|
-
static readonly retrieveAdminAsync: (objClass: ObjectClasses, jobType: JobTypes, id: number) => Promise
|
|
7
|
+
static readonly retrieveAdminAsync: (objClass: ObjectClasses, jobType: JobTypes, id: number) => Promise<import("@topconsultnpm/sdk-ts-beta").DcmtTypeDescriptor | -1 | import("@topconsultnpm/sdk-ts-beta").DataListDescriptor | UserDescriptor | import("@topconsultnpm/sdk-ts-beta").BarcodeArchiverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").BatchUpdaterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").CassettoDoganaleJobDescriptor | import("@topconsultnpm/sdk-ts-beta").CassettoDoganalePlusJobDescriptor | import("@topconsultnpm/sdk-ts-beta").CheckSequenceJobDescriptor | import("@topconsultnpm/sdk-ts-beta").COSCheckerJobDescriptor | import("@topconsultnpm/sdk-ts-beta").DcmtConverterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").DcmtDeleterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").DcmtNoteJobDescriptor | import("@topconsultnpm/sdk-ts-beta").DcmtPrinterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FEAttacherJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FECreatorTxtJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FEDetacherJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FEDistillerJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FESenderWsJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FESplitterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FEValidatorJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FileArchiverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FileCheckerJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FileExecJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FileExportJobDescriptor | import("@topconsultnpm/sdk-ts-beta").FileMoverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").LexJobDescriptor | import("@topconsultnpm/sdk-ts-beta").LinkerJobDescriptor | import("@topconsultnpm/sdk-ts-beta").MailArchiverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").MailQueryJobDescriptor | import("@topconsultnpm/sdk-ts-beta").MailSenderJobDescriptor | import("@topconsultnpm/sdk-ts-beta").MigrationJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PdDCreatorJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PDFArchiverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PdVArchiverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PdVQueryJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PdVSenderJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PeppolQueryJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PeppolSenderJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PostelQueryJobDescriptor | import("@topconsultnpm/sdk-ts-beta").PostelSenderJobDescriptor | import("@topconsultnpm/sdk-ts-beta").ReplicatorJobDescriptor | import("@topconsultnpm/sdk-ts-beta").SAPAlignerJobDescriptor | import("@topconsultnpm/sdk-ts-beta").SAPBarcodeJobDescriptor | import("@topconsultnpm/sdk-ts-beta").SAPDataReaderJobDescriptor | import("@topconsultnpm/sdk-ts-beta").SAPDataWriterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").SignerJobDescriptor | import("@topconsultnpm/sdk-ts-beta").SpoolArchiverJobDescriptor | import("@topconsultnpm/sdk-ts-beta").UpdaterJobDescriptor | import("@topconsultnpm/sdk-ts-beta").AreaDescriptor | import("@topconsultnpm/sdk-ts-beta").BasketTypeDescriptor | import("@topconsultnpm/sdk-ts-beta").DiskDescriptor | import("@topconsultnpm/sdk-ts-beta").GroupDescriptor | import("@topconsultnpm/sdk-ts-beta").LDAPDescriptor | import("@topconsultnpm/sdk-ts-beta").NumeratorDescriptor | import("@topconsultnpm/sdk-ts-beta").SignCertDescriptor | import("@topconsultnpm/sdk-ts-beta").SignServerDescriptor | import("@topconsultnpm/sdk-ts-beta").TreeDescriptor | import("@topconsultnpm/sdk-ts-beta").TSADescriptor | ProcessDescriptor | undefined>;
|
|
8
8
|
private static readonly updateJobAsync;
|
|
9
9
|
static readonly updateAsync: (objClass: ObjectClasses, jobType: JobTypes, d: any) => Promise<number | undefined>;
|
|
10
10
|
private static readonly createJobAsync;
|
|
@@ -2,7 +2,7 @@ var _a;
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { SDK_Globals, SDK_Localizator, JobTypes, ObjectClasses, OwnershipLevels, ProcessStates, DcmtTypeListCacheService } from "@topconsultnpm/sdk-ts-beta";
|
|
4
4
|
import { TMTooltip, TMUserIcon } from "../components";
|
|
5
|
-
import { Icon123, IconAccessPoint, IconAddressBook, IconBasket, IconCloud, IconDataList, IconDisk, IconProcess, IconServerService, IconSettings, IconSignCert, IconSuitcase, IconTree, IconUserGroup, SDKUI_Localizator } from "../helper";
|
|
5
|
+
import { Icon123, IconAccessPoint, IconAddressBook, IconBasket, IconCloud, IconDataList, IconDcmtType, IconDisk, IconProcess, IconServerService, IconSettings, IconSignCert, IconSuitcase, IconTree, IconUserGroup, SDKUI_Localizator } from "../helper";
|
|
6
6
|
import { TMColors } from "../utils/theme";
|
|
7
7
|
import { LocalizeOwnershipLevels } from "../helper/Enum_Localizator";
|
|
8
8
|
export class PlatformObjectService {
|
|
@@ -70,6 +70,7 @@ PlatformObjectService.retrieveAllAsync = async (objClass, jobType = JobTypes.Non
|
|
|
70
70
|
//DESIGNER
|
|
71
71
|
case ObjectClasses.Area: return await SDK_Globals.tmSession?.NewAreaEngine().RetrieveAllAdminAsync();
|
|
72
72
|
case ObjectClasses.BasketType: return await SDK_Globals.tmSession?.NewBasketTypeEngine().RetrieveAllAdminAsync();
|
|
73
|
+
case ObjectClasses.DcmtType: return await SDK_Globals.tmSession?.NewDcmtTypeEngine().RetrieveAllAdminAsync();
|
|
73
74
|
case ObjectClasses.DataList: return await SDK_Globals.tmSession?.NewDataListEngine().RetrieveAllAdminAsync();
|
|
74
75
|
case ObjectClasses.Disk: return await SDK_Globals.tmSession?.NewDiskEngine().RetrieveAllAdminAsync();
|
|
75
76
|
case ObjectClasses.Group: return await SDK_Globals.tmSession?.NewGroupEngine().RetrieveAllAdminAsync();
|
|
@@ -161,6 +162,7 @@ PlatformObjectService.retrieveAdminAsync = async (objClass, jobType, id) => {
|
|
|
161
162
|
switch (objClass) {
|
|
162
163
|
case ObjectClasses.Area: return await SDK_Globals.tmSession?.NewAreaEngine().RetrieveAdminAsync(id);
|
|
163
164
|
case ObjectClasses.BasketType: return await SDK_Globals.tmSession?.NewBasketTypeEngine().RetrieveAdminAsync(id);
|
|
165
|
+
case ObjectClasses.DcmtType: return await SDK_Globals.tmSession?.NewDcmtTypeEngine().RetrieveAdminAsync(id);
|
|
164
166
|
case ObjectClasses.DataList: return await SDK_Globals.tmSession?.NewDataListEngine().RetrieveAdminAsync(id);
|
|
165
167
|
case ObjectClasses.Disk: return await SDK_Globals.tmSession?.NewDiskEngine().RetrieveAdminAsync(id);
|
|
166
168
|
case ObjectClasses.Group: return await SDK_Globals.tmSession?.NewGroupEngine().RetrieveAdminAsync(id);
|
|
@@ -243,6 +245,7 @@ PlatformObjectService.updateAsync = async (objClass, jobType, d) => {
|
|
|
243
245
|
switch (objClass) {
|
|
244
246
|
case ObjectClasses.Area: return await SDK_Globals.tmSession?.NewAreaEngine().UpdateAsync(d);
|
|
245
247
|
case ObjectClasses.BasketType: return await SDK_Globals.tmSession?.NewBasketTypeEngine().UpdateAsync(d);
|
|
248
|
+
case ObjectClasses.DcmtType: return await SDK_Globals.tmSession?.NewDcmtTypeEngine().UpdateAsync(d);
|
|
246
249
|
case ObjectClasses.DataList: return await SDK_Globals.tmSession?.NewDataListEngine().UpdateAsync(d, true);
|
|
247
250
|
case ObjectClasses.Disk: return await SDK_Globals.tmSession?.NewDiskEngine().UpdateAsync(d);
|
|
248
251
|
case ObjectClasses.Group: return await SDK_Globals.tmSession?.NewGroupEngine().UpdateAsync(d);
|
|
@@ -323,6 +326,7 @@ PlatformObjectService.createAsync = async (objClass, jobType, d) => {
|
|
|
323
326
|
switch (objClass) {
|
|
324
327
|
case ObjectClasses.Area: return await SDK_Globals.tmSession?.NewAreaEngine().CreateAsync(d);
|
|
325
328
|
case ObjectClasses.BasketType: return await SDK_Globals.tmSession?.NewBasketTypeEngine().CreateAsync(d);
|
|
329
|
+
case ObjectClasses.DcmtType: return await SDK_Globals.tmSession?.NewDcmtTypeEngine().CreateAsync(d);
|
|
326
330
|
case ObjectClasses.DataList: return await SDK_Globals.tmSession?.NewDataListEngine().CreateAsync(d);
|
|
327
331
|
case ObjectClasses.Disk: return await SDK_Globals.tmSession?.NewDiskEngine().CreateAsync(d);
|
|
328
332
|
case ObjectClasses.Group: return await SDK_Globals.tmSession?.NewGroupEngine().CreateAsync(d);
|
|
@@ -344,6 +348,7 @@ PlatformObjectService.deleteAsync = async (objClass, id) => {
|
|
|
344
348
|
switch (objClass) {
|
|
345
349
|
case ObjectClasses.Area: return await SDK_Globals.tmSession?.NewAreaEngine().DeleteAsync(id);
|
|
346
350
|
case ObjectClasses.BasketType: return await SDK_Globals.tmSession?.NewBasketTypeEngine().DeleteAsync(id);
|
|
351
|
+
case ObjectClasses.DcmtType: return await SDK_Globals.tmSession?.NewDcmtTypeEngine().DeleteAsync(id);
|
|
347
352
|
case ObjectClasses.DataList: return await SDK_Globals.tmSession?.NewDataListEngine().DeleteAsync(id);
|
|
348
353
|
case ObjectClasses.Disk: return await SDK_Globals.tmSession?.NewDiskEngine().DeleteAsync(id);
|
|
349
354
|
case ObjectClasses.Group: return await SDK_Globals.tmSession?.NewGroupEngine().DeleteAsync(id);
|
|
@@ -366,6 +371,7 @@ PlatformObjectService.getName = (objClass, jobType = JobTypes.None, isPlural = f
|
|
|
366
371
|
switch (objClass) {
|
|
367
372
|
case ObjectClasses.Area: return isPlural ? SDK_Localizator.Areas : SDK_Localizator.Area;
|
|
368
373
|
case ObjectClasses.BasketType: return isPlural ? SDK_Localizator.BasketTypes : SDK_Localizator.BasketType;
|
|
374
|
+
case ObjectClasses.DcmtType: return isPlural ? SDK_Localizator.DcmtTypes : SDK_Localizator.DcmtType;
|
|
369
375
|
case ObjectClasses.DataList: return isPlural ? SDK_Localizator.DataLists : SDK_Localizator.DataList;
|
|
370
376
|
case ObjectClasses.Disk: return isPlural ? SDK_Localizator.Disks : SDK_Localizator.Disk;
|
|
371
377
|
case ObjectClasses.Group: return isPlural ? SDK_Localizator.Groups : SDK_Localizator.Group;
|
|
@@ -395,13 +401,14 @@ PlatformObjectService.getIcon = (objClass, d) => {
|
|
|
395
401
|
break;
|
|
396
402
|
}
|
|
397
403
|
return (_jsx("div", { style: { flexDirection: "row", display: "flex", alignItems: "center", justifyContent: "center", overflow: 'visible' }, children: objClass == ObjectClasses.User ? _jsx(TMUserIcon, { ud: d }) :
|
|
398
|
-
_jsxs(TMTooltip, { content: _a.getTooltip(objClass, d), children: [objClass == ObjectClasses.Area && _jsx(IconCloud, { color: ownershipColor }), objClass == ObjectClasses.BasketType && _jsx(IconBasket, { color: ownershipColor }), objClass == ObjectClasses.Disk && _jsx(IconDisk, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.DataList && d.id && d.id > 26 && _jsx(IconDataList, { color: ownershipColor }), objClass == ObjectClasses.DataList && d.id && d.id <= 26 && _jsx(IconSettings, { color: ownershipColor }), objClass == ObjectClasses.Group && _jsx(IconUserGroup, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.Numerator && _jsx(Icon123, { color: ownershipColor }), objClass == ObjectClasses.SignCert && _jsx(IconSignCert, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.SignServer && _jsx(IconServerService, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.LDAP && _jsx(IconAddressBook, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.Tree && _jsx(IconTree, { color: ownershipColor }), objClass == ObjectClasses.TSA && _jsx(IconAccessPoint, { color: ownershipColor }), objClass == ObjectClasses.Job && _jsx(IconSuitcase, { color: ownershipColor }), objClass == ObjectClasses.Process && _jsx(IconProcess, { color: d.state === ProcessStates.Running ? TMColors.primary : d.state === ProcessStates.Ready || d.state === ProcessStates.Started ? TMColors.secondary : d.state === ProcessStates.Freezed ? 'rgb(180,180,180)' : d.state === ProcessStates.Completed ? TMColors.success : TMColors.error })] }) }));
|
|
404
|
+
_jsxs(TMTooltip, { content: _a.getTooltip(objClass, d), children: [objClass == ObjectClasses.Area && _jsx(IconCloud, { color: ownershipColor }), objClass == ObjectClasses.BasketType && _jsx(IconBasket, { color: ownershipColor }), objClass == ObjectClasses.DcmtType && _jsx(IconDcmtType, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.Disk && _jsx(IconDisk, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.DataList && d.id && d.id > 26 && _jsx(IconDataList, { color: ownershipColor }), objClass == ObjectClasses.DataList && d.id && d.id <= 26 && _jsx(IconSettings, { color: ownershipColor }), objClass == ObjectClasses.Group && _jsx(IconUserGroup, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.Numerator && _jsx(Icon123, { color: ownershipColor }), objClass == ObjectClasses.SignCert && _jsx(IconSignCert, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.SignServer && _jsx(IconServerService, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.LDAP && _jsx(IconAddressBook, { fontSize: 20, color: ownershipColor }), objClass == ObjectClasses.Tree && _jsx(IconTree, { color: ownershipColor }), objClass == ObjectClasses.TSA && _jsx(IconAccessPoint, { color: ownershipColor }), objClass == ObjectClasses.Job && _jsx(IconSuitcase, { color: ownershipColor }), objClass == ObjectClasses.Process && _jsx(IconProcess, { color: d.state === ProcessStates.Running ? TMColors.primary : d.state === ProcessStates.Ready || d.state === ProcessStates.Started ? TMColors.secondary : d.state === ProcessStates.Freezed ? 'rgb(180,180,180)' : d.state === ProcessStates.Completed ? TMColors.success : TMColors.error })] }) }));
|
|
399
405
|
};
|
|
400
406
|
PlatformObjectService.getTooltip = (objClass, d) => {
|
|
401
407
|
let ownLevel = LocalizeOwnershipLevels(d.ownershipLevel);
|
|
402
408
|
switch (objClass) {
|
|
403
409
|
case ObjectClasses.Area:
|
|
404
410
|
case ObjectClasses.BasketType:
|
|
411
|
+
case ObjectClasses.DcmtType:
|
|
405
412
|
case ObjectClasses.Disk:
|
|
406
413
|
case ObjectClasses.DataList:
|
|
407
414
|
case ObjectClasses.Group:
|