UNPKG

sp-js-provisioning

Version:
120 lines (119 loc) 3.2 kB
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; }