UNPKG

@mikezimm/fps-library-v2

Version:

Library of reusable typescript/javascript functions, interfaces and constants

98 lines (96 loc) 4.63 kB
/** * CodeAnalizerComment: Updated 4 imports on 2024-09-22 14:49:52 * Update:: import { IPropertyPaneGroup } to '@mikezimm/fps-core-v7/lib/types/@msft/1.15.2/sp-property-pane;' * Update:: import { IPropertyPaneField } to '@mikezimm/fps-core-v7/lib/types/@msft/1.15.2/sp-property-pane;' * Update:: import { IThisFPSWebPartClass } to '@mikezimm/fps-core-v7/lib/banner/FPSWebPartClass/IThisFPSWebPartClass1152;' * Update:: import { IMinWPBannerProps } to '@mikezimm/fps-core-v7/lib/banner/interfaces/MinWP/IMinWPBannerProps;' */ /** * CodeAnalizerComment: Updated 2 imports on 2024-09-21 23:07:24 * Update:: import { IThisFPSWebPartClass } to '@mikezimm/fps-core-v7/lib/banner/FPSWebPartClass/IThisFPSWebPartClass1152;' * Update:: import { IMinWPBannerProps } to '@mikezimm/fps-core-v7/lib/banner/interfaces/MinWP/IMinWPBannerProps;' */ import { PropertyPaneLabel, PropertyPaneTextField, PropertyPaneToggle, } from '@microsoft/sp-property-pane'; // import { EveryoneAudienceChoices, } from '../../propPane/Audiences/Interfaces' // import { IThisFPSWebPartClass } from '../../FPSWebPartClass/IThisFPSWebPartClass'; // import { IMinWPBannerProps } from '../../interfaces/MinWP/IMinWPBannerProps'; /** * * @param thisWPClass * @returns */ export function OverRideForcedGroup(thisWPClass) { let fields = []; const wpProps = thisWPClass.properties; const { enableForceOverRide, enableLockProps } = wpProps; const urlParameters = new URLSearchParams(window.location.search); let overrideForcedPr0ps = urlParameters.get('overrideForcedPr0ps'); fields.push(PropertyPaneToggle('enableForceOverRide', { label: 'OverRide Forced Props', offText: 'Off', onText: 'On', disabled: enableLockProps === true || overrideForcedPr0ps !== 'true' ? true : false, })); const message1 = `Only IT can only over-ride forced PreConfig Props in this web part install and can not be copied to others. Over-rides void your warranty :)`; const message2 = `Add semi-colon separated properties to over-ride. Over-rides void your warranty :)`; fields.push(PropertyPaneLabel('lockedX', { text: enableForceOverRide === true ? message2 : message1, })); fields.push(PropertyPaneLabel('lockedX', { text: `IT Reminder: you can request the special Url paramter to unlock this feature.`, })); fields.push(...addOverRideStamps(wpProps)); fields.push(PropertyPaneTextField('overrideProps', { disabled: enableForceOverRide === true ? false : true, label: `Forced Props to over-ride`, description: 'Add semi-colon separated web part proprties to over-ride', multiline: true, })); const optionsGroup = { groupName: 'Forced Over-ride Props Group', isCollapsed: false, groupFields: fields }; return optionsGroup; } function addOverRideStamps(wpProps) { let fields = []; [`${wpProps.overrideTime}`, ` - - - - - - - `, `OverRide By:`, `${wpProps.overrideByUser}`,].map(str => { fields.push(PropertyPaneLabel('overrideTime', { text: str, })); }); return fields; } // export function LockPropsMessageGroup( thisWPClass: IThisFPSWebPartClass ): IPropertyPaneGroup { // let fields: IPropertyPaneField<any>[] = []; // const wpProps: IMinWPBannerProps = thisWPClass.properties; // const { enableLockProps, lockedByUser, lockedTime, lockedMess1, lockedMess2, lockedMess3, lockedHTML1 } = wpProps; // if ( enableLockProps !== true ) { // fields.push( // PropertyPaneLabel('nothing', { // text: 'This should NOT be visible in webpart' // })); // } else { // [ ``, `Property Pane was locked in order to prevent accidental changes :)`, // `Please contact the person listed below or IT in order to get assistance!`, ].map( str => { // fields.push( // PropertyPaneLabel('xyz', { // text: str, // }) ); // }); // fields.push( ...addLockedStamps( wpProps ) ); // [ 'lockedMess1', 'lockedMess2', 'lockedMess3' ].map( keyProp => { // const propVal: string = wpProps[ keyProp as 'lockedMess1']; // if ( propVal ) fields.push( // PropertyPaneLabel( keyProp , { // text: `${propVal}`, // }) ); // }); // } // let optionsGroup = { groupName: 'Lock Props Message', // isCollapsed: enableLockProps === true ? false : true , // groupFields: fields // }; // return optionsGroup; // } //# sourceMappingURL=OverRideForcedGroup.js.map