UNPKG

@mikezimm/fps-core-v7

Version:

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

110 lines (109 loc) 5.03 kB
/*** * d88888b d8888b. .d8888. d8888b. d8888b. d88888b .d8888. d88888b d888888b .d8888. * 88' 88 `8D 88' YP 88 `8D 88 `8D 88' 88' YP 88' `~~88~~' 88' YP * 88ooo 88oodD' `8bo. 88oodD' 88oobY' 88ooooo `8bo. 88ooooo 88 `8bo. * 88~~~ 88~~~ `Y8b. 88~~~ 88`8b 88~~~~~ `Y8b. 88~~~~~ 88 `Y8b. * 88 88 db 8D 88 88 `88. 88. db 8D 88. 88 db 8D * YP 88 `8888Y' 88 88 YD Y88888P `8888Y' Y88888P YP `8888Y' * * */ import { saveAnalytics4, getMinPerformanceString } from '../Analytics/saveAnalyticsAPI'; import { check4Gulp } from '../../../logic/Links/CheckGulping'; import { getTheCurrentTime } from '../Permissions/savePermissionAnalyticsAPI'; import { EasyContentsRailsApply } from '../interfaces/EasyContents'; /** * 2025-01-03: Migrated from fps-library-v2/lib/pnpjs/Permissions, pnp2/lib/services/sp/perms * combination of v2: saveProvisioningD and pnp2: saveAnalytics4D * import { saveProvisioning } from "@mikezimm/fps-core-v7/lib/restAPIs/logging/Provisioning/saveProvisioning"; * @param context : WebPart Context * @param analyticsListRailsApply : Which Provisioning was applied => `${ApplyTemplate_Rail_SaveTitle} - v2.0.0.2` * @param Title : `${ApplyTemplate_Rail_SaveTitle} - v2.0.0.2` * @param Result * @param panelVersionNumber * @param zzzRichText1Obj : mapThisList * @param Setting : this.props.railFunction * @param zzzRichText2Obj : this.state.progress * @param zzzRichText3Obj : this.state.history * @param performanceObj * @returns */ export function saveProvisioning(context, fpsSpService, analyticsListRailsApply, Title, Result, panelVersionNumber, makeList, targetList, Setting, progress, history, performanceObj = null) { const site = context.pageContext.site; const web = context.pageContext.web; const loadProperties = { // eslint-disable-next-line @typescript-eslint/no-explicit-any SiteID: site.id['_guid'], // eslint-disable-next-line @typescript-eslint/no-explicit-any WebID: web.id['_guid'], // eslint-disable-next-line @typescript-eslint/no-explicit-any SiteTitle: web.serverRelativeUrl, TargetSite: web.absoluteUrl, ListID: `${targetList.Id}`, ListTitle: `${makeList.title}`, }; const performance = getMinPerformanceString(performanceObj); const startTime = getTheCurrentTime(); const saveObject = { // https://github.com/fps-solutions/HubCon/issues/103 // __metadata: { type: `` }, loadProperties: loadProperties, Title: Title, Result: Result, CodeVersion: panelVersionNumber, zzzText1: startTime.now, zzzText2: startTime.theTime, zzzText5: site.id['_guid'], // PageURL: undefined, // PageLink: undefined, // SiteID: undefined, // SiteTitle: undefined, // WebID: undefined, // ListID: undefined, // ListTitle: undefined, // memory: undefined, // browser: undefined, // JSHeapSize: undefined, // screen: undefined, // screenSize: undefined, // device: undefined, // FPSItem: undefined, }; //This will get rid of all the escaped characters in the summary (since it's all numbers) // let zzzRichText3 = ''; //JSON.stringify( fetchInfo.summary ).replace('\\',''); //This will get rid of the leading and trailing quotes which have to be removed to make it real json object // zzzRichText3 = zzzRichText3.slice(1, zzzRichText3.length - 1); if (makeList) saveObject.zzzRichText1 = JSON.stringify(makeList); if (progress) saveObject.zzzRichText2 = JSON.stringify(progress); if (history) saveObject.zzzRichText3 = JSON.stringify(history); if (Setting) saveObject.Setting = typeof Setting === 'string' ? Setting : JSON.stringify(Setting); if (performance) saveObject.performance = performance; saveObject.TargetList = { 'Url': makeList.listURL, 'Description': makeList.listURL, }; //Saved as link column. Displayed as Relative Url saveObject.SiteLink = { 'Url': site.absoluteUrl, 'Description': site.absoluteUrl, }; // https://github.com/fps-solutions/HubCon/issues/103 // Required for non-PnpJS POST operations // saveObject.__metadata = { type: `SP.Data.${EasyContentsRailsApply}ListItem` } if (check4Gulp() === true) { console.log('saveViewAnalytics', `${EasyContentsRailsApply}`); } if (check4Gulp() === true) { console.log('saveViewAnalytics', saveObject); } saveAnalytics4(fpsSpService, `${EasyContentsRailsApply}`, saveObject, true); const saved = true; console.log('saved view info'); return saved; } //# sourceMappingURL=saveProvisioning.js.map