sp-js-provisioning
Version:
SharePoint provisioning with pure JavaScript
120 lines (119 loc) • 3.2 kB
TypeScript
import { IWeb } from '@pnp/sp/presets/all';
import { JsomContext } from 'spfx-jsom';
import { IProvisioningConfig } from '../provisioningconfig';
import { ProvisioningContext } from '../provisioningcontext';
import { IListInstance } from '../schema';
import { TokenHelper } from '../util/tokenhelper';
import { HandlerBase } from './handlerbase';
export interface ISPField {
Id: string;
InternalName: string;
SchemaXml: string;
}
/**
* Describes the Lists Object Handler
*/
export declare class Lists extends HandlerBase {
tokenHelper: TokenHelper;
jsomContext: JsomContext;
context: ProvisioningContext;
/**
* Creates a new instance of the Lists class
*
* @param config - Provisioning config
*/
constructor(config: IProvisioningConfig);
/**
* Provisioning lists
*
* @param web - The web
* @param lists - The lists to provision
*/
ProvisionObjects(web: IWeb, lists: IListInstance[], context: ProvisioningContext): Promise<void>;
/**
* Processes a list
*
* @param web - The web
* @param lc - The list
*/
private processList;
/**
* Processes content type bindings for a list
*
* @param lc - The list configuration
* @param list - The pnp list
* @param contentTypeBindings - Content type bindings
* @param removeExisting - Remove existing content type bindings
*/
private processContentTypeBindings;
/**
* Processes a content type binding for a list
*
* @param lc - The list configuration
* @param list - The pnp list
* @param contentTypeID - The Content Type ID
*/
private processContentTypeBinding;
/**
* Processes fields for a list
*
* @param web - The web
* @param list - The pnp list
*/
private processListFields;
/**
* Processes a field for a lit
*
* @param web - The web
* @param lc - The list configuration
* @param fieldXml - Field XML
*/
private processField;
/**
* Processes field refs for a list
*
* @param web - The web
* @param lc - The list configuration
*/
private processListFieldRefs;
/**
*
* Processes a field ref for a list
*
* @param list - The list
* @param lc - The list configuration
* @param fieldRef - The list field ref
* @param listFields - The list fields
* @param webFields - The web fields
*/
private processFieldRef;
/**
* Processes views for a list
*
* @param web - The web
* @param lc - The list configuration
*/
private processListViews;
/**
* Removes existing views for a list
*
* @param web - The web
* @param lc - The list configuration
*/
private removeExistingViews;
/**
* Processes a view for a list
*
* @param web - The web
* @param lc - The list configuration
* @param lvc - The view configuration
*/
private processView;
/**
* Processes view fields for a view
*
* @param view - The pnp view
* @param lvc - The view configuration
*/
private processViewFields;
}