UNPKG

@mikezimm/fps-core-v7

Version:

Library of reusable core interfaces, types and constants migrated from fps-library-v2

156 lines 6.09 kB
/** * 2024-09-07: Migrated from the same folder in fps-library-v2/banner/features/FPSWebPartClass/... */ import { ISitePreConfigProps } from '../../common/PropPaneHelp/preconfig/IPreConfig'; import { IRepoLinks } from '../../components/atoms/Links/IRepoLinks'; import { ILoadPerformance, ILoadPerformanceOps } from '../../components/molecules/Performance/IPerformance'; import { IFPSUser } from '../../components/atoms/Users/IUserInterfaces'; import { IFPSCert } from './IFPSCert'; import { IFPSEnviro } from '../features/FPSDOM/IFPSEnviro'; import { DisplayMode } from '../../types/@msft/1.15.2/displayMode'; import { WebPartContextCopy_15_2 } from '../../types/@msft/1.15.2/WebPartContext'; import { IMinWPBannerProps } from '../interfaces/MinWP/IMinWPBannerProps'; import { IFullBackgroundMode } from '../../components/molecules/FullPageBackGround/interfaces/IFPSPageBGWPProps'; import { IFieldPanelDesignMode } from '../../components/molecules/FieldPanel/interfaces/IMinWPFieldPanelProps'; import { IFPSListItemPickerWPClass, IFPSListItemPickerWPClass2 } from '../components/ItemPicker/interfaces/IFPSListItemPickerWPClass'; import { IFpsSpHttpServiceMIN } from '../../components/molecules/SpHttp/Sp/IFpsSpHttpServiceMIN'; import { IFPSGeneric_JSX_Element } from '../../types/react/IFPSJSX_Element'; import { ISourceRowRender } from '../../components/molecules/SourcePage/ISourceRowRender'; export type IFieldPanelMode = 'Auto' | 'Manual' | 'Disabled'; export type ICallbackAddParamToUrl = (newParamStr: string, reRender: boolean, newTab: boolean) => void; export interface IFPSSiteThemes { fpsMainErrBlock: string; fpsSiteThemeDark: string; fpsSiteThemeLight: string; fpsSiteThemePrimary: string; } /** * * WARNING: THIS SHOULD MATCH THE CLASS IN FPSBaseClass * It is intended to mirror the class and is used for type checking in various functions including: * - BuildBannerProps * - runOnPropChange * - runOnSuperOnInit * - runWebPartRender * */ export interface IThisFPSWebPartClass extends IFPSListItemPickerWPClass, IFPSListItemPickerWPClass2, ITenantHelpPageLinks { /** * These are intended to be set or adjusted right at the beginning of the main webpart class */ _repoLink: IRepoLinks; _exportIgnorePropsWP: string[]; _importBlockPropsWP: string[]; _trickyApp: string; _trickyEmailsWP: string[]; _panelVersion: string; _analyticsListX: string; _analyticsWebX: string; _analyticsOptionsX: string[]; _wpTDLeft: string[]; _wpTDRight: string[]; _wpFilterProps: string[]; _fpsSpService: IFpsSpHttpServiceMIN; /** * These are preset but likely to be adjusted in each webpart as needed */ _allowPinMe: boolean; /** * These are preset and NOT Likely to need adjustments */ _forceBanner: boolean; _modifyBannerTitle: boolean; _modifyBannerStyle: boolean; _keysToShow: ILoadPerformanceOps[]; _allowQuickLaunchHide: boolean; _allowSocialBarHide: boolean; _allowToolBarHide: boolean; _allowAllSectWidth: boolean; _allowShowSearch: boolean; _allowBeAUser: boolean; _allowFeedback: boolean; _allowPandoramic: boolean; _allowSiteThemeChoice: boolean; _allowEasyPages: boolean; _allowFullPageBG: IFullBackgroundMode; _allowFieldPanel: IFieldPanelMode; _allowPropsEasyMode: boolean; _expandPropsEasyModeCount: number; _wpInfoGroupExpanded: boolean; _lastPropPaneChange: string; _FieldPanelDesignMode: IFieldPanelDesignMode; _FieldPanelWebProp: 'webUrl' | string; _FieldPanelListProp: 'listTitle' | string; _doHeadingStyles: boolean; _imageWPInfo: string; _imagePlace: string; /** * These are updated later in the code */ _performance: ILoadPerformance; _sitePresets: ISitePreConfigProps; _FPSUser: IFPSUser; _FPSEnviro: IFPSEnviro; _IFPSCert: IFPSCert[]; /** * All themes object... * import stylesFPS from './CoreFPS/fpsTheme.module.scss'; * * add before super onInit * this._fpsSiteThemes.fpsTheme; */ _fpsSiteThemes: IFPSSiteThemes; _fpsSiteThemeDark: string; _fpsSiteThemeLight: string; _fpsSiteThemePrimary: string; /** * These are preset and should be managed by the code... do not change in main webpart class */ _wpInstanceID: string; _FPSId: string; _exitPropPaneChanged: boolean; _importErrorMessage: string; _trickyEmailsAll: string[]; _isSPA: boolean; _urlParameters: any; _beAReader: boolean; _hardExpire: boolean; /** * These are functions used in the class */ _beAUserFunction(): void; _saveFieldPanelViewsFunction(): void; _saveFieldPanelCommandsFunction(): void; _addParamToUrl: ICallbackAddParamToUrl; _refreshBGStyles(): void; _resetEasyIcons(): void; _forceMainRender(): void; /** * Added as option rowRenders for EasyAnalytics so that entire page/ecosystem can easily be reused and customized (aka SP-API-Tester use) * @param props * @returns */ _renderItemsRow: ((props: ISourceRowRender) => IFPSGeneric_JSX_Element) | null; _renderBarsRow: ((props: ISourceRowRender) => IFPSGeneric_JSX_Element) | null; /** * These are here JUST FOR INTERFACE but come from SharePoint class */ displayMode: DisplayMode; context: WebPartContextCopy_15_2; domElement: HTMLElement; properties: IMinWPBannerProps; onPropertyPaneConfigurationStart: any; onPropertyPaneFieldChanged: any; } export interface ITenantHelpPageLinks { _tenantHelpUrl: string; _tenanatFirst5: string; _tenantGetStartedUrl: string; _tenantPolicies: string; _youtubeChannel: string; _youtubeFirst5: string; _youtubeHelp: string; _youtubeGetStarted: string; _preConfigClassTest: string; } //# sourceMappingURL=IThisFPSWebPartClass1152.d.ts.map