本文整理汇总了TypeScript中@uifabric/utilities.Customizations类的典型用法代码示例。如果您正苦于以下问题:TypeScript Customizations类的具体用法?TypeScript Customizations怎么用?TypeScript Customizations使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Customizations类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: getThemedContext
export function getThemedContext(context: ICustomizerContext, scheme?: ISchemeNames, theme?: ITheme): ICustomizerContext {
let newContext: ICustomizerContext = context;
let newSettings;
// Only fall back to context and customizations when theme arg is not provided.
let schemeSource = theme || Customizations.getSettings(['theme'], undefined, context.customizations).theme;
if (theme) {
newSettings = { theme };
}
const schemeTheme: ITheme | undefined = scheme && schemeSource && schemeSource.schemes && schemeSource.schemes[scheme];
// These first two checks are logically redundant but TS doesn't infer schemeSource.schemes is defined when schemeTheme is defined.
if (schemeSource && schemeTheme && schemeSource !== schemeTheme) {
newSettings = { theme: schemeTheme };
newSettings.theme.schemes = schemeSource.schemes;
}
if (newSettings) {
newContext = {
customizations: {
settings: mergeSettings(context.customizations.settings, newSettings),
scopedSettings: context.customizations.scopedSettings
}
};
}
return newContext;
}
示例2: loadTheme
export function loadTheme(theme: IPartialTheme, depComments: boolean = false): ITheme {
_theme = createTheme(theme, depComments);
// Invoke the legacy method of theming the page as well.
legacyLoadTheme({ ..._theme.palette, ..._theme.semanticColors, ..._loadFonts(_theme) });
Customizations.applySettings({ [ThemeSettingName]: _theme });
_onThemeChangeCallbacks.forEach((callback: (theme: ITheme) => void) => {
try {
callback(_theme);
} catch (e) {
// don't let a bad callback break everything else
}
});
return _theme;
}
示例3: createTheme
import { DefaultSpacing } from './DefaultSpacing';
import { loadTheme as legacyLoadTheme } from '@microsoft/load-themed-styles';
import { DefaultEffects } from './DefaultEffects';
let _theme: ITheme = createTheme({
palette: DefaultPalette,
semanticColors: _makeSemanticColorsFromPalette(DefaultPalette, false, false),
fonts: DefaultFontStyles,
isInverted: false,
disableGlobalClassNames: false
});
let _onThemeChangeCallbacks: Array<(theme: ITheme) => void> = [];
export const ThemeSettingName = 'theme';
if (!Customizations.getSettings([ThemeSettingName]).theme) {
let win = typeof window !== 'undefined' ? window : undefined;
// tslint:disable:no-string-literal no-any
if (win && (win as any)['FabricConfig'] && (win as any)['FabricConfig'].theme) {
_theme = createTheme((win as any)['FabricConfig'].theme);
}
// tslint:enable:no-string-literal no-any
// Set the default theme.
Customizations.applySettings({ [ThemeSettingName]: _theme });
}
/**
* Gets the theme object
* @param depComments - Whether to include deprecated tags as comments for deprecated slots.