UNPKG

@mikezimm/fps-library-v2

Version:

Library of reusable typescript/javascript functions, interfaces and constants

63 lines (61 loc) 4.98 kB
/** * CodeAnalizerComment: Updated 2 imports on 2024-09-22 14:49:52 * Update:: import { IFpsItemsReturn } to '@mikezimm/fps-core-v7/lib/components/molecules/process-results/CheckItemsResults;' * Update:: import { addSearchMeta1 } to '@mikezimm/fps-core-v7/lib/components/molecules/SearchPage/functions/addSearchMeta1;' */ /** * CodeAnalizerComment: Updated 12 imports on 2024-09-21 23:07:24 * Update:: import { sortObjectArrayByStringKeyCollator } to '@mikezimm/fps-core-v7/lib/logic/Arrays/sorting/objects;' * Update:: import { IEasyLink } to '@mikezimm/fps-core-v7/lib/components/atoms/easy-pages/interfaces/IEasyPagesPageHookProps;' * Update:: import { createBasePerformanceInit } to '@mikezimm/fps-core-v7/lib/components/molecules/Performance/functions;' * Update:: import { startPerformOp } to '@mikezimm/fps-core-v7/lib/components/molecules/Performance/functions;' * Update:: import { updatePerformanceEnd } to '@mikezimm/fps-core-v7/lib/components/molecules/Performance/functions;' * Update:: import { ILoadPerformance } to '@mikezimm/fps-core-v7/lib/components/molecules/Performance/IPerformance;' * Update:: import { EasyIconObjectDefault } to '@mikezimm/fps-core-v7/lib/components/atoms/easy-icons/interfaces/eiTypes;' * Update:: import { IEasyIcons } to '@mikezimm/fps-core-v7/lib/components/atoms/easy-icons/interfaces/eiTypes;' * Update:: import { addEasyIcons } to '@mikezimm/fps-core-v7/lib/components/atoms/easy-icons/functions/getEasyIcon;' * Update:: import { ISourceProps } to '@mikezimm/fps-core-v7/lib/components/molecules/source-props/ISourceProps;' * Update:: import { IFpsItemsReturn } to '@mikezimm/fps-core-v7/lib/components/molecules/process-results/CheckItemsResults;' * Update:: import { addSearchMeta1 } to '@mikezimm/fps-core-v7/lib/components/molecules/SearchPage/functions/addSearchMeta1;' */ /** * 2024-09-06: NOT Migrated due to getSourceItems to @mikezimm/fps-core-v7/lib/components/atoms/easy-pages/functions */ import { sortObjectArrayByStringKeyCollator } from "@mikezimm/fps-core-v7/lib/logic/Arrays/sorting/objects"; import { createBasePerformanceInit, startPerformOp, updatePerformanceEnd } from '@mikezimm/fps-core-v7/lib/components/molecules/Performance/functions'; import { EasyIconObjectDefault, } from "@mikezimm/fps-core-v7/lib/components/atoms/easy-icons/interfaces/eiTypes"; import { addEasyIcons } from "@mikezimm/fps-core-v7/lib/components/atoms/easy-icons/functions/getEasyIcon"; import { addSearchMeta1 } from "@mikezimm/fps-core-v7/lib/components/molecules/SearchPage/functions/addSearchMeta1"; import { getSourceItemsAPI } from "@mikezimm/fps-core-v7/lib/restAPIs/lists/items/getSourceItemsAPI"; export async function getPagesContent(sourceProps, EasyIconObject = EasyIconObjectDefault, parentLink) { //"List 'Site Pages' does not exist at site with URL const performance = createBasePerformanceInit(1, false); performance.ops.fetch1 = startPerformOp('fetch1 - getPages', null, true); // https://github.com/mikezimm/Slick-Sections/issues/69 const fetchResults = await getSourceItemsAPI(sourceProps, true, false, true); // eslint-disable-next-line @typescript-eslint/no-unused-vars, prefer-const let { items, errorInfo, } = fetchResults; if (errorInfo && errorInfo.returnMess.indexOf(`"List 'Site Pages' does not exist`) > 1) alert(`I'm sorry, this site does NOT have a library Titled 'Site Pages :(`); performance.ops.fetch1 = updatePerformanceEnd(performance.ops.fetch1, true, items.length); if (parentLink) items.push(//'Title','Description','Author/Title','Editor/Title','File/ServerRelativeUrl','BannerImageUrl' { Title: '.. ^ Go to Parent Site', Description: 'Quick link to parent site Home page', File: { ServerRelativeUrl: parentLink }, type: 'current', }); performance.ops.analyze1 = startPerformOp('analyze1 - addSearchMeta', null, true); // https://github.com/mikezimm/Slick-Sections/issues/69 items = addSearchMeta1(items, sourceProps, null); // This should not be required because addEasyIcons already filters out 'SharePoint' and 'Files' // EasyIconObject.GroupKeys = EasyIconObject.GroupKeys.filter( key => { return key !== 'SharePoint' } ); items = addEasyIcons(items, sourceProps, EasyIconObject, true); performance.ops.analyze1 = updatePerformanceEnd(performance.ops.analyze1, true, items.length); items = sortObjectArrayByStringKeyCollator(items, 'asc', 'title', true, 'en'); // eslint-disable-next-line no-eval if (sourceProps.evalFilter) items = items.filter(item => eval(sourceProps.evalFilter ? sourceProps.evalFilter : '') === true); console.log(sourceProps.defType, sourceProps.listTitle, items); return { items: items, performance: performance, errMessage: errorInfo ? errorInfo.returnMess : '' }; } //# sourceMappingURL=getPagesContent.js.map