import { AfterViewChecked, ElementRef, ErrorHandler, InjectionToken, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { BooleanInput } from '@ngx-simple/core/coercion'; import { CanColor, MixinElementRefBase, ThemePalette } from '@ngx-simple/core/common-behaviors'; import { SimIconService } from './icon.service'; declare const _IconMixinBase: import("../../../dist/libs/core/common-behaviors/constructor").Constructor & typeof MixinElementRefBase; /** * 定义location。 */ export interface SimIconLocation { getPathname: () => string; } /** * 注入令牌用于向“SImIcon”提供当前位置。用于在单元测试期间处理服务器端呈现和存根。 */ export declare const SIM_ICON_LOCATION: InjectionToken; export declare function SIM_ICON_LOCATION_FACTORY(): SimIconLocation; /** * @example * ```html * * ``` */ export declare class SimIconComponent extends _IconMixinBase implements OnChanges, OnInit, AfterViewChecked, OnDestroy, CanColor { private simIconService; private _location; private readonly _errorHandler; static ngAcceptInputType_inline: BooleanInput; /** SVG图标集中图标的名称 */ svgIcon: string; /** 字体集中图标的名称 */ get fontIcon(): string; set fontIcon(value: string); /** 图标字体所属的字体集 */ get fontSet(): string; set fontSet(value: string); /** * 组件的主题颜色调色板 默认是继承父级 color * - primary 主要的 * - secondary 次要的 * - success 成功的 * - info 信息的 * - warning 警告的 * - danger 危险的/错误的 * - 如果需要自定义其他 color 请采用 `style.color`方式绑定设置 */ color: ThemePalette; /** * 给图标设置 `font-size` 参照 `style.font-size` 绑定语法 默认继承父级 font-size */ fontSize: string; /** * 是否应该内联图标,自动调整图标的大小以匹配图标所在元素的字体大小。 * 默认是自动调整图标的字体大小,宽高指定的为1em。 */ inline: boolean; /** 跟踪我们用当前路径作为前缀的元素和属性。 */ private _elementsWithExternalReferences?; private _fontIcon; private _fontSet; /** 缓存上一个图标字体名称class */ private _previousFontIconClass; /** 缓存上一个图标字体集class */ private _previousFontSetClass; /** 跟踪当前页面路径。 */ private _previousPath; constructor(elementRef: ElementRef, simIconService: SimIconService, _location: SimIconLocation, _errorHandler: ErrorHandler); ngOnChanges(changes: SimpleChanges): void; ngOnInit(): void; ngAfterViewChecked(): void; ngOnDestroy(): void; /** * 缓存具有“url()”引用的SVG元素的子元素,我们需要用当前路径作为前缀。 */ private _cacheChildrenWithExternalReferences; /** * 处理传入fontIcon或fontSet的值。 * 由于该值最终被赋值为一个CSS class,所以我们必须处理收尾空格和有空格分隔的值。 */ private _cleanupFontValue; /** * 清除svg元素 */ private _clearSvgElement; /** * 将当前路径添加到所有具有指向“FuncIRI”引用的属性的元素。 * 注意:WebKit浏览器要求引用以当前路径为前缀,如果页面有一个。 */ private _prependPathToReferences; /** * 设置svg元素 * @param svg */ private _setSvgElement; /** * 将一个svgIcon绑定值拆分为它的图标集和图标名称。 * 返回一个数组[(图标集),(图标名称)]。 * 这两个字段的分隔符是':'。如果没有分隔符,则为空 * 将为图标集返回字符串,并为其返回整个值 * 图标名称。如果参数是假的,返回一个由两个空字符串组成的数组。 * 如果名称包含两个或多个':'分隔符,则引发错误。 * Examples: * `'social:cake' -> ['social', 'cake'] * 'penguin' -> ['', 'penguin'] * null -> ['', ''] * 'a:b:c' -> (throws Error)` */ private _splitIconName; /** * 更新fontIcon的class */ private _updateFontIconClasses; /** * 是否使用字体图标 */ private _usingFontIcon; } export {};