UNPKG

@mikezimm/fps-library-v2

Version:

Library of reusable typescript/javascript functions, interfaces and constants

129 lines (128 loc) 8.24 kB
/** * CodeAnalizerComment: Updated 2 imports on 2024-09-21 23:07:24 * Update:: import { IPreConfigSettings } to '@mikezimm/fps-core-v7/lib/common/PropPaneHelp/preconfig/IPreConfig;' * Update:: import { IFPSCert } to '@mikezimm/fps-core-v7/lib/banner/FPSWebPartClass/IFPSCert;' */ import { PivotItem } from '@fluentui/react/lib/Pivot'; // import { Icon } from '@fluentui/react/lib/Icon'; import * as React from 'react'; import { createLink, FPSYoutubeFirst5Link, FPSYoutubeGetStartedLink, FPSYoutubeHelpLink, TeamsIcon, } from '../../../components/atoms/Links/CreateLinks'; import { devDocsPnpListFormat, devDocsPowerPlatform, devDocsSPORoadmap, JSONEditor } from '../../../components/atoms/Links/LinksDevDocs'; import { Check4, check4This } from '@mikezimm/fps-core-v7/lib/logic/Links/CheckSearch'; export function minmizeSitesLink(link) { link = link.replace('/sites/', '').replace('.aspx', ''); return link; } /** * Inspired by https://github.com/mikezimm/pivottiles7/issues/375 - Basic Help Page * All urls for this page are configured in the fpsCert's forced props * Each tenant can have it's own set of links but it's recommended to use the defaults found here * src\banner\features\Misc\fpsDefaults.ts * export const DefaultHelpSite: string = `/sites/SharePointHelp`; * export const DefaultGetStarted: string = `${DefaultHelpSite}/SitePages/GettingStarted`; * export const DefaultTop5: string = `${DefaultGetStarted}Top5`; * export const DefaultPolicies: string = `${DefaultGetStarted}Policies`; * * @param fpsCert * @param logo * @param headerText * @returns */ export function TenantHelpInfo(fpsCert, webUrl, bannerProps, logo = 'Education', headerText = undefined) { const { _tenantHelpUrl, _tenanatFirst5, _tenantGetStartedUrl, _tenantPolicies, _youtubeChannel, _youtubeFirst5, _youtubeHelp, _youtubeGetStarted, _preConfigClassTest } = bannerProps.tenantHelp; const InLineFlexLinkStyle = { gap: '.5em', paddingTop: '5px' }; const forced = fpsCert.forced; if (check4This(Check4.testingLog_Eq_true) === true) { console.log(`${Check4.testingLog_Eq_true} TenantHelpInfo ~ 40`, forced, bannerProps.tenantHelp); } const AdditionalElements = [ React.createElement("div", null, React.createElement("h3", null, "Additional Recommended steps"), !_tenantGetStartedUrl ? undefined : React.createElement("div", { className: 'fps-flex-align', style: { gap: '.5em' } }, "Company Next Steps: ", createLink(_tenantGetStartedUrl, '_blank', `${minmizeSitesLink(_tenantGetStartedUrl)}`)), _youtubeGetStarted ? FPSYoutubeGetStartedLink : undefined) ]; AdditionalElements.push(React.createElement("div", null, React.createElement("h3", null, "Your SharePoint Help resources"), React.createElement("div", null, "Find out more about SharePoint at our help site here:"), _tenantHelpUrl ? React.createElement("div", { className: 'fps-flex-align', style: InLineFlexLinkStyle }, "Company Site: ", createLink(_tenantHelpUrl, '_blank', `${minmizeSitesLink(_tenantHelpUrl)}`)) : undefined, _youtubeHelp ? FPSYoutubeHelpLink : undefined)); if (_tenantPolicies) AdditionalElements.push(React.createElement("div", null, React.createElement("h3", null, "Our SharePoint Policies"), React.createElement("div", { className: 'fps-flex-align', style: { gap: '.5em' } }, "Company Site: ", createLink(_tenantPolicies, '_blank', `${minmizeSitesLink(_tenantPolicies)}`)))); AdditionalElements.push(React.createElement("div", null, React.createElement("h3", null, "Power Users join forces!"), React.createElement("div", { style: { display: 'inline-flex', gap: '1.5em' } }, devDocsPnpListFormat, devDocsPowerPlatform, devDocsSPORoadmap, JSONEditor))); // Added this to get responsive grid once it is wide enough const responsiveStyle = ` @media (min-width: 980px) { .tenHelpGridX { grid-template-columns: auto auto; } } `; const ConstGetStarted = React.createElement("div", null, React.createElement("div", { className: 'fps-pph-topic' }, "Welcome to your SharePoint Site!"), React.createElement("div", null, React.createElement("div", null, React.createElement("h3", null, "Get your site off to a good start with these first steps"), React.createElement("ol", { className: 'fps-list-pad' }, React.createElement("li", null, React.createElement("b", null, "Change:\u00A0\u00A0"), " SiteGear > SitePermissions > Advanced Permissions > ", React.createElement("b", null, createLink(`${webUrl}/_layouts/15/user.aspx`, '_blank', 'Change Members group to Contribute instead of Edit'))), React.createElement("li", null, React.createElement("b", null, "Change:\u00A0\u00A0"), " SiteGear > SitePermissions > Change How Members Share > ", React.createElement("b", null, "Only site owners can share files")), React.createElement("li", null, React.createElement("b", null, "Add:\u00A0\u00A0"), " SiteGear > Change the look > Header > ", React.createElement("b", null, "Add Site logo thumbnail AND Site logo")), React.createElement("li", null, React.createElement("b", null, "Join:\u00A0\u00A0"), " SiteGear > Site Information > Hub site association > ", React.createElement("b", null, "Find and Join a relavant Hub site")), React.createElement("li", null, React.createElement("b", null, "Verify:\u00A0\u00A0"), " Your Site Timezone: ", createLink(`${webUrl}/_layouts/15/regionalsetng.aspx`, '_blank', 'Click here'), " "), React.createElement("li", null, React.createElement("b", null, "Add:\u00A0\u00A0"), " to your ", TeamsIcon, " by going to ", TeamsIcon, " > Add a SharePoint Tab > Add SharePoint Site > ", React.createElement("b", null, "Paste in the link to your new site")), React.createElement("li", null, React.createElement("b", null, "Bookmark:\u00A0\u00A0"), " Press the Star to bookmark your site!")), !_tenanatFirst5 ? undefined : React.createElement("div", { className: 'fps-flex-align', style: InLineFlexLinkStyle }, "Company Get Started: ", createLink(_tenanatFirst5, '_blank', `${minmizeSitesLink(_tenanatFirst5)}`)) // <div onClick ={ () => window.open( tenanatFirst5, '_blank' ) }>{ `Company Get Started: ${tenanatFirst5}`} </div> , _youtubeFirst5 ? React.createElement("div", { className: 'fps-flex-align', style: InLineFlexLinkStyle }, "Walk me through it on ", FPSYoutubeFirst5Link) : undefined), React.createElement("style", null, responsiveStyle), React.createElement("div", { className: 'tenHelpGridX', style: { display: 'grid', columnGap: '3em', rowGap: '1em' } }, AdditionalElements))); const preSetsContent = React.createElement("div", { className: 'fps-pph-content', style: { display: 'flex' } }, ConstGetStarted); const returnPivot = React.createElement(PivotItem, { headerText: headerText, itemIcon: logo }, preSetsContent); return returnPivot; } //# sourceMappingURL=TenantHelpInfo.js.map