fix(API): fix premission api example (#6199)

This commit is contained in:
wpxp123456
2025-11-24 15:11:02 +08:00
committed by GitHub
parent 0cbc370497
commit 8da3fe94e6
6 changed files with 58 additions and 1159 deletions
+37
View File
@@ -16,6 +16,7 @@
import { FEnum } from '@univerjs/core/facade';
import { SheetSkeletonChangeType, SheetValueChangeType, SplitDelimiterEnum } from '@univerjs/sheets';
import { RangePermissionPoint, UnitRole, WorkbookPermissionPoint, WorksheetPermissionPoint } from './permission';
/**
* @ignore
@@ -37,6 +38,26 @@ export interface IFSheetsEnum {
* Split delimiter types.
*/
SplitDelimiterType: typeof SplitDelimiterEnum;
/**
* Unit roles.
*/
UnitRole: typeof UnitRole;
/**
* Workbook permission points.
*/
WorkbookPermissionPoint: typeof WorkbookPermissionPoint;
/**
* Worksheet permission points.
*/
WorksheetPermissionPoint: typeof WorksheetPermissionPoint;
/**
* Range permission points.
*/
RangePermissionPoint: typeof RangePermissionPoint;
}
export class FSheetsEnum implements IFSheetsEnum {
@@ -51,6 +72,22 @@ export class FSheetsEnum implements IFSheetsEnum {
get SplitDelimiterType(): typeof SplitDelimiterEnum {
return SplitDelimiterEnum;
}
get UnitRole(): typeof UnitRole {
return UnitRole;
}
get WorkbookPermissionPoint(): typeof WorkbookPermissionPoint {
return WorkbookPermissionPoint;
}
get WorksheetPermissionPoint(): typeof WorksheetPermissionPoint {
return WorksheetPermissionPoint;
}
get RangePermissionPoint(): typeof RangePermissionPoint {
return RangePermissionPoint;
}
}
FEnum.extend(FSheetsEnum);
File diff suppressed because it is too large Load Diff
@@ -208,7 +208,7 @@ export class FRangePermission implements IRangePermission {
* ```ts
* const range = univerAPI.getActiveWorkbook()?.getActiveSheet()?.getRange('A1:B2');
* const permission = range?.getRangePermission();
* const canEdit = permission?.getPoint(RangePermissionPoint.Edit);
* const canEdit = permission?.getPoint(univerAPI.Enum.RangePermissionPoint.Edit);
* console.log(canEdit);
* ```
*/
@@ -359,8 +359,8 @@ export class FRangePermission implements IRangePermission {
* const range = univerAPI.getActiveWorkbook()?.getActiveSheet()?.getRange('A1:B2');
* const permission = range?.getRangePermission();
* // Can set permission points without calling protect() first (local-only mode)
* await permission?.setPoint(RangePermissionPoint.Edit, false); // Disable edit
* await permission?.setPoint(RangePermissionPoint.View, true); // Enable view
* await permission?.setPoint(univerAPI.Enum.RangePermissionPoint.Edit, false); // Disable edit
* await permission?.setPoint(univerAPI.Enum.RangePermissionPoint.View, true); // Enable view
* ```
*/
async setPoint(point: RangePermissionPoint, value: boolean): Promise<void> {
@@ -44,7 +44,7 @@ export class FRangeProtectionRule implements IRangeProtectionRule {
* @example
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.permission();
* const permission = worksheet?.getWorksheetPermission();
* const rules = await permission?.listRangeProtectionRules();
* const ruleId = rules?.[0]?.id;
* console.log(ruleId);
@@ -60,7 +60,7 @@ export class FRangeProtectionRule implements IRangeProtectionRule {
* @example
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.permission();
* const permission = worksheet?.getWorksheetPermission();
* const rules = await permission?.listRangeProtectionRules();
* const ranges = rules?.[0]?.ranges;
* console.log(ranges);
@@ -76,7 +76,7 @@ export class FRangeProtectionRule implements IRangeProtectionRule {
* @example
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.permission();
* const permission = worksheet?.getWorksheetPermission();
* const rules = await permission?.listRangeProtectionRules();
* const options = rules?.[0]?.options;
* console.log(options);
@@ -93,7 +93,7 @@ export class FRangeProtectionRule implements IRangeProtectionRule {
* @example
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.permission();
* const permission = worksheet?.getWorksheetPermission();
* const rules = await permission?.listRangeProtectionRules();
* const rule = rules?.[0];
* await rule?.updateRanges([worksheet.getRange('A1:C3')]);
@@ -150,7 +150,7 @@ export class FRangeProtectionRule implements IRangeProtectionRule {
* @example
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.permission();
* const permission = worksheet?.getWorksheetPermission();
* const rules = await permission?.listRangeProtectionRules();
* const rule = rules?.[0];
* await rule?.updateOptions({ name: 'New Protection Name', allowEdit: true });
@@ -188,7 +188,7 @@ export class FRangeProtectionRule implements IRangeProtectionRule {
* @example
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.permission();
* const permission = worksheet?.getWorksheetPermission();
* const rules = await permission?.listRangeProtectionRules();
* const rule = rules?.[0];
* await rule?.remove();
@@ -338,7 +338,7 @@ export class FWorkbookPermission implements IWorkbookPermission {
* ```ts
* const workbook = univerAPI.getActiveWorkbook();
* const permission = workbook?.getWorkbookPermission();
* await permission?.setPoint(WorkbookPermissionPoint.Print, false);
* await permission?.setPoint(univerAPI.Enum.WorkbookPermissionPoint.Print, false);
* ```
*/
async setPoint(point: WorkbookPermissionPoint, value: boolean): Promise<void> {
@@ -374,7 +374,7 @@ export class FWorkbookPermission implements IWorkbookPermission {
* ```ts
* const workbook = univerAPI.getActiveWorkbook();
* const permission = workbook?.getWorkbookPermission();
* const canPrint = permission?.getPoint(WorkbookPermissionPoint.Print);
* const canPrint = permission?.getPoint(univerAPI.Enum.WorkbookPermissionPoint.Print);
* console.log(canPrint);
* ```
*/
@@ -416,11 +416,11 @@ export class FWorkbookPermission implements IWorkbookPermission {
* await permission?.setCollaborators([
* {
* user: { userID: 'user1', name: 'John Doe', avatar: 'https://...' },
* role: UnitRole.Editor
* role: univerAPI.Enum.UnitRole.Editor
* },
* {
* user: { userID: 'user2', name: 'Jane Smith', avatar: '' },
* role: UnitRole.Reader
* role: univerAPI.Enum.UnitRole.Reader
* }
* ]);
* ```
@@ -463,7 +463,7 @@ export class FWorkbookPermission implements IWorkbookPermission {
* const permission = workbook?.getWorkbookPermission();
* await permission?.addCollaborator(
* { userID: 'user1', name: 'John Doe', avatar: 'https://...' },
* UnitRole.Editor
* univerAPI.Enum.UnitRole.Editor
* );
* ```
*/
@@ -498,7 +498,7 @@ export class FWorkbookPermission implements IWorkbookPermission {
* const permission = workbook?.getWorkbookPermission();
* await permission?.updateCollaborator(
* { userID: 'user1', name: 'John Doe Updated', avatar: 'https://...' },
* UnitRole.Reader
* univerAPI.Enum.UnitRole.Reader
* );
* ```
*/
@@ -517,7 +517,7 @@ export class FWorksheetPermission implements IWorksheetPermission {
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.getWorksheetPermission();
* await permission?.setPoint(WorksheetPermissionPoint.InsertRow, false);
* await permission?.setPoint(univerAPI.Enum.WorksheetPermissionPoint.InsertRow, false);
* ```
*/
async setPoint(point: WorksheetPermissionPoint, value: boolean): Promise<void> {
@@ -553,7 +553,7 @@ export class FWorksheetPermission implements IWorksheetPermission {
* ```ts
* const worksheet = univerAPI.getActiveWorkbook()?.getActiveSheet();
* const permission = worksheet?.getWorksheetPermission();
* const canInsertRow = permission?.getPoint(WorksheetPermissionPoint.InsertRow);
* const canInsertRow = permission?.getPoint(univerAPI.Enum.WorksheetPermissionPoint.InsertRow);
* console.log(canInsertRow);
* ```
*/
@@ -595,8 +595,8 @@ export class FWorksheetPermission implements IWorksheetPermission {
* await permission?.applyConfig({
* mode: 'readOnly',
* points: {
* [WorksheetPermissionPoint.View]: true,
* [WorksheetPermissionPoint.Edit]: false
* [univerAPI.Enum.WorksheetPermissionPoint.View]: true,
* [univerAPI.Enum.WorksheetPermissionPoint.Edit]: false
* }
* });
* ```
@@ -637,11 +637,11 @@ export class FWorksheetPermission implements IWorksheetPermission {
* const rules = await permission?.protectRanges([
* {
* ranges: [worksheet.getRange('A1:B2')],
* options: { name: 'Protected Area 1', allowEdit: false, allowView: true }
* options: { name: 'Protected Area 1', allowEdit: false, allowViewByOthers: true }
* },
* {
* ranges: [worksheet.getRange('C3:D4')],
* options: { name: 'Protected Area 2', allowEdit: true, allowView: false }
* options: { name: 'Protected Area 2', allowEdit: true, allowViewByOthers: false }
* }
* ]);
* console.log(rules);