@skyux/icon 12.22.0 → 13.0.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-icon-testing.mjs","sources":["../../../../../libs/components/icon/testing/src/modules/icon/icon-harness.ts","../../../../../libs/components/icon/testing/src/skyux-icon-testing.ts"],"sourcesContent":["import { HarnessPredicate, TestElement } from '@angular/cdk/testing';\nimport { SkyComponentHarness } from '@skyux/core/testing';\n\nimport { SkyIconHarnessFilters } from './icon-harness-filters';\n\n/**\n * Harness for interacting with an icon component in tests.\n */\nexport class SkyIconHarness extends SkyComponentHarness {\n /**\n * @internal\n */\n public static hostSelector = 'sky-icon';\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyIconHarness` that meets certain criteria.\n */\n public static with(\n filters: SkyIconHarnessFilters,\n ): HarnessPredicate<SkyIconHarness> {\n return SkyIconHarness.getDataSkyIdPredicate(filters);\n }\n\n /**\n * Gets the icon name.\n */\n public async getIconName(): Promise<string | undefined> {\n // No need to check for null here since #getIcon() will throw an error when\n // icon name is null.\n return (await this.#getSpecifiedIconInfo()).icon as string;\n }\n\n /**\n * Gets the icon size.\n */\n public async getIconSize(): Promise<string | undefined> {\n const iconClasses = await this.#getIconClasses();\n\n for (const iconClass of iconClasses) {\n // match a class name that starts with `fa-` and follows with `lg`, `2x`, `3x`, `4x`, `5x`\n if (/^fa-(?=2xs|lg|[2-5]+x)/.test(iconClass)) {\n return iconClass.replace('fa-', '');\n } else if (/^sky-icon-svg-relative-(?=2xs|lg|[2-5]+x)/.test(iconClass)) {\n return iconClass.replace('sky-icon-svg-relative-', '');\n } else if (\n /^sky-icon-svg-(?=xxxs|xxs|xs|s|m|l|xl|xxl|xxxl)/.test(iconClass)\n ) {\n return iconClass.replace('sky-icon-svg-', '');\n }\n }\n return undefined;\n }\n\n /**\n * Gets the icon type.\n * @deprecated The `iconType` input is no longer used. This method will be removed in SKY UX 13.\n */\n public async getIconType(): Promise<string> {\n return (await this.#getSpecifiedIconInfo()).iconType || 'fa';\n }\n\n /**\n * Gets if the icon is a variant.\n */\n public async getVariant(): Promise<string | undefined> {\n const iconInfo = await this.#getSpecifiedIconInfo();\n const svgIcon = await this.locatorForOptional('sky-icon-svg')();\n\n if (svgIcon || iconInfo.iconType === 'skyux') {\n return iconInfo.variant || 'line';\n }\n\n throw new Error(\n 'Variant cannot be determined because variants are only assigned to icons with type `skyux`.',\n );\n }\n\n /**\n * Whether the icon has fixed width.\n * @deprecated Font Awesome icons are deprecated, and all icons are now fixed width. This method will be removed in SKY UX 13.\n */\n public async isFixedWidth(): Promise<boolean> {\n const icon = await this.#getIcon();\n return await icon.hasClass(`fa-fw`);\n }\n\n async #getIcon(): Promise<TestElement> {\n const icon = await this.locatorForOptional('.sky-icon')();\n const svgIcon = await this.locatorForOptional('sky-icon-svg')();\n\n if (icon) {\n return icon;\n } else if (svgIcon) {\n return svgIcon;\n }\n\n throw new Error('Icon could not be rendered.');\n }\n\n async #getIconClasses(): Promise<string[]> {\n const iconClasses = await (await this.#getIcon()).getProperty('classList');\n return Array.from(iconClasses);\n }\n\n async #getSpecifiedIconInfo(): Promise<{\n icon: string | null;\n iconType: string | null;\n variant: string | null;\n }> {\n // Since SKY UX icons have Font Awesome alternatives that may be used\n // in default theme instead of the icon specified by the consumer, we\n // need to get the specified values using data- attributes added by\n // the icon component. This conflicts with the usual pattern of giving\n // the effective state of the component but is necessary in this case.\n const icon = await this.#getIcon();\n\n return {\n icon: await icon.getAttribute('data-sky-icon'),\n iconType: await icon.getAttribute('data-sky-icon-type'),\n variant: await icon.getAttribute('data-sky-icon-variant'),\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skyux-icon-testing.mjs","sources":["../tmp-esm2022/testing/modules/icon/icon-harness.js","../tmp-esm2022/testing/skyux-icon-testing.js"],"sourcesContent":["import { SkyComponentHarness } from '@skyux/core/testing';\n/**\n * Harness for interacting with an icon component in tests.\n */\nexport class SkyIconHarness extends SkyComponentHarness {\n /**\n * @internal\n */\n static { this.hostSelector = 'sky-icon'; }\n /**\n * Gets a `HarnessPredicate` that can be used to search for a\n * `SkyIconHarness` that meets certain criteria.\n */\n static with(filters) {\n return SkyIconHarness.getDataSkyIdPredicate(filters);\n }\n /**\n * Gets the icon name.\n */\n async getIconName() {\n // No need to check for null here since #getIcon() will throw an error when\n // icon name is null.\n return (await this.#getSpecifiedIconInfo()).icon;\n }\n /**\n * Gets the icon size.\n */\n async getIconSize() {\n const iconClasses = await this.#getIconClasses();\n for (const iconClass of iconClasses) {\n // match a class name that starts with `fa-` and follows with `lg`, `2x`, `3x`, `4x`, `5x`\n if (/^fa-(?=2xs|lg|[2-5]+x)/.test(iconClass)) {\n return iconClass.replace('fa-', '');\n }\n else if (/^sky-icon-svg-relative-(?=2xs|lg|[2-5]+x)/.test(iconClass)) {\n return iconClass.replace('sky-icon-svg-relative-', '');\n }\n else if (/^sky-icon-svg-(?=xxxs|xxs|xs|s|m|l|xl|xxl|xxxl)/.test(iconClass)) {\n return iconClass.replace('sky-icon-svg-', '');\n }\n }\n return undefined;\n }\n /**\n * Gets the icon type.\n * @deprecated The `iconType` input is no longer used. This method will be removed in SKY UX 13.\n */\n async getIconType() {\n return (await this.#getSpecifiedIconInfo()).iconType || 'fa';\n }\n /**\n * Gets if the icon is a variant.\n */\n async getVariant() {\n const iconInfo = await this.#getSpecifiedIconInfo();\n const svgIcon = await this.locatorForOptional('sky-icon-svg')();\n if (svgIcon || iconInfo.iconType === 'skyux') {\n return iconInfo.variant || 'line';\n }\n throw new Error('Variant cannot be determined because variants are only assigned to icons with type `skyux`.');\n }\n /**\n * Whether the icon has fixed width.\n * @deprecated Font Awesome icons are deprecated, and all icons are now fixed width. This method will be removed in SKY UX 13.\n */\n async isFixedWidth() {\n const icon = await this.#getIcon();\n return await icon.hasClass(`fa-fw`);\n }\n async #getIcon() {\n const icon = await this.locatorForOptional('.sky-icon')();\n const svgIcon = await this.locatorForOptional('sky-icon-svg')();\n if (icon) {\n return icon;\n }\n else if (svgIcon) {\n return svgIcon;\n }\n throw new Error('Icon could not be rendered.');\n }\n async #getIconClasses() {\n const iconClasses = await (await this.#getIcon()).getProperty('classList');\n return Array.from(iconClasses);\n }\n async #getSpecifiedIconInfo() {\n // Since SKY UX icons have Font Awesome alternatives that may be used\n // in default theme instead of the icon specified by the consumer, we\n // need to get the specified values using data- attributes added by\n // the icon component. This conflicts with the usual pattern of giving\n // the effective state of the component but is necessary in this case.\n const icon = await this.#getIcon();\n return {\n icon: await icon.getAttribute('data-sky-icon'),\n iconType: await icon.getAttribute('data-sky-icon-type'),\n variant: await icon.getAttribute('data-sky-icon-variant'),\n };\n }\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ljb24vdGVzdGluZy9zcmMvbW9kdWxlcy9pY29uL2ljb24taGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUkxRDs7R0FFRztBQUNILE1BQU0sT0FBTyxjQUFlLFNBQVEsbUJBQW1CO0lBQ3JEOztPQUVHO2FBQ1csaUJBQVksR0FBRyxVQUFVLENBQUM7SUFFeEM7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FDaEIsT0FBOEI7UUFFOUIsT0FBTyxjQUFjLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFdBQVc7UUFDdEIsMkVBQTJFO1FBQzNFLHFCQUFxQjtRQUNyQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLElBQWMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsV0FBVztRQUN0QixNQUFNLFdBQVcsR0FBRyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUVqRCxLQUFLLE1BQU0sU0FBUyxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ3BDLDBGQUEwRjtZQUMxRixJQUFJLHdCQUF3QixDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO2dCQUM3QyxPQUFPLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3RDLENBQUM7aUJBQU0sSUFBSSwyQ0FBMkMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQztnQkFDdkUsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLHdCQUF3QixFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3pELENBQUM7aUJBQU0sSUFDTCxpREFBaUQsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQ2pFLENBQUM7Z0JBQ0QsT0FBTyxTQUFTLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsQ0FBQztZQUNoRCxDQUFDO1FBQ0gsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsV0FBVztRQUN0QixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQyxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUM7SUFDL0QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFDckIsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUNwRCxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDO1FBRWhFLElBQUksT0FBTyxJQUFJLFFBQVEsQ0FBQyxRQUFRLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDN0MsT0FBTyxRQUFRLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQztRQUNwQyxDQUFDO1FBRUQsTUFBTSxJQUFJLEtBQUssQ0FDYiw2RkFBNkYsQ0FDOUYsQ0FBQztJQUNKLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsWUFBWTtRQUN2QixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNuQyxPQUFPLE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsS0FBSyxDQUFDLFFBQVE7UUFDWixNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDO1FBQzFELE1BQU0sT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUM7UUFFaEUsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQzthQUFNLElBQUksT0FBTyxFQUFFLENBQUM7WUFDbkIsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQztRQUVELE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWU7UUFDbkIsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzNFLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsS0FBSyxDQUFDLHFCQUFxQjtRQUt6QixxRUFBcUU7UUFDckUscUVBQXFFO1FBQ3JFLG1FQUFtRTtRQUNuRSxzRUFBc0U7UUFDdEUsc0VBQXNFO1FBQ3RFLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRW5DLE9BQU87WUFDTCxJQUFJLEVBQUUsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQztZQUM5QyxRQUFRLEVBQUUsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDO1lBQ3ZELE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsdUJBQXVCLENBQUM7U0FDMUQsQ0FBQztJQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlLCBUZXN0RWxlbWVudCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5SWNvbkhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9pY29uLWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhbiBpY29uIGNvbXBvbmVudCBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreUljb25IYXJuZXNzIGV4dGVuZHMgU2t5Q29tcG9uZW50SGFybmVzcyB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ3NreS1pY29uJztcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYVxuICAgKiBgU2t5SWNvbkhhcm5lc3NgIHRoYXQgbWVldHMgY2VydGFpbiBjcml0ZXJpYS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aChcbiAgICBmaWx0ZXJzOiBTa3lJY29uSGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5SWNvbkhhcm5lc3M+IHtcbiAgICByZXR1cm4gU2t5SWNvbkhhcm5lc3MuZ2V0RGF0YVNreUlkUHJlZGljYXRlKGZpbHRlcnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGljb24gbmFtZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRJY29uTmFtZSgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIC8vIE5vIG5lZWQgdG8gY2hlY2sgZm9yIG51bGwgaGVyZSBzaW5jZSAjZ2V0SWNvbigpIHdpbGwgdGhyb3cgYW4gZXJyb3Igd2hlblxuICAgIC8vIGljb24gbmFtZSBpcyBudWxsLlxuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0U3BlY2lmaWVkSWNvbkluZm8oKSkuaWNvbiBhcyBzdHJpbmc7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgaWNvbiBzaXplLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEljb25TaXplKCk6IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3QgaWNvbkNsYXNzZXMgPSBhd2FpdCB0aGlzLiNnZXRJY29uQ2xhc3NlcygpO1xuXG4gICAgZm9yIChjb25zdCBpY29uQ2xhc3Mgb2YgaWNvbkNsYXNzZXMpIHtcbiAgICAgIC8vIG1hdGNoIGEgY2xhc3MgbmFtZSB0aGF0IHN0YXJ0cyB3aXRoIGBmYS1gIGFuZCBmb2xsb3dzIHdpdGggYGxnYCwgYDJ4YCwgYDN4YCwgYDR4YCwgYDV4YFxuICAgICAgaWYgKC9eZmEtKD89MnhzfGxnfFsyLTVdK3gpLy50ZXN0KGljb25DbGFzcykpIHtcbiAgICAgICAgcmV0dXJuIGljb25DbGFzcy5yZXBsYWNlKCdmYS0nLCAnJyk7XG4gICAgICB9IGVsc2UgaWYgKC9ec2t5LWljb24tc3ZnLXJlbGF0aXZlLSg/PTJ4c3xsZ3xbMi01XSt4KS8udGVzdChpY29uQ2xhc3MpKSB7XG4gICAgICAgIHJldHVybiBpY29uQ2xhc3MucmVwbGFjZSgnc2t5LWljb24tc3ZnLXJlbGF0aXZlLScsICcnKTtcbiAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgIC9ec2t5LWljb24tc3ZnLSg/PXh4eHN8eHhzfHhzfHN8bXxsfHhsfHh4bHx4eHhsKS8udGVzdChpY29uQ2xhc3MpXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIGljb25DbGFzcy5yZXBsYWNlKCdza3ktaWNvbi1zdmctJywgJycpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGljb24gdHlwZS5cbiAgICogQGRlcHJlY2F0ZWQgVGhlIGBpY29uVHlwZWAgaW5wdXQgaXMgbm8gbG9uZ2VyIHVzZWQuIFRoaXMgbWV0aG9kIHdpbGwgYmUgcmVtb3ZlZCBpbiBTS1kgVVggMTMuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SWNvblR5cGUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldFNwZWNpZmllZEljb25JbmZvKCkpLmljb25UeXBlIHx8ICdmYSc7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBpZiB0aGUgaWNvbiBpcyBhIHZhcmlhbnQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0VmFyaWFudCgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIGNvbnN0IGljb25JbmZvID0gYXdhaXQgdGhpcy4jZ2V0U3BlY2lmaWVkSWNvbkluZm8oKTtcbiAgICBjb25zdCBzdmdJY29uID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ3NreS1pY29uLXN2ZycpKCk7XG5cbiAgICBpZiAoc3ZnSWNvbiB8fCBpY29uSW5mby5pY29uVHlwZSA9PT0gJ3NreXV4Jykge1xuICAgICAgcmV0dXJuIGljb25JbmZvLnZhcmlhbnQgfHwgJ2xpbmUnO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdWYXJpYW50IGNhbm5vdCBiZSBkZXRlcm1pbmVkIGJlY2F1c2UgdmFyaWFudHMgYXJlIG9ubHkgYXNzaWduZWQgdG8gaWNvbnMgd2l0aCB0eXBlIGBza3l1eGAuJyxcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGljb24gaGFzIGZpeGVkIHdpZHRoLlxuICAgKiBAZGVwcmVjYXRlZCBGb250IEF3ZXNvbWUgaWNvbnMgYXJlIGRlcHJlY2F0ZWQsIGFuZCBhbGwgaWNvbnMgYXJlIG5vdyBmaXhlZCB3aWR0aC4gVGhpcyBtZXRob2Qgd2lsbCBiZSByZW1vdmVkIGluIFNLWSBVWCAxMy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0ZpeGVkV2lkdGgoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgaWNvbiA9IGF3YWl0IHRoaXMuI2dldEljb24oKTtcbiAgICByZXR1cm4gYXdhaXQgaWNvbi5oYXNDbGFzcyhgZmEtZndgKTtcbiAgfVxuXG4gIGFzeW5jICNnZXRJY29uKCk6IFByb21pc2U8VGVzdEVsZW1lbnQ+IHtcbiAgICBjb25zdCBpY29uID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJy5za3ktaWNvbicpKCk7XG4gICAgY29uc3Qgc3ZnSWNvbiA9IGF3YWl0IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKCdza3ktaWNvbi1zdmcnKSgpO1xuXG4gICAgaWYgKGljb24pIHtcbiAgICAgIHJldHVybiBpY29uO1xuICAgIH0gZWxzZSBpZiAoc3ZnSWNvbikge1xuICAgICAgcmV0dXJuIHN2Z0ljb247XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEVycm9yKCdJY29uIGNvdWxkIG5vdCBiZSByZW5kZXJlZC4nKTtcbiAgfVxuXG4gIGFzeW5jICNnZXRJY29uQ2xhc3NlcygpOiBQcm9taXNlPHN0cmluZ1tdPiB7XG4gICAgY29uc3QgaWNvbkNsYXNzZXMgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SWNvbigpKS5nZXRQcm9wZXJ0eSgnY2xhc3NMaXN0Jyk7XG4gICAgcmV0dXJuIEFycmF5LmZyb20oaWNvbkNsYXNzZXMpO1xuICB9XG5cbiAgYXN5bmMgI2dldFNwZWNpZmllZEljb25JbmZvKCk6IFByb21pc2U8e1xuICAgIGljb246IHN0cmluZyB8IG51bGw7XG4gICAgaWNvblR5cGU6IHN0cmluZyB8IG51bGw7XG4gICAgdmFyaWFudDogc3RyaW5nIHwgbnVsbDtcbiAgfT4ge1xuICAgIC8vIFNpbmNlIFNLWSBVWCBpY29ucyBoYXZlIEZvbnQgQXdlc29tZSBhbHRlcm5hdGl2ZXMgdGhhdCBtYXkgYmUgdXNlZFxuICAgIC8vIGluIGRlZmF1bHQgdGhlbWUgaW5zdGVhZCBvZiB0aGUgaWNvbiBzcGVjaWZpZWQgYnkgdGhlIGNvbnN1bWVyLCB3ZVxuICAgIC8vIG5lZWQgdG8gZ2V0IHRoZSBzcGVjaWZpZWQgdmFsdWVzIHVzaW5nIGRhdGEtIGF0dHJpYnV0ZXMgYWRkZWQgYnlcbiAgICAvLyB0aGUgaWNvbiBjb21wb25lbnQuIFRoaXMgY29uZmxpY3RzIHdpdGggdGhlIHVzdWFsIHBhdHRlcm4gb2YgZ2l2aW5nXG4gICAgLy8gdGhlIGVmZmVjdGl2ZSBzdGF0ZSBvZiB0aGUgY29tcG9uZW50IGJ1dCBpcyBuZWNlc3NhcnkgaW4gdGhpcyBjYXNlLlxuICAgIGNvbnN0IGljb24gPSBhd2FpdCB0aGlzLiNnZXRJY29uKCk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgaWNvbjogYXdhaXQgaWNvbi5nZXRBdHRyaWJ1dGUoJ2RhdGEtc2t5LWljb24nKSxcbiAgICAgIGljb25UeXBlOiBhd2FpdCBpY29uLmdldEF0dHJpYnV0ZSgnZGF0YS1za3ktaWNvbi10eXBlJyksXG4gICAgICB2YXJpYW50OiBhd2FpdCBpY29uLmdldEF0dHJpYnV0ZSgnZGF0YS1za3ktaWNvbi12YXJpYW50JyksXG4gICAgfTtcbiAgfVxufVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './public-api';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtaWNvbi10ZXN0aW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ljb24vdGVzdGluZy9zcmMvc2t5dXgtaWNvbi10ZXN0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0="],"names":[],"mappings":"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"}
@@ -73,10 +73,10 @@ class SkyIconResolverService {
73
73
  iconType,
74
74
  };
75
75
  }
76
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
77
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconResolverService, providedIn: 'root' }); }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
77
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconResolverService, providedIn: 'root' }); }
78
78
  }
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconResolverService, decorators: [{
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconResolverService, decorators: [{
80
80
  type: Injectable,
81
81
  args: [{
82
82
  providedIn: 'root',
@@ -105,10 +105,10 @@ class SkyIconClassListPipe {
105
105
  }
106
106
  return classList;
107
107
  }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconClassListPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
109
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: SkyIconClassListPipe, isStandalone: false, name: "skyIconClassList" }); }
108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconClassListPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
109
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.0.5", ngImport: i0, type: SkyIconClassListPipe, isStandalone: false, name: "skyIconClassList" }); }
110
110
  }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconClassListPipe, decorators: [{
111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconClassListPipe, decorators: [{
112
112
  type: Pipe,
113
113
  args: [{
114
114
  name: 'skyIconClassList',
@@ -190,10 +190,10 @@ class SkyIconSvgResolverService {
190
190
  href = `${href}-${nearestSize}-${variant}`;
191
191
  return href;
192
192
  }
193
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconSvgResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
194
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconSvgResolverService, providedIn: 'root' }); }
193
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconSvgResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
194
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconSvgResolverService, providedIn: 'root' }); }
195
195
  }
196
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconSvgResolverService, decorators: [{
196
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconSvgResolverService, decorators: [{
197
197
  type: Injectable,
198
198
  args: [{
199
199
  providedIn: 'root',
@@ -244,10 +244,10 @@ class SkyIconSvgComponent {
244
244
  }
245
245
  #resolverSvc;
246
246
  #iconInfo;
247
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconSvgComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
248
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.7", type: SkyIconSvgComponent, isStandalone: true, selector: "sky-icon-svg", inputs: { iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: true, isRequired: true, transformFunction: null }, iconSize: { classPropertyName: "iconSize", publicName: "iconSize", isSignal: true, isRequired: false, transformFunction: null }, relativeSize: { classPropertyName: "relativeSize", publicName: "relativeSize", isSignal: true, isRequired: false, transformFunction: null }, iconVariant: { classPropertyName: "iconVariant", publicName: "iconVariant", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "relativeSize() ? \"sky-icon-svg-relative-\" + relativeSize() : \"sky-icon-svg-\" + iconSize()" } }, hostDirectives: [{ directive: i1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<div class=\"sky-icon-svg-container\">\n <svg\n aria-hidden=\"true\"\n class=\"sky-icon-svg-img\"\n [attr.data-sky-icon]=\"iconName()\"\n [attr.data-sky-icon-variant]=\"iconVariant()\"\n >\n <use [attr.xlink:href]=\"iconHref()\" />\n </svg>\n</div>\n", styles: ["@charset \"UTF-8\";:host.sky-cmp-theme-default{--sky-override-sky-icon-svg-size-xxxs: 4px;--sky-override-sky-icon-svg-size-xxs: 8px;--sky-override-sky-icon-svg-size-xs: 12px;--sky-override-sky-icon-svg-size-s: 16px;--sky-override-sky-icon-svg-size-m: 20px;--sky-override-sky-icon-svg-size-l: 24px;--sky-override-sky-icon-svg-size-xl: 32px;--sky-override-sky-icon-svg-size-xxl: 40px;--sky-override-sky-icon-svg-size-xxxl: 48px}:host{display:inline-flex;--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-s, var(--sky-size-icon-s) )}:host.sky-icon-svg-relative-md{--sky-icon-svg-img-size: 1em}:host.sky-icon-svg-relative-lg .sky-icon-svg-img{transform:scale(1.33)}:host.sky-icon-svg-relative-lg .sky-icon-svg-container{margin:0 .166em}:host.sky-icon-svg-relative-2x{--sky-icon-svg-img-size: 2em}:host.sky-icon-svg-relative-3x{--sky-icon-svg-img-size: 3em}:host.sky-icon-svg-relative-4x{--sky-icon-svg-img-size: 4em}:host.sky-icon-svg-relative-5x{--sky-icon-svg-img-size: 5em}:host.sky-icon-svg-xxxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxs, var(--sky-size-icon-xxxs) )}:host.sky-icon-svg-xxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxs, var(--sky-size-icon-xxs) )}:host.sky-icon-svg-xs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xs, var(--sky-size-icon-xs) )}:host.sky-icon-svg-m{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-m, var(--sky-size-icon-m) )}:host.sky-icon-svg-l{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-l, var(--sky-size-icon-l) )}:host.sky-icon-svg-xl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xl, var(--sky-size-icon-xl) )}:host.sky-icon-svg-xxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxl, var(--sky-size-icon-xxl) )}:host.sky-icon-svg-xxxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxl, var(--sky-size-icon-xxxl) )}.sky-icon-svg-container{height:var(--sky-icon-svg-img-size);width:var(--sky-icon-svg-img-size);display:inline-flex;align-items:center}.sky-icon-svg-container:before{content:\"\\200b\"}.sky-icon-svg-container svg{height:100%;width:100%}\n"] }); }
247
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconSvgComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
248
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.0.5", type: SkyIconSvgComponent, isStandalone: true, selector: "sky-icon-svg", inputs: { iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: true, isRequired: true, transformFunction: null }, iconSize: { classPropertyName: "iconSize", publicName: "iconSize", isSignal: true, isRequired: false, transformFunction: null }, relativeSize: { classPropertyName: "relativeSize", publicName: "relativeSize", isSignal: true, isRequired: false, transformFunction: null }, iconVariant: { classPropertyName: "iconVariant", publicName: "iconVariant", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "relativeSize() ? \"sky-icon-svg-relative-\" + relativeSize() : \"sky-icon-svg-\" + iconSize()" } }, hostDirectives: [{ directive: i1.SkyThemeComponentClassDirective }], ngImport: i0, template: "<div class=\"sky-icon-svg-container\">\n <svg\n aria-hidden=\"true\"\n class=\"sky-icon-svg-img\"\n [attr.data-sky-icon]=\"iconName()\"\n [attr.data-sky-icon-variant]=\"iconVariant()\"\n >\n <use [attr.xlink:href]=\"iconHref()\" />\n </svg>\n</div>\n", styles: ["@charset \"UTF-8\";:host.sky-cmp-theme-default{--sky-override-sky-icon-svg-size-xxxs: 4px;--sky-override-sky-icon-svg-size-xxs: 8px;--sky-override-sky-icon-svg-size-xs: 12px;--sky-override-sky-icon-svg-size-s: 16px;--sky-override-sky-icon-svg-size-m: 20px;--sky-override-sky-icon-svg-size-l: 24px;--sky-override-sky-icon-svg-size-xl: 32px;--sky-override-sky-icon-svg-size-xxl: 40px;--sky-override-sky-icon-svg-size-xxxl: 48px}:host{display:inline-flex;--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-s, var(--sky-size-icon-s) )}:host.sky-icon-svg-relative-md{--sky-icon-svg-img-size: 1em}:host.sky-icon-svg-relative-lg .sky-icon-svg-img{transform:scale(1.33)}:host.sky-icon-svg-relative-lg .sky-icon-svg-container{margin:0 .166em}:host.sky-icon-svg-relative-2x{--sky-icon-svg-img-size: 2em}:host.sky-icon-svg-relative-3x{--sky-icon-svg-img-size: 3em}:host.sky-icon-svg-relative-4x{--sky-icon-svg-img-size: 4em}:host.sky-icon-svg-relative-5x{--sky-icon-svg-img-size: 5em}:host.sky-icon-svg-xxxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxs, var(--sky-size-icon-xxxs) )}:host.sky-icon-svg-xxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxs, var(--sky-size-icon-xxs) )}:host.sky-icon-svg-xs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xs, var(--sky-size-icon-xs) )}:host.sky-icon-svg-m{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-m, var(--sky-size-icon-m) )}:host.sky-icon-svg-l{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-l, var(--sky-size-icon-l) )}:host.sky-icon-svg-xl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xl, var(--sky-size-icon-xl) )}:host.sky-icon-svg-xxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxl, var(--sky-size-icon-xxl) )}:host.sky-icon-svg-xxxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxl, var(--sky-size-icon-xxxl) )}.sky-icon-svg-container{height:var(--sky-icon-svg-img-size);width:var(--sky-icon-svg-img-size);display:inline-flex;align-items:center}.sky-icon-svg-container:before{content:\"\\200b\"}.sky-icon-svg-container svg{height:100%;width:100%}\n"] }); }
249
249
  }
250
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconSvgComponent, decorators: [{
250
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconSvgComponent, decorators: [{
251
251
  type: Component,
252
252
  args: [{ selector: 'sky-icon-svg', host: {
253
253
  '[class]': 'relativeSize() ? "sky-icon-svg-relative-" + relativeSize() : "sky-icon-svg-" + iconSize()',
@@ -263,10 +263,10 @@ class SkyIconComponent {
263
263
  this.iconSize = input();
264
264
  this.themeSvc = inject(SkyThemeService, { optional: true });
265
265
  }
266
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
267
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.7", type: SkyIconComponent, isStandalone: false, selector: "sky-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: false, isRequired: false, transformFunction: null }, iconType: { classPropertyName: "iconType", publicName: "iconType", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, fixedWidth: { classPropertyName: "fixedWidth", publicName: "fixedWidth", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: false, isRequired: false, transformFunction: null }, iconSize: { classPropertyName: "iconSize", publicName: "iconSize", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (iconName) {\n <sky-icon-svg\n [iconName]=\"iconName\"\n [relativeSize]=\"size\"\n [iconSize]=\"iconSize()\"\n [iconVariant]=\"variant\"\n [attr.data-sky-icon]=\"iconName\"\n [attr.data-sky-icon-variant]=\"variant\"\n />\n} @else if (icon) {\n <i\n aria-hidden=\"true\"\n class=\"sky-icon\"\n [attr.data-sky-icon]=\"icon\"\n [attr.data-sky-icon-type]=\"iconType\"\n [attr.data-sky-icon-variant]=\"variant\"\n [ngClass]=\"\n icon\n | skyIconClassList\n : (themeSvc?.settingsChange | async)?.currentSettings\n : size\n : fixedWidth\n : variant\n \"\n ></i>\n}\n", styles: [":host{display:inline-flex}i{display:inherit}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SkyIconSvgComponent, selector: "sky-icon-svg", inputs: ["iconName", "iconSize", "relativeSize", "iconVariant"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: SkyIconClassListPipe, name: "skyIconClassList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
267
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.0.5", type: SkyIconComponent, isStandalone: false, selector: "sky-icon", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: false, isRequired: false, transformFunction: null }, iconName: { classPropertyName: "iconName", publicName: "iconName", isSignal: false, isRequired: false, transformFunction: null }, iconType: { classPropertyName: "iconType", publicName: "iconType", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, fixedWidth: { classPropertyName: "fixedWidth", publicName: "fixedWidth", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: false, isRequired: false, transformFunction: null }, iconSize: { classPropertyName: "iconSize", publicName: "iconSize", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@if (iconName) {\n <sky-icon-svg\n [iconName]=\"iconName\"\n [relativeSize]=\"size\"\n [iconSize]=\"iconSize()\"\n [iconVariant]=\"variant\"\n [attr.data-sky-icon]=\"iconName\"\n [attr.data-sky-icon-variant]=\"variant\"\n />\n} @else if (icon) {\n <i\n aria-hidden=\"true\"\n class=\"sky-icon\"\n [attr.data-sky-icon]=\"icon\"\n [attr.data-sky-icon-type]=\"iconType\"\n [attr.data-sky-icon-variant]=\"variant\"\n [ngClass]=\"\n icon\n | skyIconClassList\n : (themeSvc?.settingsChange | async)?.currentSettings\n : size\n : fixedWidth\n : variant\n \"\n ></i>\n}\n", styles: [":host{display:inline-flex}i{display:inherit}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: SkyIconSvgComponent, selector: "sky-icon-svg", inputs: ["iconName", "iconSize", "relativeSize", "iconVariant"] }, { kind: "pipe", type: i1$1.AsyncPipe, name: "async" }, { kind: "pipe", type: SkyIconClassListPipe, name: "skyIconClassList" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
268
268
  }
269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconComponent, decorators: [{
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconComponent, decorators: [{
270
270
  type: Component,
271
271
  args: [{ selector: 'sky-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: "@if (iconName) {\n <sky-icon-svg\n [iconName]=\"iconName\"\n [relativeSize]=\"size\"\n [iconSize]=\"iconSize()\"\n [iconVariant]=\"variant\"\n [attr.data-sky-icon]=\"iconName\"\n [attr.data-sky-icon-variant]=\"variant\"\n />\n} @else if (icon) {\n <i\n aria-hidden=\"true\"\n class=\"sky-icon\"\n [attr.data-sky-icon]=\"icon\"\n [attr.data-sky-icon-type]=\"iconType\"\n [attr.data-sky-icon-variant]=\"variant\"\n [ngClass]=\"\n icon\n | skyIconClassList\n : (themeSvc?.settingsChange | async)?.currentSettings\n : size\n : fixedWidth\n : variant\n \"\n ></i>\n}\n", styles: [":host{display:inline-flex}i{display:inherit}\n"] }]
272
272
  }], propDecorators: { icon: [{
@@ -284,11 +284,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImpor
284
284
  }] } });
285
285
 
286
286
  class SkyIconModule {
287
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
288
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.7", ngImport: i0, type: SkyIconModule, declarations: [SkyIconClassListPipe, SkyIconComponent], imports: [CommonModule, SkyIconSvgComponent], exports: [SkyIconComponent] }); }
289
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconModule, imports: [CommonModule] }); }
287
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
288
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.0.5", ngImport: i0, type: SkyIconModule, declarations: [SkyIconClassListPipe, SkyIconComponent], imports: [CommonModule, SkyIconSvgComponent], exports: [SkyIconComponent] }); }
289
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconModule, imports: [CommonModule] }); }
290
290
  }
291
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.7", ngImport: i0, type: SkyIconModule, decorators: [{
291
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.5", ngImport: i0, type: SkyIconModule, decorators: [{
292
292
  type: NgModule,
293
293
  args: [{
294
294
  declarations: [SkyIconClassListPipe, SkyIconComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"skyux-icon.mjs","sources":["../../../../../libs/components/icon/src/lib/modules/icon/icon-resolver.service.ts","../../../../../libs/components/icon/src/lib/modules/icon/icon-class-list.pipe.ts","../../../../../libs/components/icon/src/lib/modules/icon/icon-svg-resolver.service.ts","../../../../../libs/components/icon/src/lib/modules/icon/icon-svg.component.ts","../../../../../libs/components/icon/src/lib/modules/icon/icon-svg.component.html","../../../../../libs/components/icon/src/lib/modules/icon/icon.component.ts","../../../../../libs/components/icon/src/lib/modules/icon/icon.component.html","../../../../../libs/components/icon/src/lib/modules/icon/icon.module.ts","../../../../../libs/components/icon/src/skyux-icon.ts"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport {\n SkyThemeIconManifestGlyph,\n SkyThemeIconManifestService,\n SkyThemeSettings,\n} from '@skyux/theme';\n\nimport { SkyIconResolved } from './types/icon-resolved';\nimport type { SkyIconVariantType } from './types/icon-variant-type';\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyIconResolverService {\n #glyphMap = new Map<string, SkyThemeIconManifestGlyph>();\n\n #manifestSvc = inject(SkyThemeIconManifestService);\n\n constructor() {\n // Map the icons by name for more efficient lookup.\n for (const glyph of this.#manifestSvc.getManifest().glyphs) {\n // TODO: keep this until `faName` is removed just in case any icons get added with the wrong shape\n if (glyph.faName && !glyph.faNames) {\n glyph.faNames = [glyph.faName];\n }\n this.#glyphMap.set(glyph.name, glyph);\n }\n }\n\n public resolveIcon(\n icon: string,\n variant?: SkyIconVariantType,\n themeSettings?: SkyThemeSettings,\n ): SkyIconResolved {\n let iconType = 'fa';\n const variantIcon = variant && `${icon}-${variant}`;\n const lineIcon = `${icon}-line`;\n\n // Get the specified variant, or fall back to the icon name.\n // If the pure icon name doesn't exist, try the line variant.\n let glyph =\n this.#glyphMap.get(variantIcon as string) ??\n this.#glyphMap.get(icon) ??\n this.#glyphMap.get(lineIcon) ??\n Array.from(this.#glyphMap.values()).find(\n (glyph) =>\n glyph.aliases?.includes(variantIcon as string) ||\n glyph.aliases?.includes(lineIcon) ||\n glyph.aliases?.includes(icon),\n );\n\n // If still no icon is found, search through the icons that match the FA name.\n if (!glyph) {\n let glyphs = Array.from(this.#glyphMap.values()).filter((g) =>\n g.faNames?.includes(icon),\n );\n if (glyphs.length) {\n if (glyphs.length > 1) {\n // If multiples are found, make sure we select the correct variant, if requested.\n // The icons are ordered such that the \"default\" variant will be the first one.\n if (variant) {\n const variantGlyph = glyphs.find((g) => g.name.endsWith(variant));\n if (variantGlyph) {\n glyphs = [variantGlyph];\n }\n }\n }\n glyph = glyphs[0];\n }\n // If none of the above works, no matching icon was found\n }\n\n if (glyph) {\n // If a glyph is found, use it for modern theme or if no FA fallback exists.\n if (themeSettings?.theme.name === 'modern' || !glyph.faNames?.length) {\n icon = glyph.name;\n iconType = 'skyux';\n } else {\n // For default theme, use a known FA fallback.\n // If the icon name requested is already a FA icon, just use it. Otherwise use the first one.\n if (!glyph.faNames?.includes(icon)) {\n icon = glyph.faNames[0];\n }\n }\n }\n\n // If no SKY UX glyph is found, assume icon is part of FA and pass it along.\n return {\n icon,\n iconType,\n };\n }\n}\n","import { Pipe, PipeTransform, inject } from '@angular/core';\nimport { SkyThemeSettings } from '@skyux/theme';\n\nimport { SkyIconResolverService } from './icon-resolver.service';\nimport { SkyIconVariantType } from './types/icon-variant-type';\n\n/**\n * @internal\n */\n@Pipe({\n name: 'skyIconClassList',\n standalone: false,\n})\nexport class SkyIconClassListPipe implements PipeTransform {\n #resolver = inject(SkyIconResolverService);\n\n public transform(\n icon: string,\n themeSettings?: SkyThemeSettings,\n size?: string,\n fixedWidth?: boolean,\n variant?: SkyIconVariantType,\n ): string[] {\n let classList: string[];\n\n const { icon: resolvedIcon, iconType: resolvedIconType } =\n this.#resolver.resolveIcon(icon, variant, themeSettings);\n\n if (resolvedIconType === 'skyux') {\n classList = ['sky-i-' + resolvedIcon];\n } else {\n classList = ['fa', 'fa-' + resolvedIcon];\n }\n\n if (size) {\n classList.push('fa-' + size);\n }\n\n if (fixedWidth) {\n classList.push('fa-fw');\n }\n\n return classList;\n }\n}\n","import { Injectable } from '@angular/core';\n\nimport { SkyIconVariantType } from './types/icon-variant-type';\n\nasync function getIconMap(): Promise<Map<string, number[]>> {\n const response = await fetch(\n `https://sky.blackbaudcdn.net/static/skyux-icons/8/assets/svg/skyux-icons.svg`,\n );\n\n /* istanbul ignore next */\n if (!response.ok) {\n throw new Error('Icon sprite could not be loaded.');\n }\n\n const markup = await response.text();\n\n document.body.insertAdjacentHTML('afterbegin', markup);\n\n const iconMap = Array.from<SVGSymbolElement>(\n document.querySelectorAll('#sky-icon-svg-sprite symbol'),\n ).reduce((map, el) => {\n const idParts = el.id.split('-');\n\n // Construct the icon name by removing `sky-i-` from the beginning\n // and `-<size>-<variant>` from the end.\n const name = idParts.slice(2, idParts.length - 2).join('-');\n\n let sizes = map.get(name);\n\n if (!sizes) {\n sizes = [];\n map.set(name, sizes);\n }\n\n // The penultimate segment is the size for which the icon has\n // been optimized.\n sizes.push(+idParts[idParts.length - 2]);\n\n return map;\n }, new Map<string, number[]>());\n\n // Sort all the sizes for later comparison.\n for (const id of iconMap.keys()) {\n // Dedupe and sort the icon sizes.\n iconMap.set(id, [...new Set(iconMap.get(id))].sort());\n }\n\n return iconMap;\n}\n\nfunction getNearestSize(\n iconMap: Map<string, number[]>,\n name: string,\n pixelSize: number,\n): number | undefined {\n const sizes = iconMap.get(name);\n\n if (sizes) {\n let nearestSizeUnder = -Infinity;\n let nearestSizeOver = Infinity;\n\n for (const availableSize of sizes) {\n if (availableSize === pixelSize) {\n return pixelSize;\n } else if (availableSize < pixelSize) {\n nearestSizeUnder = availableSize;\n } else {\n nearestSizeOver = availableSize;\n break;\n }\n }\n\n const underDiff = Math.abs(pixelSize - nearestSizeUnder);\n const overDiff = Math.abs(pixelSize - nearestSizeOver);\n\n return isNaN(overDiff) || underDiff < overDiff\n ? nearestSizeUnder\n : nearestSizeOver;\n }\n\n return undefined;\n}\n\nlet iconMapPromise: Promise<Map<string, number[]>> | undefined;\n\n/**\n * @internal\n */\n@Injectable({\n providedIn: 'root',\n})\nexport class SkyIconSvgResolverService {\n public async resolveHref(\n name: string,\n pixelSize = 16,\n variant: SkyIconVariantType = 'line',\n ): Promise<string> {\n if (!iconMapPromise) {\n iconMapPromise = getIconMap();\n }\n\n const iconMap = await iconMapPromise;\n\n let href = `#sky-i-${name}`;\n\n // Find the icon with the optimal size nearest to the requested size.\n const nearestSize = getNearestSize(iconMap, name, pixelSize);\n\n if (!nearestSize) {\n throw new Error(`Icon with name '${name}' was not found.`);\n }\n\n href = `${href}-${nearestSize}-${variant}`;\n\n return href;\n }\n}\n","import { Component, computed, inject, input } from '@angular/core';\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\n\nimport { catchError, of, switchMap } from 'rxjs';\n\nimport { SkyIconSvgResolverService } from './icon-svg-resolver.service';\nimport { SkyIconSize } from './types/icon-size';\nimport { SkyIconVariantType } from './types/icon-variant-type';\n\nconst SIZE_BASE = 16;\n\nconst RELATIVE_SIZES = new Map([\n ['md', SIZE_BASE],\n ['lg', 21.333 /* SIZE_BASE * (4/3) */],\n ['2x', 32 /* SIZE_BASE * 2 */],\n ['3x', 48 /* SIZE_BASE * 3 */],\n ['4x', 64 /* SIZE_BASE * 4 */],\n ['5x', 80 /* SIZE_BASE * 5 */],\n]);\n\nconst FIXED_SIZES = new Map([\n ['s', SIZE_BASE],\n ['m', 20],\n ['l', 24],\n ['xl', 32],\n]);\n\nfunction defaultSize(value: SkyIconSize | undefined): SkyIconSize {\n return value ?? 'm';\n}\n\n/**\n * @internal\n */\n@Component({\n selector: 'sky-icon-svg',\n templateUrl: './icon-svg.component.html',\n styleUrls: ['./icon-svg.component.scss'],\n host: {\n '[class]':\n 'relativeSize() ? \"sky-icon-svg-relative-\" + relativeSize() : \"sky-icon-svg-\" + iconSize()',\n },\n hostDirectives: [SkyThemeComponentClassDirective],\n})\nexport class SkyIconSvgComponent {\n readonly #resolverSvc = inject(SkyIconSvgResolverService);\n\n public readonly iconName = input.required<string>();\n public readonly iconSize = input<SkyIconSize, SkyIconSize | undefined>('m', {\n transform: defaultSize,\n });\n public readonly relativeSize = input<string | undefined>();\n public readonly iconVariant = input<SkyIconVariantType>();\n\n readonly #iconInfo = computed(() => {\n return {\n src: this.iconName(),\n relativeSize: this.relativeSize(),\n iconSize: this.iconSize(),\n variant: this.iconVariant(),\n };\n });\n\n protected readonly iconHref = toSignal(\n toObservable(this.#iconInfo).pipe(\n switchMap((info) =>\n this.#resolverSvc.resolveHref(\n info.src,\n info.relativeSize !== undefined\n ? RELATIVE_SIZES.get(info.relativeSize)\n : FIXED_SIZES.get(info.iconSize),\n info.variant,\n ),\n ),\n catchError(() => of('')),\n ),\n );\n}\n","<div class=\"sky-icon-svg-container\">\n <svg\n aria-hidden=\"true\"\n class=\"sky-icon-svg-img\"\n [attr.data-sky-icon]=\"iconName()\"\n [attr.data-sky-icon-variant]=\"iconVariant()\"\n >\n <use [attr.xlink:href]=\"iconHref()\" />\n </svg>\n</div>\n","import {\n ChangeDetectionStrategy,\n Component,\n Input,\n inject,\n input,\n} from '@angular/core';\nimport { SkyThemeService } from '@skyux/theme';\n\nimport { SkyIconSize } from './types/icon-size';\nimport { SkyIconType } from './types/icon-type';\nimport { SkyIconVariantType } from './types/icon-variant-type';\n\n@Component({\n selector: 'sky-icon',\n templateUrl: './icon.component.html',\n styleUrls: ['./icon.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class SkyIconComponent {\n /**\n * The name of\n * [the Font Awesome 4.7 icon](https://fontawesome.com/v4.7/icons/) or the SKY UX icon to\n * display. When specifying a Font Awesome icon, do not prefix the name with `fa-`.\n * @deprecated Font Awesome support will be removed in SKY UX 13. Use iconName instead.\n */\n @Input()\n public icon: string | undefined;\n\n /**\n * The name of the Blackbaud SVG icon to display.\n */\n @Input()\n public iconName: string | undefined;\n\n /**\n * The type of icon to display. Specifying `\"fa\"` displays a Font Awesome icon,\n * while specifying `\"skyux\"` displays an icon from the custom SKY UX icon font. Note that\n * the custom SKY UX icon font is currently in beta.\n * @default \"fa\"\n * @deprecated The icon component now automatically infers which type of icon to use based on the current theme. This input will be removed in SKY UX 13.\n */\n @Input()\n public iconType: SkyIconType | undefined;\n\n /**\n * The size of the icon using\n * [Font Awesome sizes](https://fontawesome.com/v4/examples/). Size is relative to the font size. Do not prefix the size with `fa-`.\n * @deprecated `size` is deprecated and will be removed in SKY UX 13. Use `iconSize` to set a specific size that does not scale with font size instead.\n */\n @Input()\n public size: string | undefined;\n\n /**\n * Whether to enforce a fixed width based on icon size. By default, icons of a specified size share a\n * consistent height, but their widths vary and can throw off vertical alignment. Use a fixed width when\n * you stack icons vertically, such as in lists.\n * @default false\n * @deprecated `fixedWidth` is a Font Awesome input and will be removed when Font Awesome support is dropped in SKY UX 13.\n * All icons using iconName are automatically fixed width.\n */\n @Input()\n public fixedWidth: boolean | undefined;\n\n /**\n * The icon variant. If the variant doesn't exist for the\n * specified icon, the normal icon is displayed. This property only applies when using SKY UX icons.\n */\n @Input()\n public variant: SkyIconVariantType | undefined;\n\n /**\n * The icon size. Size is independent of font size.\n * @default \"m\"\n */\n public readonly iconSize = input<SkyIconSize | undefined>();\n\n protected themeSvc = inject(SkyThemeService, { optional: true });\n}\n","@if (iconName) {\n <sky-icon-svg\n [iconName]=\"iconName\"\n [relativeSize]=\"size\"\n [iconSize]=\"iconSize()\"\n [iconVariant]=\"variant\"\n [attr.data-sky-icon]=\"iconName\"\n [attr.data-sky-icon-variant]=\"variant\"\n />\n} @else if (icon) {\n <i\n aria-hidden=\"true\"\n class=\"sky-icon\"\n [attr.data-sky-icon]=\"icon\"\n [attr.data-sky-icon-type]=\"iconType\"\n [attr.data-sky-icon-variant]=\"variant\"\n [ngClass]=\"\n icon\n | skyIconClassList\n : (themeSvc?.settingsChange | async)?.currentSettings\n : size\n : fixedWidth\n : variant\n \"\n ></i>\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { SkyIconClassListPipe } from './icon-class-list.pipe';\nimport { SkyIconSvgComponent } from './icon-svg.component';\nimport { SkyIconComponent } from './icon.component';\n\n@NgModule({\n declarations: [SkyIconClassListPipe, SkyIconComponent],\n imports: [CommonModule, SkyIconSvgComponent],\n exports: [SkyIconComponent],\n})\nexport class SkyIconModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.SkyIconSvgComponent","i3.SkyIconClassListPipe"],"mappings":"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"}
1
+ {"version":3,"file":"skyux-icon.mjs","sources":["../tmp-esm2022/lib/modules/icon/icon-resolver.service.js","../tmp-esm2022/lib/modules/icon/icon-class-list.pipe.js","../tmp-esm2022/lib/modules/icon/icon-svg-resolver.service.js","../tmp-esm2022/lib/modules/icon/icon-svg.component.js","../tmp-esm2022/lib/modules/icon/icon.component.js","../tmp-esm2022/lib/modules/icon/icon.module.js","../tmp-esm2022/skyux-icon.js"],"sourcesContent":["import { Injectable, inject } from '@angular/core';\nimport { SkyThemeIconManifestService, } from '@skyux/theme';\nimport * as i0 from \"@angular/core\";\n/**\n * @internal\n */\nexport class SkyIconResolverService {\n #glyphMap = new Map();\n #manifestSvc = inject(SkyThemeIconManifestService);\n constructor() {\n // Map the icons by name for more efficient lookup.\n for (const glyph of this.#manifestSvc.getManifest().glyphs) {\n // TODO: keep this until `faName` is removed just in case any icons get added with the wrong shape\n if (glyph.faName && !glyph.faNames) {\n glyph.faNames = [glyph.faName];\n }\n this.#glyphMap.set(glyph.name, glyph);\n }\n }\n resolveIcon(icon, variant, themeSettings) {\n let iconType = 'fa';\n const variantIcon = variant && `${icon}-${variant}`;\n const lineIcon = `${icon}-line`;\n // Get the specified variant, or fall back to the icon name.\n // If the pure icon name doesn't exist, try the line variant.\n let glyph = this.#glyphMap.get(variantIcon) ??\n this.#glyphMap.get(icon) ??\n this.#glyphMap.get(lineIcon) ??\n Array.from(this.#glyphMap.values()).find((glyph) => glyph.aliases?.includes(variantIcon) ||\n glyph.aliases?.includes(lineIcon) ||\n glyph.aliases?.includes(icon));\n // If still no icon is found, search through the icons that match the FA name.\n if (!glyph) {\n let glyphs = Array.from(this.#glyphMap.values()).filter((g) => g.faNames?.includes(icon));\n if (glyphs.length) {\n if (glyphs.length > 1) {\n // If multiples are found, make sure we select the correct variant, if requested.\n // The icons are ordered such that the \"default\" variant will be the first one.\n if (variant) {\n const variantGlyph = glyphs.find((g) => g.name.endsWith(variant));\n if (variantGlyph) {\n glyphs = [variantGlyph];\n }\n }\n }\n glyph = glyphs[0];\n }\n // If none of the above works, no matching icon was found\n }\n if (glyph) {\n // If a glyph is found, use it for modern theme or if no FA fallback exists.\n if (themeSettings?.theme.name === 'modern' || !glyph.faNames?.length) {\n icon = glyph.name;\n iconType = 'skyux';\n }\n else {\n // For default theme, use a known FA fallback.\n // If the icon name requested is already a FA icon, just use it. Otherwise use the first one.\n if (!glyph.faNames?.includes(icon)) {\n icon = glyph.faNames[0];\n }\n }\n }\n // If no SKY UX glyph is found, assume icon is part of FA and pass it along.\n return {\n icon,\n iconType,\n };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconResolverService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconResolverService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1yZXNvbHZlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ljb24vc3JjL2xpYi9tb2R1bGVzL2ljb24vaWNvbi1yZXNvbHZlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFFTCwyQkFBMkIsR0FFNUIsTUFBTSxjQUFjLENBQUM7O0FBS3RCOztHQUVHO0FBSUgsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxTQUFTLEdBQUcsSUFBSSxHQUFHLEVBQXFDLENBQUM7SUFFekQsWUFBWSxHQUFHLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRW5EO1FBQ0UsbURBQW1EO1FBQ25ELEtBQUssTUFBTSxLQUFLLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMzRCxrR0FBa0c7WUFDbEcsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUNuQyxLQUFLLENBQUMsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ2pDLENBQUM7WUFDRCxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLENBQUM7SUFDSCxDQUFDO0lBRU0sV0FBVyxDQUNoQixJQUFZLEVBQ1osT0FBNEIsRUFDNUIsYUFBZ0M7UUFFaEMsSUFBSSxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE1BQU0sV0FBVyxHQUFHLE9BQU8sSUFBSSxHQUFHLElBQUksSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUNwRCxNQUFNLFFBQVEsR0FBRyxHQUFHLElBQUksT0FBTyxDQUFDO1FBRWhDLDREQUE0RDtRQUM1RCw2REFBNkQ7UUFDN0QsSUFBSSxLQUFLLEdBQ1AsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsV0FBcUIsQ0FBQztZQUN6QyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7WUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1lBQzVCLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FDdEMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUNSLEtBQUssQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLFdBQXFCLENBQUM7Z0JBQzlDLEtBQUssQ0FBQyxPQUFPLEVBQUUsUUFBUSxDQUFDLFFBQVEsQ0FBQztnQkFDakMsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQ2hDLENBQUM7UUFFSiw4RUFBOEU7UUFDOUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ1gsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDNUQsQ0FBQyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLENBQzFCLENBQUM7WUFDRixJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO29CQUN0QixpRkFBaUY7b0JBQ2pGLCtFQUErRTtvQkFDL0UsSUFBSSxPQUFPLEVBQUUsQ0FBQzt3QkFDWixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO3dCQUNsRSxJQUFJLFlBQVksRUFBRSxDQUFDOzRCQUNqQixNQUFNLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQzt3QkFDMUIsQ0FBQztvQkFDSCxDQUFDO2dCQUNILENBQUM7Z0JBQ0QsS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwQixDQUFDO1lBQ0QseURBQXlEO1FBQzNELENBQUM7UUFFRCxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsNEVBQTRFO1lBQzVFLElBQUksYUFBYSxFQUFFLEtBQUssQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztnQkFDckUsSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUM7Z0JBQ2xCLFFBQVEsR0FBRyxPQUFPLENBQUM7WUFDckIsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLDhDQUE4QztnQkFDOUMsNkZBQTZGO2dCQUM3RixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztvQkFDbkMsSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQzFCLENBQUM7WUFDSCxDQUFDO1FBQ0gsQ0FBQztRQUVELDRFQUE0RTtRQUM1RSxPQUFPO1lBQ0wsSUFBSTtZQUNKLFFBQVE7U0FDVCxDQUFDO0lBQ0osQ0FBQzs4R0E5RVUsc0JBQXNCO2tIQUF0QixzQkFBc0IsY0FGckIsTUFBTTs7MkZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgU2t5VGhlbWVJY29uTWFuaWZlc3RHbHlwaCxcbiAgU2t5VGhlbWVJY29uTWFuaWZlc3RTZXJ2aWNlLFxuICBTa3lUaGVtZVNldHRpbmdzLFxufSBmcm9tICdAc2t5dXgvdGhlbWUnO1xuXG5pbXBvcnQgeyBTa3lJY29uUmVzb2x2ZWQgfSBmcm9tICcuL3R5cGVzL2ljb24tcmVzb2x2ZWQnO1xuaW1wb3J0IHR5cGUgeyBTa3lJY29uVmFyaWFudFR5cGUgfSBmcm9tICcuL3R5cGVzL2ljb24tdmFyaWFudC10eXBlJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFNreUljb25SZXNvbHZlclNlcnZpY2Uge1xuICAjZ2x5cGhNYXAgPSBuZXcgTWFwPHN0cmluZywgU2t5VGhlbWVJY29uTWFuaWZlc3RHbHlwaD4oKTtcblxuICAjbWFuaWZlc3RTdmMgPSBpbmplY3QoU2t5VGhlbWVJY29uTWFuaWZlc3RTZXJ2aWNlKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICAvLyBNYXAgdGhlIGljb25zIGJ5IG5hbWUgZm9yIG1vcmUgZWZmaWNpZW50IGxvb2t1cC5cbiAgICBmb3IgKGNvbnN0IGdseXBoIG9mIHRoaXMuI21hbmlmZXN0U3ZjLmdldE1hbmlmZXN0KCkuZ2x5cGhzKSB7XG4gICAgICAvLyBUT0RPOiBrZWVwIHRoaXMgdW50aWwgYGZhTmFtZWAgaXMgcmVtb3ZlZCBqdXN0IGluIGNhc2UgYW55IGljb25zIGdldCBhZGRlZCB3aXRoIHRoZSB3cm9uZyBzaGFwZVxuICAgICAgaWYgKGdseXBoLmZhTmFtZSAmJiAhZ2x5cGguZmFOYW1lcykge1xuICAgICAgICBnbHlwaC5mYU5hbWVzID0gW2dseXBoLmZhTmFtZV07XG4gICAgICB9XG4gICAgICB0aGlzLiNnbHlwaE1hcC5zZXQoZ2x5cGgubmFtZSwgZ2x5cGgpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZXNvbHZlSWNvbihcbiAgICBpY29uOiBzdHJpbmcsXG4gICAgdmFyaWFudD86IFNreUljb25WYXJpYW50VHlwZSxcbiAgICB0aGVtZVNldHRpbmdzPzogU2t5VGhlbWVTZXR0aW5ncyxcbiAgKTogU2t5SWNvblJlc29sdmVkIHtcbiAgICBsZXQgaWNvblR5cGUgPSAnZmEnO1xuICAgIGNvbnN0IHZhcmlhbnRJY29uID0gdmFyaWFudCAmJiBgJHtpY29ufS0ke3ZhcmlhbnR9YDtcbiAgICBjb25zdCBsaW5lSWNvbiA9IGAke2ljb259LWxpbmVgO1xuXG4gICAgLy8gR2V0IHRoZSBzcGVjaWZpZWQgdmFyaWFudCwgb3IgZmFsbCBiYWNrIHRvIHRoZSBpY29uIG5hbWUuXG4gICAgLy8gSWYgdGhlIHB1cmUgaWNvbiBuYW1lIGRvZXNuJ3QgZXhpc3QsIHRyeSB0aGUgbGluZSB2YXJpYW50LlxuICAgIGxldCBnbHlwaCA9XG4gICAgICB0aGlzLiNnbHlwaE1hcC5nZXQodmFyaWFudEljb24gYXMgc3RyaW5nKSA/P1xuICAgICAgdGhpcy4jZ2x5cGhNYXAuZ2V0KGljb24pID8/XG4gICAgICB0aGlzLiNnbHlwaE1hcC5nZXQobGluZUljb24pID8/XG4gICAgICBBcnJheS5mcm9tKHRoaXMuI2dseXBoTWFwLnZhbHVlcygpKS5maW5kKFxuICAgICAgICAoZ2x5cGgpID0+XG4gICAgICAgICAgZ2x5cGguYWxpYXNlcz8uaW5jbHVkZXModmFyaWFudEljb24gYXMgc3RyaW5nKSB8fFxuICAgICAgICAgIGdseXBoLmFsaWFzZXM/LmluY2x1ZGVzKGxpbmVJY29uKSB8fFxuICAgICAgICAgIGdseXBoLmFsaWFzZXM/LmluY2x1ZGVzKGljb24pLFxuICAgICAgKTtcblxuICAgIC8vIElmIHN0aWxsIG5vIGljb24gaXMgZm91bmQsIHNlYXJjaCB0aHJvdWdoIHRoZSBpY29ucyB0aGF0IG1hdGNoIHRoZSBGQSBuYW1lLlxuICAgIGlmICghZ2x5cGgpIHtcbiAgICAgIGxldCBnbHlwaHMgPSBBcnJheS5mcm9tKHRoaXMuI2dseXBoTWFwLnZhbHVlcygpKS5maWx0ZXIoKGcpID0+XG4gICAgICAgIGcuZmFOYW1lcz8uaW5jbHVkZXMoaWNvbiksXG4gICAgICApO1xuICAgICAgaWYgKGdseXBocy5sZW5ndGgpIHtcbiAgICAgICAgaWYgKGdseXBocy5sZW5ndGggPiAxKSB7XG4gICAgICAgICAgLy8gSWYgbXVsdGlwbGVzIGFyZSBmb3VuZCwgbWFrZSBzdXJlIHdlIHNlbGVjdCB0aGUgY29ycmVjdCB2YXJpYW50LCBpZiByZXF1ZXN0ZWQuXG4gICAgICAgICAgLy8gVGhlIGljb25zIGFyZSBvcmRlcmVkIHN1Y2ggdGhhdCB0aGUgXCJkZWZhdWx0XCIgdmFyaWFudCB3aWxsIGJlIHRoZSBmaXJzdCBvbmUuXG4gICAgICAgICAgaWYgKHZhcmlhbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhcmlhbnRHbHlwaCA9IGdseXBocy5maW5kKChnKSA9PiBnLm5hbWUuZW5kc1dpdGgodmFyaWFudCkpO1xuICAgICAgICAgICAgaWYgKHZhcmlhbnRHbHlwaCkge1xuICAgICAgICAgICAgICBnbHlwaHMgPSBbdmFyaWFudEdseXBoXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZ2x5cGggPSBnbHlwaHNbMF07XG4gICAgICB9XG4gICAgICAvLyBJZiBub25lIG9mIHRoZSBhYm92ZSB3b3Jrcywgbm8gbWF0Y2hpbmcgaWNvbiB3YXMgZm91bmRcbiAgICB9XG5cbiAgICBpZiAoZ2x5cGgpIHtcbiAgICAgIC8vIElmIGEgZ2x5cGggaXMgZm91bmQsIHVzZSBpdCBmb3IgbW9kZXJuIHRoZW1lIG9yIGlmIG5vIEZBIGZhbGxiYWNrIGV4aXN0cy5cbiAgICAgIGlmICh0aGVtZVNldHRpbmdzPy50aGVtZS5uYW1lID09PSAnbW9kZXJuJyB8fCAhZ2x5cGguZmFOYW1lcz8ubGVuZ3RoKSB7XG4gICAgICAgIGljb24gPSBnbHlwaC5uYW1lO1xuICAgICAgICBpY29uVHlwZSA9ICdza3l1eCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBGb3IgZGVmYXVsdCB0aGVtZSwgdXNlIGEga25vd24gRkEgZmFsbGJhY2suXG4gICAgICAgIC8vIElmIHRoZSBpY29uIG5hbWUgcmVxdWVzdGVkIGlzIGFscmVhZHkgYSBGQSBpY29uLCBqdXN0IHVzZSBpdC4gT3RoZXJ3aXNlIHVzZSB0aGUgZmlyc3Qgb25lLlxuICAgICAgICBpZiAoIWdseXBoLmZhTmFtZXM/LmluY2x1ZGVzKGljb24pKSB7XG4gICAgICAgICAgaWNvbiA9IGdseXBoLmZhTmFtZXNbMF07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBJZiBubyBTS1kgVVggZ2x5cGggaXMgZm91bmQsIGFzc3VtZSBpY29uIGlzIHBhcnQgb2YgRkEgYW5kIHBhc3MgaXQgYWxvbmcuXG4gICAgcmV0dXJuIHtcbiAgICAgIGljb24sXG4gICAgICBpY29uVHlwZSxcbiAgICB9O1xuICB9XG59XG4iXX0=","import { Pipe, inject } from '@angular/core';\nimport { SkyIconResolverService } from './icon-resolver.service';\nimport * as i0 from \"@angular/core\";\n/**\n * @internal\n */\nexport class SkyIconClassListPipe {\n #resolver = inject(SkyIconResolverService);\n transform(icon, themeSettings, size, fixedWidth, variant) {\n let classList;\n const { icon: resolvedIcon, iconType: resolvedIconType } = this.#resolver.resolveIcon(icon, variant, themeSettings);\n if (resolvedIconType === 'skyux') {\n classList = ['sky-i-' + resolvedIcon];\n }\n else {\n classList = ['fa', 'fa-' + resolvedIcon];\n }\n if (size) {\n classList.push('fa-' + size);\n }\n if (fixedWidth) {\n classList.push('fa-fw');\n }\n return classList;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconClassListPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }\n static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: \"14.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconClassListPipe, isStandalone: false, name: \"skyIconClassList\" }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconClassListPipe, decorators: [{\n type: Pipe,\n args: [{\n name: 'skyIconClassList',\n standalone: false,\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1jbGFzcy1saXN0LnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaWNvbi9zcmMvbGliL21vZHVsZXMvaWNvbi9pY29uLWNsYXNzLWxpc3QucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHNUQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBR2pFOztHQUVHO0FBS0gsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixTQUFTLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFFcEMsU0FBUyxDQUNkLElBQVksRUFDWixhQUFnQyxFQUNoQyxJQUFhLEVBQ2IsVUFBb0IsRUFDcEIsT0FBNEI7UUFFNUIsSUFBSSxTQUFtQixDQUFDO1FBRXhCLE1BQU0sRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxHQUN0RCxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxJQUFJLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBRTNELElBQUksZ0JBQWdCLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDakMsU0FBUyxHQUFHLENBQUMsUUFBUSxHQUFHLFlBQVksQ0FBQyxDQUFDO1FBQ3hDLENBQUM7YUFBTSxDQUFDO1lBQ04sU0FBUyxHQUFHLENBQUMsSUFBSSxFQUFFLEtBQUssR0FBRyxZQUFZLENBQUMsQ0FBQztRQUMzQyxDQUFDO1FBRUQsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQy9CLENBQUM7UUFFRCxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsU0FBUyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQixDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzs4R0E5QlUsb0JBQW9COzRHQUFwQixvQkFBb0I7OzJGQUFwQixvQkFBb0I7a0JBSmhDLElBQUk7bUJBQUM7b0JBQ0osSUFBSSxFQUFFLGtCQUFrQjtvQkFDeEIsVUFBVSxFQUFFLEtBQUs7aUJBQ2xCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lUaGVtZVNldHRpbmdzIH0gZnJvbSAnQHNreXV4L3RoZW1lJztcblxuaW1wb3J0IHsgU2t5SWNvblJlc29sdmVyU2VydmljZSB9IGZyb20gJy4vaWNvbi1yZXNvbHZlci5zZXJ2aWNlJztcbmltcG9ydCB7IFNreUljb25WYXJpYW50VHlwZSB9IGZyb20gJy4vdHlwZXMvaWNvbi12YXJpYW50LXR5cGUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AUGlwZSh7XG4gIG5hbWU6ICdza3lJY29uQ2xhc3NMaXN0JyxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIFNreUljb25DbGFzc0xpc3RQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICNyZXNvbHZlciA9IGluamVjdChTa3lJY29uUmVzb2x2ZXJTZXJ2aWNlKTtcblxuICBwdWJsaWMgdHJhbnNmb3JtKFxuICAgIGljb246IHN0cmluZyxcbiAgICB0aGVtZVNldHRpbmdzPzogU2t5VGhlbWVTZXR0aW5ncyxcbiAgICBzaXplPzogc3RyaW5nLFxuICAgIGZpeGVkV2lkdGg/OiBib29sZWFuLFxuICAgIHZhcmlhbnQ/OiBTa3lJY29uVmFyaWFudFR5cGUsXG4gICk6IHN0cmluZ1tdIHtcbiAgICBsZXQgY2xhc3NMaXN0OiBzdHJpbmdbXTtcblxuICAgIGNvbnN0IHsgaWNvbjogcmVzb2x2ZWRJY29uLCBpY29uVHlwZTogcmVzb2x2ZWRJY29uVHlwZSB9ID1cbiAgICAgIHRoaXMuI3Jlc29sdmVyLnJlc29sdmVJY29uKGljb24sIHZhcmlhbnQsIHRoZW1lU2V0dGluZ3MpO1xuXG4gICAgaWYgKHJlc29sdmVkSWNvblR5cGUgPT09ICdza3l1eCcpIHtcbiAgICAgIGNsYXNzTGlzdCA9IFsnc2t5LWktJyArIHJlc29sdmVkSWNvbl07XG4gICAgfSBlbHNlIHtcbiAgICAgIGNsYXNzTGlzdCA9IFsnZmEnLCAnZmEtJyArIHJlc29sdmVkSWNvbl07XG4gICAgfVxuXG4gICAgaWYgKHNpemUpIHtcbiAgICAgIGNsYXNzTGlzdC5wdXNoKCdmYS0nICsgc2l6ZSk7XG4gICAgfVxuXG4gICAgaWYgKGZpeGVkV2lkdGgpIHtcbiAgICAgIGNsYXNzTGlzdC5wdXNoKCdmYS1mdycpO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc0xpc3Q7XG4gIH1cbn1cbiJdfQ==","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nasync function getIconMap() {\n const response = await fetch(`https://sky.blackbaudcdn.net/static/skyux-icons/8/assets/svg/skyux-icons.svg`);\n /* istanbul ignore next */\n if (!response.ok) {\n throw new Error('Icon sprite could not be loaded.');\n }\n const markup = await response.text();\n document.body.insertAdjacentHTML('afterbegin', markup);\n const iconMap = Array.from(document.querySelectorAll('#sky-icon-svg-sprite symbol')).reduce((map, el) => {\n const idParts = el.id.split('-');\n // Construct the icon name by removing `sky-i-` from the beginning\n // and `-<size>-<variant>` from the end.\n const name = idParts.slice(2, idParts.length - 2).join('-');\n let sizes = map.get(name);\n if (!sizes) {\n sizes = [];\n map.set(name, sizes);\n }\n // The penultimate segment is the size for which the icon has\n // been optimized.\n sizes.push(+idParts[idParts.length - 2]);\n return map;\n }, new Map());\n // Sort all the sizes for later comparison.\n for (const id of iconMap.keys()) {\n // Dedupe and sort the icon sizes.\n iconMap.set(id, [...new Set(iconMap.get(id))].sort());\n }\n return iconMap;\n}\nfunction getNearestSize(iconMap, name, pixelSize) {\n const sizes = iconMap.get(name);\n if (sizes) {\n let nearestSizeUnder = -Infinity;\n let nearestSizeOver = Infinity;\n for (const availableSize of sizes) {\n if (availableSize === pixelSize) {\n return pixelSize;\n }\n else if (availableSize < pixelSize) {\n nearestSizeUnder = availableSize;\n }\n else {\n nearestSizeOver = availableSize;\n break;\n }\n }\n const underDiff = Math.abs(pixelSize - nearestSizeUnder);\n const overDiff = Math.abs(pixelSize - nearestSizeOver);\n return isNaN(overDiff) || underDiff < overDiff\n ? nearestSizeUnder\n : nearestSizeOver;\n }\n return undefined;\n}\nlet iconMapPromise;\n/**\n * @internal\n */\nexport class SkyIconSvgResolverService {\n async resolveHref(name, pixelSize = 16, variant = 'line') {\n if (!iconMapPromise) {\n iconMapPromise = getIconMap();\n }\n const iconMap = await iconMapPromise;\n let href = `#sky-i-${name}`;\n // Find the icon with the optimal size nearest to the requested size.\n const nearestSize = getNearestSize(iconMap, name, pixelSize);\n if (!nearestSize) {\n throw new Error(`Icon with name '${name}' was not found.`);\n }\n href = `${href}-${nearestSize}-${variant}`;\n return href;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconSvgResolverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconSvgResolverService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconSvgResolverService, decorators: [{\n type: Injectable,\n args: [{\n providedIn: 'root',\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1zdmctcmVzb2x2ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pY29uL3NyYy9saWIvbW9kdWxlcy9pY29uL2ljb24tc3ZnLXJlc29sdmVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJM0MsS0FBSyxVQUFVLFVBQVU7SUFDdkIsTUFBTSxRQUFRLEdBQUcsTUFBTSxLQUFLLENBQzFCLDhFQUE4RSxDQUMvRSxDQUFDO0lBRUYsMEJBQTBCO0lBQzFCLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUM7UUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxNQUFNLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUVyQyxRQUFRLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUV2RCxNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUN4QixRQUFRLENBQUMsZ0JBQWdCLENBQUMsNkJBQTZCLENBQUMsQ0FDekQsQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEVBQUU7UUFDbkIsTUFBTSxPQUFPLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFakMsa0VBQWtFO1FBQ2xFLHdDQUF3QztRQUN4QyxNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUU1RCxJQUFJLEtBQUssR0FBRyxHQUFHLENBQUMsR0FB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SUFBSSxDQUFDO0lBQ2QsQ0FBQzs4R0F4QlUseUJBQXlCO2tIQUF6Qix5QkFBeUIsY0FGeEIsTUFBTTs7MkZBRVAseUJBQXlCO2tCQUhyQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5SWNvblZhcmlhbnRUeXBlIH0gZnJvbSAnLi90eXBlcy9pY29uLXZhcmlhbnQtdHlwZSc7XG5cbmFzeW5jIGZ1bmN0aW9uIGdldEljb25NYXAoKTogUHJvbWlzZTxNYXA8c3RyaW5nLCBudW1iZXJbXT4+IHtcbiAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChcbiAgICBgaHR0cHM6Ly9za3kuYmxhY2tiYXVkY2RuLm5ldC9zdGF0aWMvc2t5dXgtaWNvbnMvOC9hc3NldHMvc3ZnL3NreXV4LWljb25zLnN2Z2AsXG4gICk7XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgaWYgKCFyZXNwb25zZS5vaykge1xuICAgIHRocm93IG5ldyBFcnJvcignSWNvbiBzcHJpdGUgY291bGQgbm90IGJlIGxvYWRlZC4nKTtcbiAgfVxuXG4gIGNvbnN0IG1hcmt1cCA9IGF3YWl0IHJlc3BvbnNlLnRleHQoKTtcblxuICBkb2N1bWVudC5ib2R5Lmluc2VydEFkamFjZW50SFRNTCgnYWZ0ZXJiZWdpbicsIG1hcmt1cCk7XG5cbiAgY29uc3QgaWNvbk1hcCA9IEFycmF5LmZyb208U1ZHU3ltYm9sRWxlbWVudD4oXG4gICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnI3NreS1pY29uLXN2Zy1zcHJpdGUgc3ltYm9sJyksXG4gICkucmVkdWNlKChtYXAsIGVsKSA9PiB7XG4gICAgY29uc3QgaWRQYXJ0cyA9IGVsLmlkLnNwbGl0KCctJyk7XG5cbiAgICAvLyBDb25zdHJ1Y3QgdGhlIGljb24gbmFtZSBieSByZW1vdmluZyBgc2t5LWktYCBmcm9tIHRoZSBiZWdpbm5pbmdcbiAgICAvLyBhbmQgYC08c2l6ZT4tPHZhcmlhbnQ+YCBmcm9tIHRoZSBlbmQuXG4gICAgY29uc3QgbmFtZSA9IGlkUGFydHMuc2xpY2UoMiwgaWRQYXJ0cy5sZW5ndGggLSAyKS5qb2luKCctJyk7XG5cbiAgICBsZXQgc2l6ZXMgPSBtYXAuZ2V0KG5hbWUpO1xuXG4gICAgaWYgKCFzaXplcykge1xuICAgICAgc2l6ZXMgPSBbXTtcbiAgICAgIG1hcC5zZXQobmFtZSwgc2l6ZXMpO1xuICAgIH1cblxuICAgIC8vIFRoZSBwZW51bHRpbWF0ZSBzZWdtZW50IGlzIHRoZSBzaXplIGZvciB3aGljaCB0aGUgaWNvbiBoYXNcbiAgICAvLyBiZWVuIG9wdGltaXplZC5cbiAgICBzaXplcy5wdXNoKCtpZFBhcnRzW2lkUGFydHMubGVuZ3RoIC0gMl0pO1xuXG4gICAgcmV0dXJuIG1hcDtcbiAgfSwgbmV3IE1hcDxzdHJpbmcsIG51bWJlcltdPigpKTtcblxuICAvLyBTb3J0IGFsbCB0aGUgc2l6ZXMgZm9yIGxhdGVyIGNvbXBhcmlzb24uXG4gIGZvciAoY29uc3QgaWQgb2YgaWNvbk1hcC5rZXlzKCkpIHtcbiAgICAvLyBEZWR1cGUgYW5kIHNvcnQgdGhlIGljb24gc2l6ZXMuXG4gICAgaWNvbk1hcC5zZXQoaWQsIFsuLi5uZXcgU2V0KGljb25NYXAuZ2V0KGlkKSldLnNvcnQoKSk7XG4gIH1cblxuICByZXR1cm4gaWNvbk1hcDtcbn1cblxuZnVuY3Rpb24gZ2V0TmVhcmVzdFNpemUoXG4gIGljb25NYXA6IE1hcDxzdHJpbmcsIG51bWJlcltdPixcbiAgbmFtZTogc3RyaW5nLFxuICBwaXhlbFNpemU6IG51bWJlcixcbik6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gIGNvbnN0IHNpemVzID0gaWNvbk1hcC5nZXQobmFtZSk7XG5cbiAgaWYgKHNpemVzKSB7XG4gICAgbGV0IG5lYXJlc3RTaXplVW5kZXIgPSAtSW5maW5pdHk7XG4gICAgbGV0IG5lYXJlc3RTaXplT3ZlciA9IEluZmluaXR5O1xuXG4gICAgZm9yIChjb25zdCBhdmFpbGFibGVTaXplIG9mIHNpemVzKSB7XG4gICAgICBpZiAoYXZhaWxhYmxlU2l6ZSA9PT0gcGl4ZWxTaXplKSB7XG4gICAgICAgIHJldHVybiBwaXhlbFNpemU7XG4gICAgICB9IGVsc2UgaWYgKGF2YWlsYWJsZVNpemUgPCBwaXhlbFNpemUpIHtcbiAgICAgICAgbmVhcmVzdFNpemVVbmRlciA9IGF2YWlsYWJsZVNpemU7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBuZWFyZXN0U2l6ZU92ZXIgPSBhdmFpbGFibGVTaXplO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCB1bmRlckRpZmYgPSBNYXRoLmFicyhwaXhlbFNpemUgLSBuZWFyZXN0U2l6ZVVuZGVyKTtcbiAgICBjb25zdCBvdmVyRGlmZiA9IE1hdGguYWJzKHBpeGVsU2l6ZSAtIG5lYXJlc3RTaXplT3Zlcik7XG5cbiAgICByZXR1cm4gaXNOYU4ob3ZlckRpZmYpIHx8IHVuZGVyRGlmZiA8IG92ZXJEaWZmXG4gICAgICA/IG5lYXJlc3RTaXplVW5kZXJcbiAgICAgIDogbmVhcmVzdFNpemVPdmVyO1xuICB9XG5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxubGV0IGljb25NYXBQcm9taXNlOiBQcm9taXNlPE1hcDxzdHJpbmcsIG51bWJlcltdPj4gfCB1bmRlZmluZWQ7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lJY29uU3ZnUmVzb2x2ZXJTZXJ2aWNlIHtcbiAgcHVibGljIGFzeW5jIHJlc29sdmVIcmVmKFxuICAgIG5hbWU6IHN0cmluZyxcbiAgICBwaXhlbFNpemUgPSAxNixcbiAgICB2YXJpYW50OiBTa3lJY29uVmFyaWFudFR5cGUgPSAnbGluZScsXG4gICk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgaWYgKCFpY29uTWFwUHJvbWlzZSkge1xuICAgICAgaWNvbk1hcFByb21pc2UgPSBnZXRJY29uTWFwKCk7XG4gICAgfVxuXG4gICAgY29uc3QgaWNvbk1hcCA9IGF3YWl0IGljb25NYXBQcm9taXNlO1xuXG4gICAgbGV0IGhyZWYgPSBgI3NreS1pLSR7bmFtZX1gO1xuXG4gICAgLy8gRmluZCB0aGUgaWNvbiB3aXRoIHRoZSBvcHRpbWFsIHNpemUgbmVhcmVzdCB0byB0aGUgcmVxdWVzdGVkIHNpemUuXG4gICAgY29uc3QgbmVhcmVzdFNpemUgPSBnZXROZWFyZXN0U2l6ZShpY29uTWFwLCBuYW1lLCBwaXhlbFNpemUpO1xuXG4gICAgaWYgKCFuZWFyZXN0U2l6ZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBJY29uIHdpdGggbmFtZSAnJHtuYW1lfScgd2FzIG5vdCBmb3VuZC5gKTtcbiAgICB9XG5cbiAgICBocmVmID0gYCR7aHJlZn0tJHtuZWFyZXN0U2l6ZX0tJHt2YXJpYW50fWA7XG5cbiAgICByZXR1cm4gaHJlZjtcbiAgfVxufVxuIl19","import { Component, computed, inject, input } from '@angular/core';\nimport { toObservable, toSignal } from '@angular/core/rxjs-interop';\nimport { SkyThemeComponentClassDirective } from '@skyux/theme';\nimport { catchError, of, switchMap } from 'rxjs';\nimport { SkyIconSvgResolverService } from './icon-svg-resolver.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@skyux/theme\";\nconst SIZE_BASE = 16;\nconst RELATIVE_SIZES = new Map([\n ['md', SIZE_BASE],\n ['lg', 21.333 /* SIZE_BASE * (4/3) */],\n ['2x', 32 /* SIZE_BASE * 2 */],\n ['3x', 48 /* SIZE_BASE * 3 */],\n ['4x', 64 /* SIZE_BASE * 4 */],\n ['5x', 80 /* SIZE_BASE * 5 */],\n]);\nconst FIXED_SIZES = new Map([\n ['s', SIZE_BASE],\n ['m', 20],\n ['l', 24],\n ['xl', 32],\n]);\nfunction defaultSize(value) {\n return value ?? 'm';\n}\n/**\n * @internal\n */\nexport class SkyIconSvgComponent {\n constructor() {\n this.#resolverSvc = inject(SkyIconSvgResolverService);\n this.iconName = input.required();\n this.iconSize = input('m', {\n transform: defaultSize,\n });\n this.relativeSize = input();\n this.iconVariant = input();\n this.#iconInfo = computed(() => {\n return {\n src: this.iconName(),\n relativeSize: this.relativeSize(),\n iconSize: this.iconSize(),\n variant: this.iconVariant(),\n };\n });\n this.iconHref = toSignal(toObservable(this.#iconInfo).pipe(switchMap((info) => this.#resolverSvc.resolveHref(info.src, info.relativeSize !== undefined\n ? RELATIVE_SIZES.get(info.relativeSize)\n : FIXED_SIZES.get(info.iconSize), info.variant)), catchError(() => of(''))));\n }\n #resolverSvc;\n #iconInfo;\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconSvgComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.5\", type: SkyIconSvgComponent, isStandalone: true, selector: \"sky-icon-svg\", inputs: { iconName: { classPropertyName: \"iconName\", publicName: \"iconName\", isSignal: true, isRequired: true, transformFunction: null }, iconSize: { classPropertyName: \"iconSize\", publicName: \"iconSize\", isSignal: true, isRequired: false, transformFunction: null }, relativeSize: { classPropertyName: \"relativeSize\", publicName: \"relativeSize\", isSignal: true, isRequired: false, transformFunction: null }, iconVariant: { classPropertyName: \"iconVariant\", publicName: \"iconVariant\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"class\": \"relativeSize() ? \\\"sky-icon-svg-relative-\\\" + relativeSize() : \\\"sky-icon-svg-\\\" + iconSize()\" } }, hostDirectives: [{ directive: i1.SkyThemeComponentClassDirective }], ngImport: i0, template: \"<div class=\\\"sky-icon-svg-container\\\">\\n <svg\\n aria-hidden=\\\"true\\\"\\n class=\\\"sky-icon-svg-img\\\"\\n [attr.data-sky-icon]=\\\"iconName()\\\"\\n [attr.data-sky-icon-variant]=\\\"iconVariant()\\\"\\n >\\n <use [attr.xlink:href]=\\\"iconHref()\\\" />\\n </svg>\\n</div>\\n\", styles: [\"@charset \\\"UTF-8\\\";:host.sky-cmp-theme-default{--sky-override-sky-icon-svg-size-xxxs: 4px;--sky-override-sky-icon-svg-size-xxs: 8px;--sky-override-sky-icon-svg-size-xs: 12px;--sky-override-sky-icon-svg-size-s: 16px;--sky-override-sky-icon-svg-size-m: 20px;--sky-override-sky-icon-svg-size-l: 24px;--sky-override-sky-icon-svg-size-xl: 32px;--sky-override-sky-icon-svg-size-xxl: 40px;--sky-override-sky-icon-svg-size-xxxl: 48px}:host{display:inline-flex;--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-s, var(--sky-size-icon-s) )}:host.sky-icon-svg-relative-md{--sky-icon-svg-img-size: 1em}:host.sky-icon-svg-relative-lg .sky-icon-svg-img{transform:scale(1.33)}:host.sky-icon-svg-relative-lg .sky-icon-svg-container{margin:0 .166em}:host.sky-icon-svg-relative-2x{--sky-icon-svg-img-size: 2em}:host.sky-icon-svg-relative-3x{--sky-icon-svg-img-size: 3em}:host.sky-icon-svg-relative-4x{--sky-icon-svg-img-size: 4em}:host.sky-icon-svg-relative-5x{--sky-icon-svg-img-size: 5em}:host.sky-icon-svg-xxxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxs, var(--sky-size-icon-xxxs) )}:host.sky-icon-svg-xxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxs, var(--sky-size-icon-xxs) )}:host.sky-icon-svg-xs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xs, var(--sky-size-icon-xs) )}:host.sky-icon-svg-m{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-m, var(--sky-size-icon-m) )}:host.sky-icon-svg-l{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-l, var(--sky-size-icon-l) )}:host.sky-icon-svg-xl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xl, var(--sky-size-icon-xl) )}:host.sky-icon-svg-xxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxl, var(--sky-size-icon-xxl) )}:host.sky-icon-svg-xxxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxl, var(--sky-size-icon-xxxl) )}.sky-icon-svg-container{height:var(--sky-icon-svg-img-size);width:var(--sky-icon-svg-img-size);display:inline-flex;align-items:center}.sky-icon-svg-container:before{content:\\\"\\\\200b\\\"}.sky-icon-svg-container svg{height:100%;width:100%}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconSvgComponent, decorators: [{\n type: Component,\n args: [{ selector: 'sky-icon-svg', host: {\n '[class]': 'relativeSize() ? \"sky-icon-svg-relative-\" + relativeSize() : \"sky-icon-svg-\" + iconSize()',\n }, hostDirectives: [SkyThemeComponentClassDirective], template: \"<div class=\\\"sky-icon-svg-container\\\">\\n <svg\\n aria-hidden=\\\"true\\\"\\n class=\\\"sky-icon-svg-img\\\"\\n [attr.data-sky-icon]=\\\"iconName()\\\"\\n [attr.data-sky-icon-variant]=\\\"iconVariant()\\\"\\n >\\n <use [attr.xlink:href]=\\\"iconHref()\\\" />\\n </svg>\\n</div>\\n\", styles: [\"@charset \\\"UTF-8\\\";:host.sky-cmp-theme-default{--sky-override-sky-icon-svg-size-xxxs: 4px;--sky-override-sky-icon-svg-size-xxs: 8px;--sky-override-sky-icon-svg-size-xs: 12px;--sky-override-sky-icon-svg-size-s: 16px;--sky-override-sky-icon-svg-size-m: 20px;--sky-override-sky-icon-svg-size-l: 24px;--sky-override-sky-icon-svg-size-xl: 32px;--sky-override-sky-icon-svg-size-xxl: 40px;--sky-override-sky-icon-svg-size-xxxl: 48px}:host{display:inline-flex;--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-s, var(--sky-size-icon-s) )}:host.sky-icon-svg-relative-md{--sky-icon-svg-img-size: 1em}:host.sky-icon-svg-relative-lg .sky-icon-svg-img{transform:scale(1.33)}:host.sky-icon-svg-relative-lg .sky-icon-svg-container{margin:0 .166em}:host.sky-icon-svg-relative-2x{--sky-icon-svg-img-size: 2em}:host.sky-icon-svg-relative-3x{--sky-icon-svg-img-size: 3em}:host.sky-icon-svg-relative-4x{--sky-icon-svg-img-size: 4em}:host.sky-icon-svg-relative-5x{--sky-icon-svg-img-size: 5em}:host.sky-icon-svg-xxxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxs, var(--sky-size-icon-xxxs) )}:host.sky-icon-svg-xxs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxs, var(--sky-size-icon-xxs) )}:host.sky-icon-svg-xs{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xs, var(--sky-size-icon-xs) )}:host.sky-icon-svg-m{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-m, var(--sky-size-icon-m) )}:host.sky-icon-svg-l{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-l, var(--sky-size-icon-l) )}:host.sky-icon-svg-xl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xl, var(--sky-size-icon-xl) )}:host.sky-icon-svg-xxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxl, var(--sky-size-icon-xxl) )}:host.sky-icon-svg-xxxl{--sky-icon-svg-img-size: var( --sky-override-sky-icon-svg-size-xxxl, var(--sky-size-icon-xxxl) )}.sky-icon-svg-container{height:var(--sky-icon-svg-img-size);width:var(--sky-icon-svg-img-size);display:inline-flex;align-items:center}.sky-icon-svg-container:before{content:\\\"\\\\200b\\\"}.sky-icon-svg-container svg{height:100%;width:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1zdmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ljb24vc3JjL2xpYi9tb2R1bGVzL2ljb24vaWNvbi1zdmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2ljb24vc3JjL2xpYi9tb2R1bGVzL2ljb24vaWNvbi1zdmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3BFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUUvRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFakQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7OztBQUl4RSxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUM7QUFFckIsTUFBTSxjQUFjLEdBQUcsSUFBSSxHQUFHLENBQUM7SUFDN0IsQ0FBQyxJQUFJLEVBQUUsU0FBUyxDQUFDO0lBQ2pCLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQztJQUN0QyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUM7SUFDOUIsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLG1CQUFtQixDQUFDO0lBQzlCLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztJQUM5QixDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUM7Q0FDL0IsQ0FBQyxDQUFDO0FBRUgsTUFBTSxXQUFXLEdBQUcsSUFBSSxHQUFHLENBQUM7SUFDMUIsQ0FBQyxHQUFHLEVBQUUsU0FBUyxDQUFDO0lBQ2hCLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNULENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQztJQUNULENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQztDQUNYLENBQUMsQ0FBQztBQUVILFNBQVMsV0FBVyxDQUFDLEtBQThCO0lBQ2pELE9BQU8sS0FBSyxJQUFJLEdBQUcsQ0FBQztBQUN0QixDQUFDO0FBRUQ7O0dBRUc7QUFXSCxNQUFNLE9BQU8sbUJBQW1CO0lBVmhDO1FBV1csaUJBQVksR0FBRyxNQUFNLENBQUMseUJBQXlCLENBQUMsQ0FBQztRQUUxQyxhQUFRLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ3BDLGFBQVEsR0FBRyxLQUFLLENBQXVDLEdBQUcsRUFBRTtZQUMxRSxTQUFTLEVBQUUsV0FBVztTQUN2QixDQUFDLENBQUM7UUFDYSxpQkFBWSxHQUFHLEtBQUssRUFBc0IsQ0FBQztRQUMzQyxnQkFBVyxHQUFHLEtBQUssRUFBc0IsQ0FBQztRQUVqRCxjQUFTLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUNqQyxPQUFPO2dCQUNMLEdBQUcsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNwQixZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRTtnQkFDakMsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ3pCLE9BQU8sRUFBRSxJQUFJLENBQUMsV0FBVyxFQUFFO2FBQzVCLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztRQUVnQixhQUFRLEdBQUcsUUFBUSxDQUNwQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FDL0IsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDakIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQzNCLElBQUksQ0FBQyxHQUFHLEVBQ1IsSUFBSSxDQUFDLFlBQVksS0FBSyxTQUFTO1lBQzdCLENBQUMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUM7WUFDdkMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUNsQyxJQUFJLENBQUMsT0FBTyxDQUNiLENBQ0YsRUFDRCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQ3pCLENBQ0YsQ0FBQztLQUNIO0lBaENVLFlBQVksQ0FBcUM7SUFTakQsU0FBUyxDQU9mOzhHQWpCUSxtQkFBbUI7a0dBQW5CLG1CQUFtQixxekJDN0NoQyw4UUFVQTs7MkZEbUNhLG1CQUFtQjtrQkFWL0IsU0FBUzsrQkFDRSxjQUFjLFFBR2xCO3dCQUNKLFNBQVMsRUFDUCwyRkFBMkY7cUJBQzlGLGtCQUNlLENBQUMsK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBpbmplY3QsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b09ic2VydmFibGUsIHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgU2t5VGhlbWVDb21wb25lbnRDbGFzc0RpcmVjdGl2ZSB9IGZyb20gJ0Bza3l1eC90aGVtZSc7XG5cbmltcG9ydCB7IGNhdGNoRXJyb3IsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5SWNvblN2Z1Jlc29sdmVyU2VydmljZSB9IGZyb20gJy4vaWNvbi1zdmctcmVzb2x2ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBTa3lJY29uU2l6ZSB9IGZyb20gJy4vdHlwZXMvaWNvbi1zaXplJztcbmltcG9ydCB7IFNreUljb25WYXJpYW50VHlwZSB9IGZyb20gJy4vdHlwZXMvaWNvbi12YXJpYW50LXR5cGUnO1xuXG5jb25zdCBTSVpFX0JBU0UgPSAxNjtcblxuY29uc3QgUkVMQVRJVkVfU0laRVMgPSBuZXcgTWFwKFtcbiAgWydtZCcsIFNJWkVfQkFTRV0sXG4gIFsnbGcnLCAyMS4zMzMgLyogU0laRV9CQVNFICogKDQvMykgKi9dLFxuICBbJzJ4JywgMzIgLyogU0laRV9CQVNFICogMiAqL10sXG4gIFsnM3gnLCA0OCAvKiBTSVpFX0JBU0UgKiAzICovXSxcbiAgWyc0eCcsIDY0IC8qIFNJWkVfQkFTRSAqIDQgKi9dLFxuICBbJzV4JywgODAgLyogU0laRV9CQVNFICogNSAqL10sXG5dKTtcblxuY29uc3QgRklYRURfU0laRVMgPSBuZXcgTWFwKFtcbiAgWydzJywgU0laRV9CQVNFXSxcbiAgWydtJywgMjBdLFxuICBbJ2wnLCAyNF0sXG4gIFsneGwnLCAzMl0sXG5dKTtcblxuZnVuY3Rpb24gZGVmYXVsdFNpemUodmFsdWU6IFNreUljb25TaXplIHwgdW5kZWZpbmVkKTogU2t5SWNvblNpemUge1xuICByZXR1cm4gdmFsdWUgPz8gJ20nO1xufVxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktaWNvbi1zdmcnLFxuICB0ZW1wbGF0ZVVybDogJy4vaWNvbi1zdmcuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLXN2Zy5jb21wb25lbnQuc2NzcyddLFxuICBob3N0OiB7XG4gICAgJ1tjbGFzc10nOlxuICAgICAgJ3JlbGF0aXZlU2l6ZSgpID8gXCJza3ktaWNvbi1zdmctcmVsYXRpdmUtXCIgKyByZWxhdGl2ZVNpemUoKSA6IFwic2t5LWljb24tc3ZnLVwiICsgaWNvblNpemUoKScsXG4gIH0sXG4gIGhvc3REaXJlY3RpdmVzOiBbU2t5VGhlbWVDb21wb25lbnRDbGFzc0RpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUljb25TdmdDb21wb25lbnQge1xuICByZWFkb25seSAjcmVzb2x2ZXJTdmMgPSBpbmplY3QoU2t5SWNvblN2Z1Jlc29sdmVyU2VydmljZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGljb25OYW1lID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xuICBwdWJsaWMgcmVhZG9ubHkgaWNvblNpemUgPSBpbnB1dDxTa3lJY29uU2l6ZSwgU2t5SWNvblNpemUgfCB1bmRlZmluZWQ+KCdtJywge1xuICAgIHRyYW5zZm9ybTogZGVmYXVsdFNpemUsXG4gIH0pO1xuICBwdWJsaWMgcmVhZG9ubHkgcmVsYXRpdmVTaXplID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xuICBwdWJsaWMgcmVhZG9ubHkgaWNvblZhcmlhbnQgPSBpbnB1dDxTa3lJY29uVmFyaWFudFR5cGU+KCk7XG5cbiAgcmVhZG9ubHkgI2ljb25JbmZvID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIHJldHVybiB7XG4gICAgICBzcmM6IHRoaXMuaWNvbk5hbWUoKSxcbiAgICAgIHJlbGF0aXZlU2l6ZTogdGhpcy5yZWxhdGl2ZVNpemUoKSxcbiAgICAgIGljb25TaXplOiB0aGlzLmljb25TaXplKCksXG4gICAgICB2YXJpYW50OiB0aGlzLmljb25WYXJpYW50KCksXG4gICAgfTtcbiAgfSk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGljb25IcmVmID0gdG9TaWduYWwoXG4gICAgdG9PYnNlcnZhYmxlKHRoaXMuI2ljb25JbmZvKS5waXBlKFxuICAgICAgc3dpdGNoTWFwKChpbmZvKSA9PlxuICAgICAgICB0aGlzLiNyZXNvbHZlclN2Yy5yZXNvbHZlSHJlZihcbiAgICAgICAgICBpbmZvLnNyYyxcbiAgICAgICAgICBpbmZvLnJlbGF0aXZlU2l6ZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgICAgICA/IFJFTEFUSVZFX1NJWkVTLmdldChpbmZvLnJlbGF0aXZlU2l6ZSlcbiAgICAgICAgICAgIDogRklYRURfU0laRVMuZ2V0KGluZm8uaWNvblNpemUpLFxuICAgICAgICAgIGluZm8udmFyaWFudCxcbiAgICAgICAgKSxcbiAgICAgICksXG4gICAgICBjYXRjaEVycm9yKCgpID0+IG9mKCcnKSksXG4gICAgKSxcbiAgKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJza3ktaWNvbi1zdmctY29udGFpbmVyXCI+XG4gIDxzdmdcbiAgICBhcmlhLWhpZGRlbj1cInRydWVcIlxuICAgIGNsYXNzPVwic2t5LWljb24tc3ZnLWltZ1wiXG4gICAgW2F0dHIuZGF0YS1za3ktaWNvbl09XCJpY29uTmFtZSgpXCJcbiAgICBbYXR0ci5kYXRhLXNreS1pY29uLXZhcmlhbnRdPVwiaWNvblZhcmlhbnQoKVwiXG4gID5cbiAgICA8dXNlIFthdHRyLnhsaW5rOmhyZWZdPVwiaWNvbkhyZWYoKVwiIC8+XG4gIDwvc3ZnPlxuPC9kaXY+XG4iXX0=","import { ChangeDetectionStrategy, Component, Input, inject, input, } from '@angular/core';\nimport { SkyThemeService } from '@skyux/theme';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nimport * as i2 from \"./icon-svg.component\";\nimport * as i3 from \"./icon-class-list.pipe\";\nexport class SkyIconComponent {\n constructor() {\n /**\n * The icon size. Size is independent of font size.\n * @default \"m\"\n */\n this.iconSize = input();\n this.themeSvc = inject(SkyThemeService, { optional: true });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.5\", type: SkyIconComponent, isStandalone: false, selector: \"sky-icon\", inputs: { icon: { classPropertyName: \"icon\", publicName: \"icon\", isSignal: false, isRequired: false, transformFunction: null }, iconName: { classPropertyName: \"iconName\", publicName: \"iconName\", isSignal: false, isRequired: false, transformFunction: null }, iconType: { classPropertyName: \"iconType\", publicName: \"iconType\", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: \"size\", publicName: \"size\", isSignal: false, isRequired: false, transformFunction: null }, fixedWidth: { classPropertyName: \"fixedWidth\", publicName: \"fixedWidth\", isSignal: false, isRequired: false, transformFunction: null }, variant: { classPropertyName: \"variant\", publicName: \"variant\", isSignal: false, isRequired: false, transformFunction: null }, iconSize: { classPropertyName: \"iconSize\", publicName: \"iconSize\", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: \"@if (iconName) {\\n <sky-icon-svg\\n [iconName]=\\\"iconName\\\"\\n [relativeSize]=\\\"size\\\"\\n [iconSize]=\\\"iconSize()\\\"\\n [iconVariant]=\\\"variant\\\"\\n [attr.data-sky-icon]=\\\"iconName\\\"\\n [attr.data-sky-icon-variant]=\\\"variant\\\"\\n />\\n} @else if (icon) {\\n <i\\n aria-hidden=\\\"true\\\"\\n class=\\\"sky-icon\\\"\\n [attr.data-sky-icon]=\\\"icon\\\"\\n [attr.data-sky-icon-type]=\\\"iconType\\\"\\n [attr.data-sky-icon-variant]=\\\"variant\\\"\\n [ngClass]=\\\"\\n icon\\n | skyIconClassList\\n : (themeSvc?.settingsChange | async)?.currentSettings\\n : size\\n : fixedWidth\\n : variant\\n \\\"\\n ></i>\\n}\\n\", styles: [\":host{display:inline-flex}i{display:inherit}\\n\"], dependencies: [{ kind: \"directive\", type: i1.NgClass, selector: \"[ngClass]\", inputs: [\"class\", \"ngClass\"] }, { kind: \"component\", type: i2.SkyIconSvgComponent, selector: \"sky-icon-svg\", inputs: [\"iconName\", \"iconSize\", \"relativeSize\", \"iconVariant\"] }, { kind: \"pipe\", type: i1.AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: i3.SkyIconClassListPipe, name: \"skyIconClassList\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconComponent, decorators: [{\n type: Component,\n args: [{ selector: 'sky-icon', changeDetection: ChangeDetectionStrategy.OnPush, standalone: false, template: \"@if (iconName) {\\n <sky-icon-svg\\n [iconName]=\\\"iconName\\\"\\n [relativeSize]=\\\"size\\\"\\n [iconSize]=\\\"iconSize()\\\"\\n [iconVariant]=\\\"variant\\\"\\n [attr.data-sky-icon]=\\\"iconName\\\"\\n [attr.data-sky-icon-variant]=\\\"variant\\\"\\n />\\n} @else if (icon) {\\n <i\\n aria-hidden=\\\"true\\\"\\n class=\\\"sky-icon\\\"\\n [attr.data-sky-icon]=\\\"icon\\\"\\n [attr.data-sky-icon-type]=\\\"iconType\\\"\\n [attr.data-sky-icon-variant]=\\\"variant\\\"\\n [ngClass]=\\\"\\n icon\\n | skyIconClassList\\n : (themeSvc?.settingsChange | async)?.currentSettings\\n : size\\n : fixedWidth\\n : variant\\n \\\"\\n ></i>\\n}\\n\", styles: [\":host{display:inline-flex}i{display:inherit}\\n\"] }]\n }], propDecorators: { icon: [{\n type: Input\n }], iconName: [{\n type: Input\n }], iconType: [{\n type: Input\n }], size: [{\n type: Input\n }], fixedWidth: [{\n type: Input\n }], variant: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaWNvbi9zcmMvbGliL21vZHVsZXMvaWNvbi9pY29uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pY29uL3NyYy9saWIvbW9kdWxlcy9pY29uL2ljb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixLQUFLLEdBQ04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUFhL0MsTUFBTSxPQUFPLGdCQUFnQjtJQVA3QjtRQTJERTs7O1dBR0c7UUFDYSxhQUFRLEdBQUcsS0FBSyxFQUEyQixDQUFDO1FBRWxELGFBQVEsR0FBRyxNQUFNLENBQUMsZUFBZSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7S0FDbEU7OEdBM0RZLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHk4QkNwQjdCLGdwQkEwQkE7OzJGRE5hLGdCQUFnQjtrQkFQNUIsU0FBUzsrQkFDRSxVQUFVLG1CQUdILHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsS0FBSzs4QkFVVixJQUFJO3NCQURWLEtBQUs7Z0JBT0MsUUFBUTtzQkFEZCxLQUFLO2dCQVdDLFFBQVE7c0JBRGQsS0FBSztnQkFTQyxJQUFJO3NCQURWLEtBQUs7Z0JBWUMsVUFBVTtzQkFEaEIsS0FBSztnQkFRQyxPQUFPO3NCQURiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgaW5qZWN0LFxuICBpbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTa3lUaGVtZVNlcnZpY2UgfSBmcm9tICdAc2t5dXgvdGhlbWUnO1xuXG5pbXBvcnQgeyBTa3lJY29uU2l6ZSB9IGZyb20gJy4vdHlwZXMvaWNvbi1zaXplJztcbmltcG9ydCB7IFNreUljb25UeXBlIH0gZnJvbSAnLi90eXBlcy9pY29uLXR5cGUnO1xuaW1wb3J0IHsgU2t5SWNvblZhcmlhbnRUeXBlIH0gZnJvbSAnLi90eXBlcy9pY29uLXZhcmlhbnQtdHlwZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1pY29uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ljb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5SWNvbkNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZlxuICAgKiBbdGhlIEZvbnQgQXdlc29tZSA0LjcgaWNvbl0oaHR0cHM6Ly9mb250YXdlc29tZS5jb20vdjQuNy9pY29ucy8pIG9yIHRoZSBTS1kgVVggaWNvbiB0b1xuICAgKiBkaXNwbGF5LiBXaGVuIHNwZWNpZnlpbmcgYSBGb250IEF3ZXNvbWUgaWNvbiwgZG8gbm90IHByZWZpeCB0aGUgbmFtZSB3aXRoIGBmYS1gLlxuICAgKiBAZGVwcmVjYXRlZCBGb250IEF3ZXNvbWUgc3VwcG9ydCB3aWxsIGJlIHJlbW92ZWQgaW4gU0tZIFVYIDEzLiBVc2UgaWNvbk5hbWUgaW5zdGVhZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBCbGFja2JhdWQgU1ZHIGljb24gdG8gZGlzcGxheS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpY29uTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBpY29uIHRvIGRpc3BsYXkuIFNwZWNpZnlpbmcgYFwiZmFcImAgZGlzcGxheXMgYSBGb250IEF3ZXNvbWUgaWNvbixcbiAgICogd2hpbGUgc3BlY2lmeWluZyBgXCJza3l1eFwiYCBkaXNwbGF5cyBhbiBpY29uIGZyb20gdGhlIGN1c3RvbSBTS1kgVVggaWNvbiBmb250LiBOb3RlIHRoYXRcbiAgICogdGhlIGN1c3RvbSBTS1kgVVggaWNvbiBmb250IGlzIGN1cnJlbnRseSBpbiBiZXRhLlxuICAgKiBAZGVmYXVsdCBcImZhXCJcbiAgICogQGRlcHJlY2F0ZWQgVGhlIGljb24gY29tcG9uZW50IG5vdyBhdXRvbWF0aWNhbGx5IGluZmVycyB3aGljaCB0eXBlIG9mIGljb24gdG8gdXNlIGJhc2VkIG9uIHRoZSBjdXJyZW50IHRoZW1lLiBUaGlzIGlucHV0IHdpbGwgYmUgcmVtb3ZlZCBpbiBTS1kgVVggMTMuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgaWNvblR5cGU6IFNreUljb25UeXBlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgc2l6ZSBvZiB0aGUgaWNvbiB1c2luZ1xuICAgKiBbRm9udCBBd2Vzb21lIHNpemVzXShodHRwczovL2ZvbnRhd2Vzb21lLmNvbS92NC9leGFtcGxlcy8pLiBTaXplIGlzIHJlbGF0aXZlIHRvIHRoZSBmb250IHNpemUuIERvIG5vdCBwcmVmaXggdGhlIHNpemUgd2l0aCBgZmEtYC5cbiAgICogQGRlcHJlY2F0ZWQgYHNpemVgIGlzIGRlcHJlY2F0ZWQgYW5kIHdpbGwgYmUgcmVtb3ZlZCBpbiBTS1kgVVggMTMuIFVzZSBgaWNvblNpemVgIHRvIHNldCBhIHNwZWNpZmljIHNpemUgdGhhdCBkb2VzIG5vdCBzY2FsZSB3aXRoIGZvbnQgc2l6ZSBpbnN0ZWFkLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHNpemU6IHN0cmluZyB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGhlciB0byBlbmZvcmNlIGEgZml4ZWQgd2lkdGggYmFzZWQgb24gaWNvbiBzaXplLiBCeSBkZWZhdWx0LCBpY29ucyBvZiBhIHNwZWNpZmllZCBzaXplIHNoYXJlIGFcbiAgICogY29uc2lzdGVudCBoZWlnaHQsIGJ1dCB0aGVpciB3aWR0aHMgdmFyeSBhbmQgY2FuIHRocm93IG9mZiB2ZXJ0aWNhbCBhbGlnbm1lbnQuIFVzZSBhIGZpeGVkIHdpZHRoIHdoZW5cbiAgICogeW91IHN0YWNrIGljb25zIHZlcnRpY2FsbHksIHN1Y2ggYXMgaW4gbGlzdHMuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqIEBkZXByZWNhdGVkIGBmaXhlZFdpZHRoYCBpcyBhIEZvbnQgQXdlc29tZSBpbnB1dCBhbmQgd2lsbCBiZSByZW1vdmVkIHdoZW4gRm9udCBBd2Vzb21lIHN1cHBvcnQgaXMgZHJvcHBlZCBpbiBTS1kgVVggMTMuXG4gICAqIEFsbCBpY29ucyB1c2luZyBpY29uTmFtZSBhcmUgYXV0b21hdGljYWxseSBmaXhlZCB3aWR0aC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBmaXhlZFdpZHRoOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBUaGUgaWNvbiB2YXJpYW50LiBJZiB0aGUgdmFyaWFudCBkb2Vzbid0IGV4aXN0IGZvciB0aGVcbiAgICogc3BlY2lmaWVkIGljb24sIHRoZSBub3JtYWwgaWNvbiBpcyBkaXNwbGF5ZWQuIFRoaXMgcHJvcGVydHkgb25seSBhcHBsaWVzIHdoZW4gdXNpbmcgU0tZIFVYIGljb25zLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHZhcmlhbnQ6IFNreUljb25WYXJpYW50VHlwZSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVGhlIGljb24gc2l6ZS4gU2l6ZSBpcyBpbmRlcGVuZGVudCBvZiBmb250IHNpemUuXG4gICAqIEBkZWZhdWx0IFwibVwiXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaWNvblNpemUgPSBpbnB1dDxTa3lJY29uU2l6ZSB8IHVuZGVmaW5lZD4oKTtcblxuICBwcm90ZWN0ZWQgdGhlbWVTdmMgPSBpbmplY3QoU2t5VGhlbWVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pO1xufVxuIiwiQGlmIChpY29uTmFtZSkge1xuICA8c2t5LWljb24tc3ZnXG4gICAgW2ljb25OYW1lXT1cImljb25OYW1lXCJcbiAgICBbcmVsYXRpdmVTaXplXT1cInNpemVcIlxuICAgIFtpY29uU2l6ZV09XCJpY29uU2l6ZSgpXCJcbiAgICBbaWNvblZhcmlhbnRdPVwidmFyaWFudFwiXG4gICAgW2F0dHIuZGF0YS1za3ktaWNvbl09XCJpY29uTmFtZVwiXG4gICAgW2F0dHIuZGF0YS1za3ktaWNvbi12YXJpYW50XT1cInZhcmlhbnRcIlxuICAvPlxufSBAZWxzZSBpZiAoaWNvbikge1xuICA8aVxuICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgY2xhc3M9XCJza3ktaWNvblwiXG4gICAgW2F0dHIuZGF0YS1za3ktaWNvbl09XCJpY29uXCJcbiAgICBbYXR0ci5kYXRhLXNreS1pY29uLXR5cGVdPVwiaWNvblR5cGVcIlxuICAgIFthdHRyLmRhdGEtc2t5LWljb24tdmFyaWFudF09XCJ2YXJpYW50XCJcbiAgICBbbmdDbGFzc109XCJcbiAgICAgIGljb25cbiAgICAgICAgfCBza3lJY29uQ2xhc3NMaXN0XG4gICAgICAgICAgOiAodGhlbWVTdmM/LnNldHRpbmdzQ2hhbmdlIHwgYXN5bmMpPy5jdXJyZW50U2V0dGluZ3NcbiAgICAgICAgICA6IHNpemVcbiAgICAgICAgICA6IGZpeGVkV2lkdGhcbiAgICAgICAgICA6IHZhcmlhbnRcbiAgICBcIlxuICA+PC9pPlxufVxuIl19","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { SkyIconClassListPipe } from './icon-class-list.pipe';\nimport { SkyIconSvgComponent } from './icon-svg.component';\nimport { SkyIconComponent } from './icon.component';\nimport * as i0 from \"@angular/core\";\nexport class SkyIconModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconModule, declarations: [SkyIconClassListPipe, SkyIconComponent], imports: [CommonModule, SkyIconSvgComponent], exports: [SkyIconComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconModule, imports: [CommonModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.5\", ngImport: i0, type: SkyIconModule, decorators: [{\n type: NgModule,\n args: [{\n declarations: [SkyIconClassListPipe, SkyIconComponent],\n imports: [CommonModule, SkyIconSvgComponent],\n exports: [SkyIconComponent],\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvaWNvbi9zcmMvbGliL21vZHVsZXMvaWNvbi9pY29uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OEdBQWIsYUFBYTsrR0FBYixhQUFhLGlCQUpULG9CQUFvQixFQUFFLGdCQUFnQixhQUMzQyxZQUFZLEVBQUUsbUJBQW1CLGFBQ2pDLGdCQUFnQjsrR0FFZixhQUFhLFlBSGQsWUFBWTs7MkZBR1gsYUFBYTtrQkFMekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsRUFBRSxnQkFBZ0IsQ0FBQztvQkFDdEQsT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLG1CQUFtQixDQUFDO29CQUM1QyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5SWNvbkNsYXNzTGlzdFBpcGUgfSBmcm9tICcuL2ljb24tY2xhc3MtbGlzdC5waXBlJztcbmltcG9ydCB7IFNreUljb25TdmdDb21wb25lbnQgfSBmcm9tICcuL2ljb24tc3ZnLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTa3lJY29uQ29tcG9uZW50IH0gZnJvbSAnLi9pY29uLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1NreUljb25DbGFzc0xpc3RQaXBlLCBTa3lJY29uQ29tcG9uZW50XSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgU2t5SWNvblN2Z0NvbXBvbmVudF0sXG4gIGV4cG9ydHM6IFtTa3lJY29uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5SWNvbk1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtaWNvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9pY29uL3NyYy9za3l1eC1pY29uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1","i2.SkyIconSvgComponent","i3.SkyIconClassListPipe"],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,6 +1,106 @@
1
- export { SkyIconModule } from './lib/modules/icon/icon.module';
2
- export { SkyIconSize } from './lib/modules/icon/types/icon-size';
3
- export { SkyIconType } from './lib/modules/icon/types/icon-type';
4
- export { SkyIconVariantType } from './lib/modules/icon/types/icon-variant-type';
5
- export { SkyIconSvgResolverService } from './lib/modules/icon/icon-svg-resolver.service';
6
- export { SkyIconComponent as λ1 } from './lib/modules/icon/icon.component';
1
+ import * as i0 from '@angular/core';
2
+ import { PipeTransform } from '@angular/core';
3
+ import * as i1 from '@skyux/theme';
4
+ import { SkyThemeSettings, SkyThemeService } from '@skyux/theme';
5
+ import * as i3 from '@angular/common';
6
+
7
+ type SkyIconVariantType = 'line' | 'solid';
8
+
9
+ /**
10
+ * @internal
11
+ */
12
+ declare class SkyIconClassListPipe implements PipeTransform {
13
+ #private;
14
+ transform(icon: string, themeSettings?: SkyThemeSettings, size?: string, fixedWidth?: boolean, variant?: SkyIconVariantType): string[];
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconClassListPipe, never>;
16
+ static ɵpipe: i0.ɵɵPipeDeclaration<SkyIconClassListPipe, "skyIconClassList", false>;
17
+ }
18
+
19
+ type SkyIconSize = 'xxxs' | 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl';
20
+
21
+ /**
22
+ * @deprecated
23
+ */
24
+ type SkyIconType = 'fa' | 'skyux';
25
+
26
+ declare class SkyIconComponent {
27
+ /**
28
+ * The name of
29
+ * [the Font Awesome 4.7 icon](https://fontawesome.com/v4.7/icons/) or the SKY UX icon to
30
+ * display. When specifying a Font Awesome icon, do not prefix the name with `fa-`.
31
+ * @deprecated Font Awesome support will be removed in SKY UX 13. Use iconName instead.
32
+ */
33
+ icon: string | undefined;
34
+ /**
35
+ * The name of the Blackbaud SVG icon to display.
36
+ */
37
+ iconName: string | undefined;
38
+ /**
39
+ * The type of icon to display. Specifying `"fa"` displays a Font Awesome icon,
40
+ * while specifying `"skyux"` displays an icon from the custom SKY UX icon font. Note that
41
+ * the custom SKY UX icon font is currently in beta.
42
+ * @default "fa"
43
+ * @deprecated The icon component now automatically infers which type of icon to use based on the current theme. This input will be removed in SKY UX 13.
44
+ */
45
+ iconType: SkyIconType | undefined;
46
+ /**
47
+ * The size of the icon using
48
+ * [Font Awesome sizes](https://fontawesome.com/v4/examples/). Size is relative to the font size. Do not prefix the size with `fa-`.
49
+ * @deprecated `size` is deprecated and will be removed in SKY UX 13. Use `iconSize` to set a specific size that does not scale with font size instead.
50
+ */
51
+ size: string | undefined;
52
+ /**
53
+ * Whether to enforce a fixed width based on icon size. By default, icons of a specified size share a
54
+ * consistent height, but their widths vary and can throw off vertical alignment. Use a fixed width when
55
+ * you stack icons vertically, such as in lists.
56
+ * @default false
57
+ * @deprecated `fixedWidth` is a Font Awesome input and will be removed when Font Awesome support is dropped in SKY UX 13.
58
+ * All icons using iconName are automatically fixed width.
59
+ */
60
+ fixedWidth: boolean | undefined;
61
+ /**
62
+ * The icon variant. If the variant doesn't exist for the
63
+ * specified icon, the normal icon is displayed. This property only applies when using SKY UX icons.
64
+ */
65
+ variant: SkyIconVariantType | undefined;
66
+ /**
67
+ * The icon size. Size is independent of font size.
68
+ * @default "m"
69
+ */
70
+ readonly iconSize: i0.InputSignal<SkyIconSize | undefined>;
71
+ protected themeSvc: SkyThemeService | null;
72
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconComponent, never>;
73
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyIconComponent, "sky-icon", never, { "icon": { "alias": "icon"; "required": false; }; "iconName": { "alias": "iconName"; "required": false; }; "iconType": { "alias": "iconType"; "required": false; }; "size": { "alias": "size"; "required": false; }; "fixedWidth": { "alias": "fixedWidth"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
74
+ }
75
+
76
+ /**
77
+ * @internal
78
+ */
79
+ declare class SkyIconSvgComponent {
80
+ #private;
81
+ readonly iconName: i0.InputSignal<string>;
82
+ readonly iconSize: i0.InputSignalWithTransform<SkyIconSize, SkyIconSize | undefined>;
83
+ readonly relativeSize: i0.InputSignal<string | undefined>;
84
+ readonly iconVariant: i0.InputSignal<SkyIconVariantType | undefined>;
85
+ protected readonly iconHref: i0.Signal<string | undefined>;
86
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconSvgComponent, never>;
87
+ static ɵcmp: i0.ɵɵComponentDeclaration<SkyIconSvgComponent, "sky-icon-svg", never, { "iconName": { "alias": "iconName"; "required": true; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "relativeSize": { "alias": "relativeSize"; "required": false; "isSignal": true; }; "iconVariant": { "alias": "iconVariant"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.SkyThemeComponentClassDirective; inputs: {}; outputs: {}; }]>;
88
+ }
89
+
90
+ declare class SkyIconModule {
91
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconModule, never>;
92
+ static ɵmod: i0.ɵɵNgModuleDeclaration<SkyIconModule, [typeof SkyIconClassListPipe, typeof SkyIconComponent], [typeof i3.CommonModule, typeof SkyIconSvgComponent], [typeof SkyIconComponent]>;
93
+ static ɵinj: i0.ɵɵInjectorDeclaration<SkyIconModule>;
94
+ }
95
+
96
+ /**
97
+ * @internal
98
+ */
99
+ declare class SkyIconSvgResolverService {
100
+ resolveHref(name: string, pixelSize?: number, variant?: SkyIconVariantType): Promise<string>;
101
+ static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconSvgResolverService, never>;
102
+ static ɵprov: i0.ɵɵInjectableDeclaration<SkyIconSvgResolverService>;
103
+ }
104
+
105
+ export { SkyIconModule, SkyIconSvgResolverService, SkyIconComponent as λ1 };
106
+ export type { SkyIconSize, SkyIconType, SkyIconVariantType };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skyux/icon",
3
- "version": "12.22.0",
3
+ "version": "13.0.0-alpha.0",
4
4
  "author": "Blackbaud, Inc.",
5
5
  "keywords": [
6
6
  "blackbaud",
@@ -16,11 +16,11 @@
16
16
  },
17
17
  "homepage": "https://github.com/blackbaud/skyux#readme",
18
18
  "peerDependencies": {
19
- "@angular/cdk": "^19.2.10",
20
- "@angular/common": "^19.2.7",
21
- "@angular/core": "^19.2.7",
22
- "@skyux/core": "12.22.0",
23
- "@skyux/theme": "12.22.0"
19
+ "@angular/cdk": "^20.0.4",
20
+ "@angular/common": "^20.0.5",
21
+ "@angular/core": "^20.0.5",
22
+ "@skyux/core": "13.0.0-alpha.0",
23
+ "@skyux/theme": "13.0.0-alpha.0"
24
24
  },
25
25
  "dependencies": {
26
26
  "tslib": "^2.8.1"
@@ -1,5 +1,49 @@
1
+ import { HarnessPredicate } from '@angular/cdk/testing';
2
+ import { SkyHarnessFilters, SkyComponentHarness } from '@skyux/core/testing';
3
+
1
4
  /**
2
- * Generated bundle index. Do not edit.
5
+ * A set of criteria that can be used to filter a list of SkyIconHarness instances.
3
6
  */
4
- /// <amd-module name="@skyux/icon/testing" />
5
- export * from './public-api';
7
+ interface SkyIconHarnessFilters extends SkyHarnessFilters {
8
+ }
9
+
10
+ /**
11
+ * Harness for interacting with an icon component in tests.
12
+ */
13
+ declare class SkyIconHarness extends SkyComponentHarness {
14
+ #private;
15
+ /**
16
+ * @internal
17
+ */
18
+ static hostSelector: string;
19
+ /**
20
+ * Gets a `HarnessPredicate` that can be used to search for a
21
+ * `SkyIconHarness` that meets certain criteria.
22
+ */
23
+ static with(filters: SkyIconHarnessFilters): HarnessPredicate<SkyIconHarness>;
24
+ /**
25
+ * Gets the icon name.
26
+ */
27
+ getIconName(): Promise<string | undefined>;
28
+ /**
29
+ * Gets the icon size.
30
+ */
31
+ getIconSize(): Promise<string | undefined>;
32
+ /**
33
+ * Gets the icon type.
34
+ * @deprecated The `iconType` input is no longer used. This method will be removed in SKY UX 13.
35
+ */
36
+ getIconType(): Promise<string>;
37
+ /**
38
+ * Gets if the icon is a variant.
39
+ */
40
+ getVariant(): Promise<string | undefined>;
41
+ /**
42
+ * Whether the icon has fixed width.
43
+ * @deprecated Font Awesome icons are deprecated, and all icons are now fixed width. This method will be removed in SKY UX 13.
44
+ */
45
+ isFixedWidth(): Promise<boolean>;
46
+ }
47
+
48
+ export { SkyIconHarness };
49
+ export type { SkyIconHarnessFilters };
@@ -1,13 +0,0 @@
1
- import { PipeTransform } from '@angular/core';
2
- import { SkyThemeSettings } from '@skyux/theme';
3
- import { SkyIconVariantType } from './types/icon-variant-type';
4
- import * as i0 from "@angular/core";
5
- /**
6
- * @internal
7
- */
8
- export declare class SkyIconClassListPipe implements PipeTransform {
9
- #private;
10
- transform(icon: string, themeSettings?: SkyThemeSettings, size?: string, fixedWidth?: boolean, variant?: SkyIconVariantType): string[];
11
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconClassListPipe, never>;
12
- static ɵpipe: i0.ɵɵPipeDeclaration<SkyIconClassListPipe, "skyIconClassList", false>;
13
- }
@@ -1,14 +0,0 @@
1
- import { SkyThemeSettings } from '@skyux/theme';
2
- import { SkyIconResolved } from './types/icon-resolved';
3
- import type { SkyIconVariantType } from './types/icon-variant-type';
4
- import * as i0 from "@angular/core";
5
- /**
6
- * @internal
7
- */
8
- export declare class SkyIconResolverService {
9
- #private;
10
- constructor();
11
- resolveIcon(icon: string, variant?: SkyIconVariantType, themeSettings?: SkyThemeSettings): SkyIconResolved;
12
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconResolverService, never>;
13
- static ɵprov: i0.ɵɵInjectableDeclaration<SkyIconResolverService>;
14
- }
@@ -1,10 +0,0 @@
1
- import { SkyIconVariantType } from './types/icon-variant-type';
2
- import * as i0 from "@angular/core";
3
- /**
4
- * @internal
5
- */
6
- export declare class SkyIconSvgResolverService {
7
- resolveHref(name: string, pixelSize?: number, variant?: SkyIconVariantType): Promise<string>;
8
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconSvgResolverService, never>;
9
- static ɵprov: i0.ɵɵInjectableDeclaration<SkyIconSvgResolverService>;
10
- }
@@ -1,17 +0,0 @@
1
- import { SkyIconSize } from './types/icon-size';
2
- import { SkyIconVariantType } from './types/icon-variant-type';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@skyux/theme";
5
- /**
6
- * @internal
7
- */
8
- export declare class SkyIconSvgComponent {
9
- #private;
10
- readonly iconName: import("@angular/core").InputSignal<string>;
11
- readonly iconSize: import("@angular/core").InputSignalWithTransform<SkyIconSize, SkyIconSize | undefined>;
12
- readonly relativeSize: import("@angular/core").InputSignal<string | undefined>;
13
- readonly iconVariant: import("@angular/core").InputSignal<SkyIconVariantType | undefined>;
14
- protected readonly iconHref: import("@angular/core").Signal<string | undefined>;
15
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconSvgComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyIconSvgComponent, "sky-icon-svg", never, { "iconName": { "alias": "iconName"; "required": true; "isSignal": true; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; "relativeSize": { "alias": "relativeSize"; "required": false; "isSignal": true; }; "iconVariant": { "alias": "iconVariant"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.SkyThemeComponentClassDirective; inputs: {}; outputs: {}; }]>;
17
- }
@@ -1,54 +0,0 @@
1
- import { SkyThemeService } from '@skyux/theme';
2
- import { SkyIconSize } from './types/icon-size';
3
- import { SkyIconType } from './types/icon-type';
4
- import { SkyIconVariantType } from './types/icon-variant-type';
5
- import * as i0 from "@angular/core";
6
- export declare class SkyIconComponent {
7
- /**
8
- * The name of
9
- * [the Font Awesome 4.7 icon](https://fontawesome.com/v4.7/icons/) or the SKY UX icon to
10
- * display. When specifying a Font Awesome icon, do not prefix the name with `fa-`.
11
- * @deprecated Font Awesome support will be removed in SKY UX 13. Use iconName instead.
12
- */
13
- icon: string | undefined;
14
- /**
15
- * The name of the Blackbaud SVG icon to display.
16
- */
17
- iconName: string | undefined;
18
- /**
19
- * The type of icon to display. Specifying `"fa"` displays a Font Awesome icon,
20
- * while specifying `"skyux"` displays an icon from the custom SKY UX icon font. Note that
21
- * the custom SKY UX icon font is currently in beta.
22
- * @default "fa"
23
- * @deprecated The icon component now automatically infers which type of icon to use based on the current theme. This input will be removed in SKY UX 13.
24
- */
25
- iconType: SkyIconType | undefined;
26
- /**
27
- * The size of the icon using
28
- * [Font Awesome sizes](https://fontawesome.com/v4/examples/). Size is relative to the font size. Do not prefix the size with `fa-`.
29
- * @deprecated `size` is deprecated and will be removed in SKY UX 13. Use `iconSize` to set a specific size that does not scale with font size instead.
30
- */
31
- size: string | undefined;
32
- /**
33
- * Whether to enforce a fixed width based on icon size. By default, icons of a specified size share a
34
- * consistent height, but their widths vary and can throw off vertical alignment. Use a fixed width when
35
- * you stack icons vertically, such as in lists.
36
- * @default false
37
- * @deprecated `fixedWidth` is a Font Awesome input and will be removed when Font Awesome support is dropped in SKY UX 13.
38
- * All icons using iconName are automatically fixed width.
39
- */
40
- fixedWidth: boolean | undefined;
41
- /**
42
- * The icon variant. If the variant doesn't exist for the
43
- * specified icon, the normal icon is displayed. This property only applies when using SKY UX icons.
44
- */
45
- variant: SkyIconVariantType | undefined;
46
- /**
47
- * The icon size. Size is independent of font size.
48
- * @default "m"
49
- */
50
- readonly iconSize: import("@angular/core").InputSignal<SkyIconSize | undefined>;
51
- protected themeSvc: SkyThemeService | null;
52
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconComponent, never>;
53
- static ɵcmp: i0.ɵɵComponentDeclaration<SkyIconComponent, "sky-icon", never, { "icon": { "alias": "icon"; "required": false; }; "iconName": { "alias": "iconName"; "required": false; }; "iconType": { "alias": "iconType"; "required": false; }; "size": { "alias": "size"; "required": false; }; "fixedWidth": { "alias": "fixedWidth"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "iconSize": { "alias": "iconSize"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
54
- }
@@ -1,10 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./icon-class-list.pipe";
3
- import * as i2 from "./icon.component";
4
- import * as i3 from "@angular/common";
5
- import * as i4 from "./icon-svg.component";
6
- export declare class SkyIconModule {
7
- static ɵfac: i0.ɵɵFactoryDeclaration<SkyIconModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<SkyIconModule, [typeof i1.SkyIconClassListPipe, typeof i2.SkyIconComponent], [typeof i3.CommonModule, typeof i4.SkyIconSvgComponent], [typeof i2.SkyIconComponent]>;
9
- static ɵinj: i0.ɵɵInjectorDeclaration<SkyIconModule>;
10
- }
@@ -1,7 +0,0 @@
1
- /**
2
- * @internal
3
- */
4
- export interface SkyIconResolved {
5
- icon: string;
6
- iconType: string;
7
- }
@@ -1 +0,0 @@
1
- export type SkyIconSize = 'xxxs' | 'xxs' | 'xs' | 's' | 'm' | 'l' | 'xl' | 'xxl' | 'xxxl';
@@ -1,4 +0,0 @@
1
- /**
2
- * @deprecated
3
- */
4
- export type SkyIconType = 'fa' | 'skyux';
@@ -1 +0,0 @@
1
- export type SkyIconVariantType = 'line' | 'solid';
@@ -1,6 +0,0 @@
1
- import { SkyHarnessFilters } from '@skyux/core/testing';
2
- /**
3
- * A set of criteria that can be used to filter a list of SkyIconHarness instances.
4
- */
5
- export interface SkyIconHarnessFilters extends SkyHarnessFilters {
6
- }
@@ -1,40 +0,0 @@
1
- import { HarnessPredicate } from '@angular/cdk/testing';
2
- import { SkyComponentHarness } from '@skyux/core/testing';
3
- import { SkyIconHarnessFilters } from './icon-harness-filters';
4
- /**
5
- * Harness for interacting with an icon component in tests.
6
- */
7
- export declare class SkyIconHarness extends SkyComponentHarness {
8
- #private;
9
- /**
10
- * @internal
11
- */
12
- static hostSelector: string;
13
- /**
14
- * Gets a `HarnessPredicate` that can be used to search for a
15
- * `SkyIconHarness` that meets certain criteria.
16
- */
17
- static with(filters: SkyIconHarnessFilters): HarnessPredicate<SkyIconHarness>;
18
- /**
19
- * Gets the icon name.
20
- */
21
- getIconName(): Promise<string | undefined>;
22
- /**
23
- * Gets the icon size.
24
- */
25
- getIconSize(): Promise<string | undefined>;
26
- /**
27
- * Gets the icon type.
28
- * @deprecated The `iconType` input is no longer used. This method will be removed in SKY UX 13.
29
- */
30
- getIconType(): Promise<string>;
31
- /**
32
- * Gets if the icon is a variant.
33
- */
34
- getVariant(): Promise<string | undefined>;
35
- /**
36
- * Whether the icon has fixed width.
37
- * @deprecated Font Awesome icons are deprecated, and all icons are now fixed width. This method will be removed in SKY UX 13.
38
- */
39
- isFixedWidth(): Promise<boolean>;
40
- }
@@ -1,2 +0,0 @@
1
- export { SkyIconHarness } from './modules/icon/icon-harness';
2
- export { SkyIconHarnessFilters } from './modules/icon/icon-harness-filters';