Initial commit
This commit is contained in:
20
lib/services/UserCustomActionService/IUserCustomActionProps.d.ts
vendored
Normal file
20
lib/services/UserCustomActionService/IUserCustomActionProps.d.ts
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
export interface IUserCustomActionProps {
|
||||
Id?: string;
|
||||
Title: string;
|
||||
Name?: string;
|
||||
Description?: string;
|
||||
Location: string;
|
||||
ScriptSrc?: string;
|
||||
ScriptBlock?: string;
|
||||
Url?: string;
|
||||
Sequence?: number;
|
||||
Group?: string;
|
||||
ImageUrl?: string;
|
||||
CommandUIExtension?: string;
|
||||
RegistrationType?: number;
|
||||
RegistrationId?: string;
|
||||
Rights?: {};
|
||||
Scope?: number;
|
||||
ClientSideComponentId?: string;
|
||||
ClientSideComponentProperties?: string;
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
|
||||
|
||||
//# sourceMappingURL=IUserCustomActionProps.js.map
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"sources":[],"names":[],"mappings":"","file":"services/UserCustomActionService/IUserCustomActionProps.js","sourcesContent":[],"sourceRoot":"..\\..\\..\\src"}
|
||||
10
lib/services/UserCustomActionService/IUserCustomActionService.d.ts
vendored
Normal file
10
lib/services/UserCustomActionService/IUserCustomActionService.d.ts
vendored
Normal file
@@ -0,0 +1,10 @@
|
||||
import { UserCustomActionScope } from './UserCustomActionScope';
|
||||
import { IUserCustomActionProps } from './IUserCustomActionProps';
|
||||
import { UserCustomActionAddResult, UserCustomActionUpdateResult } from '@pnp/sp';
|
||||
export interface IUserCustomActionService {
|
||||
getUserCustomActions(scope: UserCustomActionScope, listId?: string): Promise<IUserCustomActionProps[]>;
|
||||
getUserCustomActionById(scope: UserCustomActionScope, id: string, listId?: string): Promise<IUserCustomActionProps>;
|
||||
addUserCustomAction(scope: UserCustomActionScope, customAction: IUserCustomActionProps, listId?: string): Promise<UserCustomActionAddResult>;
|
||||
updateUserCustomAction(scope: UserCustomActionScope, id: string, props: {}, listId?: string): Promise<UserCustomActionUpdateResult>;
|
||||
deleteUserCustomAction(scope: UserCustomActionScope, customAction: IUserCustomActionProps, listId?: string): Promise<void>;
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
|
||||
|
||||
//# sourceMappingURL=IUserCustomActionService.js.map
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"sources":[],"names":[],"mappings":"","file":"services/UserCustomActionService/IUserCustomActionService.js","sourcesContent":[],"sourceRoot":"..\\..\\..\\src"}
|
||||
5
lib/services/UserCustomActionService/UserCustomActionScope.d.ts
vendored
Normal file
5
lib/services/UserCustomActionService/UserCustomActionScope.d.ts
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
export declare enum UserCustomActionScope {
|
||||
Web = "web",
|
||||
Site = "site",
|
||||
List = "list",
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
export var UserCustomActionScope;
|
||||
(function (UserCustomActionScope) {
|
||||
UserCustomActionScope["Web"] = "web";
|
||||
UserCustomActionScope["Site"] = "site";
|
||||
UserCustomActionScope["List"] = "list";
|
||||
})(UserCustomActionScope = UserCustomActionScope || (UserCustomActionScope = {}));
|
||||
|
||||
//# sourceMappingURL=UserCustomActionScope.js.map
|
||||
@@ -0,0 +1 @@
|
||||
{"version":3,"sources":["services/UserCustomActionService/UserCustomActionScope.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,qBAIX;AAJD,WAAY,qBAAqB;IAC7B,oCAAW,CAAA;IACX,sCAAa,CAAA;IACb,sCAAa,CAAA;AACjB,CAAC,EAJW,qBAAqB,GAArB,qBAAqB,KAArB,qBAAqB,QAIhC","file":"services/UserCustomActionService/UserCustomActionScope.js","sourcesContent":["export enum UserCustomActionScope {\r\n Web = 'web',\r\n Site = 'site',\r\n List = 'list'\r\n}\r\n"],"sourceRoot":"..\\..\\..\\src"}
|
||||
13
lib/services/UserCustomActionService/UserCustomActionService.d.ts
vendored
Normal file
13
lib/services/UserCustomActionService/UserCustomActionService.d.ts
vendored
Normal file
@@ -0,0 +1,13 @@
|
||||
import { UserCustomActionAddResult, UserCustomActionUpdateResult } from '@pnp/sp/src/usercustomactions';
|
||||
import { IUserCustomActionService } from './IUserCustomActionService';
|
||||
import { UserCustomActionScope } from './UserCustomActionScope';
|
||||
import { IUserCustomActionProps } from './IUserCustomActionProps';
|
||||
import { ApplicationCustomizerContext } from '@microsoft/sp-application-base';
|
||||
export declare class UserCustomActionService implements IUserCustomActionService {
|
||||
constructor(context: ApplicationCustomizerContext);
|
||||
getUserCustomActions(scope: UserCustomActionScope, listId?: string): Promise<IUserCustomActionProps[]>;
|
||||
getUserCustomActionById(scope: UserCustomActionScope, id: string, listId?: string): Promise<IUserCustomActionProps>;
|
||||
addUserCustomAction(scope: UserCustomActionScope, customAction: IUserCustomActionProps, listId?: string): Promise<UserCustomActionAddResult>;
|
||||
updateUserCustomAction(scope: UserCustomActionScope, id: string, props: {}, listId?: string): Promise<UserCustomActionUpdateResult>;
|
||||
deleteUserCustomAction(scope: UserCustomActionScope, customAction: IUserCustomActionProps, listId?: string): Promise<void>;
|
||||
}
|
||||
210
lib/services/UserCustomActionService/UserCustomActionService.js
Normal file
210
lib/services/UserCustomActionService/UserCustomActionService.js
Normal file
@@ -0,0 +1,210 @@
|
||||
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
||||
return new (P || (P = Promise))(function (resolve, reject) {
|
||||
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
||||
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
||||
function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
|
||||
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
||||
});
|
||||
};
|
||||
var __generator = (this && this.__generator) || function (thisArg, body) {
|
||||
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
||||
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
||||
function verb(n) { return function (v) { return step([n, v]); }; }
|
||||
function step(op) {
|
||||
if (f) throw new TypeError("Generator is already executing.");
|
||||
while (_) try {
|
||||
if (f = 1, y && (t = y[op[0] & 2 ? "return" : op[0] ? "throw" : "next"]) && !(t = t.call(y, op[1])).done) return t;
|
||||
if (y = 0, t) op = [0, t.value];
|
||||
switch (op[0]) {
|
||||
case 0: case 1: t = op; break;
|
||||
case 4: _.label++; return { value: op[1], done: false };
|
||||
case 5: _.label++; y = op[1]; op = [0]; continue;
|
||||
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
||||
default:
|
||||
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
||||
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
||||
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
||||
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
||||
if (t[2]) _.ops.pop();
|
||||
_.trys.pop(); continue;
|
||||
}
|
||||
op = body.call(thisArg, _);
|
||||
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
||||
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
||||
}
|
||||
};
|
||||
import { sp } from '@pnp/sp';
|
||||
import { UserCustomActionScope } from './UserCustomActionScope';
|
||||
var UserCustomActionService = (function () {
|
||||
function UserCustomActionService(context) {
|
||||
sp.setup({
|
||||
spfxContext: context
|
||||
});
|
||||
}
|
||||
UserCustomActionService.prototype.getUserCustomActions = function (scope, listId) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
var actions, _a, error_1;
|
||||
return __generator(this, function (_b) {
|
||||
switch (_b.label) {
|
||||
case 0:
|
||||
_b.trys.push([0, 9, , 10]);
|
||||
actions = void 0;
|
||||
_a = scope;
|
||||
switch (_a) {
|
||||
case UserCustomActionScope.Web: return [3 /*break*/, 1];
|
||||
case UserCustomActionScope.Site: return [3 /*break*/, 3];
|
||||
case UserCustomActionScope.List: return [3 /*break*/, 5];
|
||||
}
|
||||
return [3 /*break*/, 7];
|
||||
case 1: return [4 /*yield*/, sp.web.userCustomActions.get()];
|
||||
case 2:
|
||||
actions = _b.sent();
|
||||
return [3 /*break*/, 8];
|
||||
case 3: return [4 /*yield*/, sp.site.userCustomActions.get()];
|
||||
case 4:
|
||||
actions = _b.sent();
|
||||
return [3 /*break*/, 8];
|
||||
case 5:
|
||||
if (!listId) {
|
||||
throw new Error('List ID is required for List scope');
|
||||
}
|
||||
return [4 /*yield*/, sp.web.lists.getById(listId).userCustomActions.get()];
|
||||
case 6:
|
||||
actions = _b.sent();
|
||||
return [3 /*break*/, 8];
|
||||
case 7: throw new Error('Invalid scope');
|
||||
case 8: return [2 /*return*/, actions];
|
||||
case 9:
|
||||
error_1 = _b.sent();
|
||||
console.error('Error getting user custom actions: ', error_1);
|
||||
throw error_1;
|
||||
case 10: return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
UserCustomActionService.prototype.getUserCustomActionById = function (scope, id, listId) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
return __generator(this, function (_a) {
|
||||
try {
|
||||
switch (scope) {
|
||||
case UserCustomActionScope.Web:
|
||||
return [2 /*return*/, sp.web.userCustomActions.getById(id)];
|
||||
case UserCustomActionScope.Site:
|
||||
return [2 /*return*/, sp.site.userCustomActions.getById(id)];
|
||||
case UserCustomActionScope.List:
|
||||
if (!listId) {
|
||||
throw new Error('List ID is required for List scope');
|
||||
}
|
||||
return [2 /*return*/, sp.web.lists.getById(listId).userCustomActions.getById(id)];
|
||||
default:
|
||||
throw new Error('Invalid scope');
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
console.error('Error getting user custom action by ID: ', error);
|
||||
throw error;
|
||||
}
|
||||
return [2 /*return*/];
|
||||
});
|
||||
});
|
||||
};
|
||||
UserCustomActionService.prototype.addUserCustomAction = function (scope, customAction, listId) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
return __generator(this, function (_a) {
|
||||
try {
|
||||
switch (scope) {
|
||||
case UserCustomActionScope.Web:
|
||||
return [2 /*return*/, sp.web.userCustomActions.add(customAction)];
|
||||
case UserCustomActionScope.Site:
|
||||
return [2 /*return*/, sp.site.userCustomActions.add(customAction)];
|
||||
case UserCustomActionScope.List:
|
||||
if (!listId) {
|
||||
throw new Error('List ID is required for List scope');
|
||||
}
|
||||
return [2 /*return*/, sp.web.lists.getById(listId).userCustomActions.add(customAction)];
|
||||
default:
|
||||
throw new Error('Invalid scope');
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
console.error('Error adding user custom action: ', error);
|
||||
throw error;
|
||||
}
|
||||
return [2 /*return*/];
|
||||
});
|
||||
});
|
||||
};
|
||||
UserCustomActionService.prototype.updateUserCustomAction = function (scope, id, props, listId) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
var result, _a, error_2;
|
||||
return __generator(this, function (_b) {
|
||||
switch (_b.label) {
|
||||
case 0:
|
||||
_b.trys.push([0, 9, , 10]);
|
||||
result = void 0;
|
||||
_a = scope;
|
||||
switch (_a) {
|
||||
case UserCustomActionScope.Web: return [3 /*break*/, 1];
|
||||
case UserCustomActionScope.Site: return [3 /*break*/, 3];
|
||||
case UserCustomActionScope.List: return [3 /*break*/, 5];
|
||||
}
|
||||
return [3 /*break*/, 7];
|
||||
case 1: return [4 /*yield*/, sp.web.userCustomActions.getById(id).update(props)];
|
||||
case 2:
|
||||
result = _b.sent();
|
||||
return [3 /*break*/, 8];
|
||||
case 3: return [4 /*yield*/, sp.site.userCustomActions.getById(id).update(props)];
|
||||
case 4:
|
||||
result = _b.sent();
|
||||
return [3 /*break*/, 8];
|
||||
case 5:
|
||||
if (!listId) {
|
||||
throw new Error('List ID is required for List scope');
|
||||
}
|
||||
return [4 /*yield*/, sp.web.lists.getById(listId).userCustomActions.getById(id).update(props)];
|
||||
case 6:
|
||||
result = _b.sent();
|
||||
return [3 /*break*/, 8];
|
||||
case 7: throw new Error('Invalid scope');
|
||||
case 8: return [2 /*return*/, result];
|
||||
case 9:
|
||||
error_2 = _b.sent();
|
||||
console.error('Error updating user custom action: ', error_2);
|
||||
throw error_2;
|
||||
case 10: return [2 /*return*/];
|
||||
}
|
||||
});
|
||||
});
|
||||
};
|
||||
UserCustomActionService.prototype.deleteUserCustomAction = function (scope, customAction, listId) {
|
||||
return __awaiter(this, void 0, void 0, function () {
|
||||
return __generator(this, function (_a) {
|
||||
try {
|
||||
switch (scope) {
|
||||
case UserCustomActionScope.Web:
|
||||
return [2 /*return*/, sp.web.userCustomActions.getById(customAction.Id).delete()];
|
||||
case UserCustomActionScope.Site:
|
||||
return [2 /*return*/, sp.site.userCustomActions.getById(customAction.Id).delete()];
|
||||
case UserCustomActionScope.List:
|
||||
if (!listId) {
|
||||
throw new Error('List ID is required for List scope');
|
||||
}
|
||||
return [2 /*return*/, sp.web.lists.getById(listId).userCustomActions.getById(customAction.Id).delete()];
|
||||
default:
|
||||
throw new Error('Invalid scope');
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
console.error('Error deleting user custom action: ', error);
|
||||
throw error;
|
||||
}
|
||||
return [2 /*return*/];
|
||||
});
|
||||
});
|
||||
};
|
||||
return UserCustomActionService;
|
||||
}());
|
||||
export { UserCustomActionService };
|
||||
|
||||
//# sourceMappingURL=UserCustomActionService.js.map
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user