diff --git a/fluxer_app/src/app/font-fallback.css b/fluxer_app/src/app/font-fallback.css new file mode 100644 index 000000000..5a73621c0 --- /dev/null +++ b/fluxer_app/src/app/font-fallback.css @@ -0,0 +1,89 @@ +/* SPDX-License-Identifier: AGPL-3.0-or-later */ + +:root { + --font-fallback-sans: + 'Fluxer Fallback', 'Fluxer Symbols', 'Fluxer Math', + 'Noto Sans', 'Nirmala UI', + 'Noto Sans Bengali', 'Noto Sans Tamil', 'Noto Sans Telugu', 'Noto Sans Kannada', 'Noto Sans Malayalam', + 'Noto Sans Gujarati', 'Noto Sans Gurmukhi', 'Noto Sans Oriya', 'Noto Sans Sinhala', + 'Noto Sans Khmer', 'Noto Sans Lao', 'Noto Sans Myanmar', 'Noto Sans Tibetan', + 'Noto Sans Armenian', 'Noto Sans Georgian', 'Noto Sans Ethiopic', 'Noto Sans Cherokee', + 'Noto Sans Canadian Aboriginal', 'Noto Sans Mongolian', 'Noto Sans Vai', 'Noto Sans NKo', + 'Noto Sans Adlam', 'Noto Sans Yi', 'Noto Sans Osage', 'Noto Sans Thaana', + 'Noto Sans CJK SC', 'Noto Sans CJK TC', 'Noto Sans CJK JP', 'Noto Sans CJK KR', + 'Segoe UI Symbol', 'Segoe UI Historic', 'Apple Symbols', + 'Noto Sans Symbols', 'Noto Sans Symbols 2', 'Noto Sans Math', 'Cambria Math', + 'Apple Color Emoji', 'Segoe UI Emoji', 'Noto Color Emoji', 'Noto Emoji'; + --font-fallback-mono: + 'Noto Sans Mono', + 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', + var(--font-fallback-sans); + + --font-sans: + 'Fluxer Sans', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', 'Fluxer Sans Thai Looped', + 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'Segoe UI', 'Roboto', var(--font-fallback-sans), sans-serif; + --font-mono: 'Fluxer Mono', 'Menlo', 'Monaco', 'Courier New', var(--font-fallback-mono), monospace; +} + +:root:lang(ja) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans JP', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', + 'Fluxer Sans Thai Looped', 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', 'Meiryo', + var(--font-fallback-sans), sans-serif; +} +:root:lang(ko) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans KR', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', + 'Fluxer Sans Thai Looped', 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', system-ui, -apple-system, + BlinkMacSystemFont, 'Malgun Gothic', 'Apple SD Gothic Neo', var(--font-fallback-sans), sans-serif; +} +:root:lang(zh-CN), +:root:lang(zh-Hans) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans SC', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', + 'Fluxer Sans Thai Looped', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'PingFang SC', 'Microsoft YaHei', var(--font-fallback-sans), sans-serif; +} +:root:lang(zh-Hant-TW), +:root:lang(zh-TW) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans TC', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', + 'Fluxer Sans Thai Looped', 'Fluxer Sans SC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'PingFang TC', 'Microsoft JhengHei', var(--font-fallback-sans), sans-serif; +} +:root:lang(zh-HK), +:root:lang(zh-Hant-HK) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans TC', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', + 'Fluxer Sans Thai Looped', 'Fluxer Sans SC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'PingFang HK', 'Microsoft JhengHei', var(--font-fallback-sans), sans-serif; +} +:root:lang(ar) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', 'Fluxer Sans Thai Looped', + 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'Segoe UI', 'Geeza Pro', 'Arabic Typesetting', var(--font-fallback-sans), sans-serif; +} +:root:lang(he) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans Hebrew', 'Fluxer Sans Arabic', 'Fluxer Sans Devanagari', 'Fluxer Sans Thai Looped', + 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'Segoe UI', 'Arial Hebrew', var(--font-fallback-sans), sans-serif; +} +:root:lang(hi), +:root:lang(mr), +:root:lang(ne), +:root:lang(sa) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans Devanagari', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Thai Looped', + 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'Nirmala UI', 'Noto Sans Devanagari', var(--font-fallback-sans), sans-serif; +} +:root:lang(th) { + --font-sans: + 'Fluxer Sans', 'Fluxer Sans Thai Looped', 'Fluxer Sans Arabic', 'Fluxer Sans Hebrew', 'Fluxer Sans Devanagari', + 'Fluxer Sans SC', 'Fluxer Sans TC', 'Fluxer Sans JP', 'Fluxer Sans KR', system-ui, -apple-system, + BlinkMacSystemFont, 'Leelawadee UI', 'Thonburi', var(--font-fallback-sans), sans-serif; +} diff --git a/fluxer_app/src/app/fonts/fallback/LICENSE-OFL-1.1.txt b/fluxer_app/src/app/fonts/fallback/LICENSE-OFL-1.1.txt new file mode 100644 index 000000000..36174f18d --- /dev/null +++ b/fluxer_app/src/app/fonts/fallback/LICENSE-OFL-1.1.txt @@ -0,0 +1,96 @@ +Copyright 2012-2025 The Noto Project Authors (https://github.com/notofonts) + +This Font Software is a subset of Google Noto Sans faces, self-hosted for +guaranteed script coverage. The unmodified license follows. + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the fonts. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansAdlam-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansAdlam-Regular.woff2 new file mode 100644 index 000000000..df710d2a6 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansAdlam-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansArmenian-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansArmenian-Regular.woff2 new file mode 100644 index 000000000..cd6c30644 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansArmenian-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansBengali-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansBengali-Regular.woff2 new file mode 100644 index 000000000..b39314cf6 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansBengali-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansCanadianAboriginal-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansCanadianAboriginal-Regular.woff2 new file mode 100644 index 000000000..a2b3c8b1b Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansCanadianAboriginal-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansCherokee-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansCherokee-Regular.woff2 new file mode 100644 index 000000000..2419c0c84 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansCherokee-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansEthiopic-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansEthiopic-Regular.woff2 new file mode 100644 index 000000000..7190a24d8 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansEthiopic-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansGeorgian-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansGeorgian-Regular.woff2 new file mode 100644 index 000000000..0a60e7f5e Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansGeorgian-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansGujarati-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansGujarati-Regular.woff2 new file mode 100644 index 000000000..260dc7e07 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansGujarati-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansGurmukhi-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansGurmukhi-Regular.woff2 new file mode 100644 index 000000000..dc18b8af2 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansGurmukhi-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansKannada-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansKannada-Regular.woff2 new file mode 100644 index 000000000..1441be71e Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansKannada-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansKhmer-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansKhmer-Regular.woff2 new file mode 100644 index 000000000..b0aefa3a0 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansKhmer-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansLao-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansLao-Regular.woff2 new file mode 100644 index 000000000..68476f7c1 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansLao-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansMalayalam-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansMalayalam-Regular.woff2 new file mode 100644 index 000000000..a1599f20a Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansMalayalam-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansMath-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansMath-Regular.woff2 new file mode 100644 index 000000000..80eade528 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansMath-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansMongolian-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansMongolian-Regular.woff2 new file mode 100644 index 000000000..5b0f0c3d6 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansMongolian-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansMyanmar-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansMyanmar-Regular.woff2 new file mode 100644 index 000000000..f05f1462d Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansMyanmar-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansNKo-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansNKo-Regular.woff2 new file mode 100644 index 000000000..657ac9edc Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansNKo-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansOriya-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansOriya-Regular.woff2 new file mode 100644 index 000000000..8be66c2a8 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansOriya-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansOsage-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansOsage-Regular.woff2 new file mode 100644 index 000000000..4a5dc467b Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansOsage-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansSinhala-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansSinhala-Regular.woff2 new file mode 100644 index 000000000..8bb22686d Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansSinhala-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansSymbols-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansSymbols-Regular.woff2 new file mode 100644 index 000000000..a52772713 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansSymbols-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansSymbols2-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansSymbols2-Regular.woff2 new file mode 100644 index 000000000..9d022d530 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansSymbols2-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansTamil-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansTamil-Regular.woff2 new file mode 100644 index 000000000..f20faf870 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansTamil-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansTelugu-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansTelugu-Regular.woff2 new file mode 100644 index 000000000..d7e820388 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansTelugu-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansThaana-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansThaana-Regular.woff2 new file mode 100644 index 000000000..6883ceb10 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansThaana-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansVai-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansVai-Regular.woff2 new file mode 100644 index 000000000..ea5dc8042 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansVai-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/NotoSansYi-Regular.woff2 b/fluxer_app/src/app/fonts/fallback/NotoSansYi-Regular.woff2 new file mode 100644 index 000000000..b06a80415 Binary files /dev/null and b/fluxer_app/src/app/fonts/fallback/NotoSansYi-Regular.woff2 differ diff --git a/fluxer_app/src/app/fonts/fallback/fallback-faces.css b/fluxer_app/src/app/fonts/fallback/fallback-faces.css new file mode 100644 index 000000000..dfac20583 --- /dev/null +++ b/fluxer_app/src/app/fonts/fallback/fallback-faces.css @@ -0,0 +1,218 @@ +/* SPDX-License-Identifier: OFL-1.1 */ + +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansBengali-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0980-0983, U+0985-098C, U+098F-0990, U+0993-09A8, U+09AA-09B0, U+09B2, U+09B6-09B9, U+09BC-09C4, U+09C7-09C8, U+09CB-09CE, U+09D7, U+09DC-09DD, U+09DF-09E3, U+09E6-09FE; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansTamil-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0B82-0B83, U+0B85-0B8A, U+0B8E-0B90, U+0B92-0B95, U+0B99-0B9A, U+0B9C, U+0B9E-0B9F, U+0BA3-0BA4, U+0BA8-0BAA, U+0BAE-0BB9, U+0BBE-0BC2, U+0BC6-0BC8, U+0BCA-0BCD, U+0BD0, U+0BD7, U+0BE6-0BFA; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansTelugu-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0C00-0C0C, U+0C0E-0C10, U+0C12-0C28, U+0C2A-0C39, U+0C3C-0C44, U+0C46-0C48, U+0C4A-0C4D, U+0C55-0C56, U+0C58-0C5A, U+0C5D, U+0C60-0C63, U+0C66-0C6F, U+0C77-0C7F; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansKannada-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0C80-0C8C, U+0C8E-0C90, U+0C92-0CA8, U+0CAA-0CB3, U+0CB5-0CB9, U+0CBC-0CC4, U+0CC6-0CC8, U+0CCA-0CCD, U+0CD5-0CD6, U+0CDD-0CDE, U+0CE0-0CE3, U+0CE6-0CEF, U+0CF1-0CF3; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansMalayalam-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0D00-0D0C, U+0D0E-0D10, U+0D12-0D44, U+0D46-0D48, U+0D4A-0D4F, U+0D54-0D63, U+0D66-0D7F; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansGujarati-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0A81-0A83, U+0A85-0A8D, U+0A8F-0A91, U+0A93-0AA8, U+0AAA-0AB0, U+0AB2-0AB3, U+0AB5-0AB9, U+0ABC-0AC5, U+0AC7-0AC9, U+0ACB-0ACD, U+0AD0, U+0AE0-0AE3, U+0AE6-0AF1, U+0AF9-0AFF; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansGurmukhi-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0A01-0A03, U+0A05-0A0A, U+0A0F-0A10, U+0A13-0A28, U+0A2A-0A30, U+0A32-0A33, U+0A35-0A36, U+0A38-0A39, U+0A3C, U+0A3E-0A42, U+0A47-0A48, U+0A4B-0A4D, U+0A51, U+0A59-0A5C, U+0A5E, U+0A66-0A76; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansOriya-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0B01-0B03, U+0B05-0B0C, U+0B0F-0B10, U+0B13-0B28, U+0B2A-0B30, U+0B32-0B33, U+0B35-0B39, U+0B3C-0B44, U+0B47-0B48, U+0B4B-0B4D, U+0B55-0B57, U+0B5C-0B5D, U+0B5F-0B63, U+0B66-0B77; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansSinhala-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0D81-0D83, U+0D85-0D96, U+0D9A-0DB1, U+0DB3-0DBB, U+0DBD, U+0DC0-0DC6, U+0DCA, U+0DCF-0DD4, U+0DD6, U+0DD8-0DDF, U+0DE6-0DEF, U+0DF2-0DF4, U+111E1-111F4; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansKhmer-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+1780-17DD, U+17E0-17E9, U+17F0-17F9, U+19E0-19FF; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansLao-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0E81-0E82, U+0E84, U+0E86-0E8A, U+0E8C-0EA3, U+0EA5, U+0EA7-0EBD, U+0EC0-0EC4, U+0EC6, U+0EC8-0ECE, U+0ED0-0ED9, U+0EDC-0EDF; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansMyanmar-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+1000-109F, U+A9E0-A9FE, U+AA60-AA7F; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansArmenian-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0531-0556, U+0559-058A, U+058D-058F, U+FB13-FB17; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansGeorgian-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+10A0-10C5, U+10C7, U+10CD, U+10D0-10FF, U+1C90-1CBA, U+1CBD-1CBF, U+2D00-2D25, U+2D27, U+2D2D; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansEthiopic-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+1200-1248, U+124A-124D, U+1250-1256, U+1258, U+125A-125D, U+1260-1288, U+128A-128D, U+1290-12B0, U+12B2-12B5, U+12B8-12BE, U+12C0, U+12C2-12C5, U+12C8-12D6, U+12D8-1310, U+1312-1315, U+1318-135A, U+135D-137C, U+1380-1399, U+2D80-2D96, U+2DA0-2DA6, U+2DA8-2DAE, U+2DB0-2DB6, U+2DB8-2DBE, U+2DC0-2DC6, U+2DC8-2DCE, U+2DD0-2DD6, U+2DD8-2DDE, U+AB01-AB06, U+AB09-AB0E, U+AB11-AB16, U+AB20-AB26, U+AB28-AB2E, U+1E7E0-1E7E6, U+1E7E8-1E7EB, U+1E7ED-1E7EE, U+1E7F0-1E7FE; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansThaana-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+0780-07B1; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansCherokee-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+13A0-13F5, U+13F8-13FD, U+AB70-ABBF; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansCanadianAboriginal-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+1400-167F, U+18B0-18F5, U+11AB0-11ABF; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansAdlam-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+1E900-1E94B, U+1E950-1E959, U+1E95E-1E95F; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansNKo-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+07C0-07FA, U+07FD-07FF; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansVai-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+A500-A62B; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansOsage-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+104B0-104D3, U+104D8-104FB; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansMongolian-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+1800-1819, U+1820-1878, U+1880-18AA, U+11660-1166C; +} +@font-face { + font-family: 'Fluxer Fallback'; + src: url('./NotoSansYi-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+A000-A48C, U+A490-A4C6; +} +@font-face { + font-family: 'Fluxer Symbols'; + src: url('./NotoSansSymbols-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+2190-2199, U+2300-230F, U+2311-2315, U+2317, U+231C-231F, U+2322-2323, U+2329-232A, U+232C-2335, U+237C, U+2380-2394, U+2396-239A, U+23AF, U+23BE-23CD, U+23D0-23DB, U+23E2-23E8, U+2460-24FF, U+25CC, U+260A-260D, U+2613, U+2624-262F, U+2638-263B, U+263D-2653, U+2669-267E, U+2690-269D, U+26A2-26A9, U+26AD-26BC, U+26CE, U+26E2-26FF, U+271D-2721, U+2776-2793, U+1F100-1F10C, U+1F110-1F16C, U+1F170-1F190, U+1F19B-1F1AC, U+1F546-1F549, U+1F54F, U+1F610, U+1F700-1F773; +} +@font-face { + font-family: 'Fluxer Symbols'; + src: url('./NotoSansSymbols2-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+21AF, U+21E6-21F0, U+21F3, U+2316, U+2318, U+231A-231B, U+2324-2328, U+232B, U+237B, U+237D-237F, U+23CE-23CF, U+23E9-23EA, U+23ED-23EF, U+23F1-2426, U+2440-244A, U+25A0-25CB, U+25CD-2609, U+260E-2612, U+2614-2623, U+2630-2637, U+263C, U+2654-2668, U+267F-268F, U+269E-26A1, U+26AA-26AC, U+26BD-26CD, U+26CF-26E1, U+2700-2704, U+2706-2709, U+270B-271C, U+2722-2727, U+2729-274B, U+274D, U+274F-2753, U+2756-2775, U+2794, U+2798-27AF, U+27B1-27BE, U+2800-28FF, U+2B00-2B0D, U+2B12-2B2F, U+2B4D-2B73, U+2B76-2B95, U+2B97-2BFD, U+2BFF, U+1F000-1F02B, U+1F030-1F093, U+1F0A0-1F0AE, U+1F0B1-1F0BF, U+1F0C1-1F0CF, U+1F0D1-1F0F5, U+1F10D-1F10F, U+1F16D-1F16F, U+1F1AD, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F321-1F32C, U+1F336, U+1F378, U+1F37D, U+1F393-1F39F, U+1F3A7, U+1F3AC-1F3AE, U+1F3C2, U+1F3C4, U+1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4DA, U+1F4DF, U+1F4E4-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50A, U+1F50D, U+1F512-1F513, U+1F53E-1F545, U+1F54A, U+1F550-1F579, U+1F57B-1F594, U+1F597-1F5A3, U+1F5A5-1F5FA, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CB, U+1F6CD-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F774-1F776, U+1F77B-1F7D9, U+1F7E0-1F7EB, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8B1, U+1F900-1F90B, U+1F93B, U+1F946, U+1FA00-1FA53, U+1FA60-1FA6D, U+1FA70-1FA74, U+1FA78-1FA7A, U+1FA80-1FA86, U+1FA90-1FAA8, U+1FAB0-1FAB6, U+1FAC0-1FAC2, U+1FAD0-1FAD6, U+1FB00-1FB92, U+1FB94-1FBCA, U+1FBF0-1FBF9; +} +@font-face { + font-family: 'Fluxer Math'; + src: url('./NotoSansMath-Regular.woff2') format('woff2'); + font-weight: 400; + font-style: normal; + font-display: swap; + unicode-range: U+2102, U+210A-2113, U+2115, U+2119-211D, U+2124, U+2128, U+212C-212D, U+212F-2131, U+2133-2138, U+213C-2140, U+2145-2149, U+2200-22FF, U+27C0-27FF, U+2900-2AFF, U+1D400-1D454, U+1D456-1D49C, U+1D49E-1D49F, U+1D4A2, U+1D4A5-1D4A6, U+1D4A9-1D4AC, U+1D4AE-1D4B9, U+1D4BB, U+1D4BD-1D4C3, U+1D4C5-1D505, U+1D507-1D50A, U+1D50D-1D514, U+1D516-1D51C, U+1D51E-1D539, U+1D53B-1D53E, U+1D540-1D544, U+1D546, U+1D54A-1D550, U+1D552-1D6A5, U+1D6A8-1D7CB, U+1D7CE-1D7FF; +} diff --git a/fluxer_app/src/index.tsx b/fluxer_app/src/index.tsx index 298ba1adc..c4b488878 100644 --- a/fluxer_app/src/index.tsx +++ b/fluxer_app/src/index.tsx @@ -6,6 +6,8 @@ import '@fluxer/fonts/css/fluxer-sans.css'; import '@fluxer/fonts/css/fluxer-mono.css'; import '@fluxer/fonts/css/variables.css'; import '@fluxer/fonts/css/locale-fallbacks.css'; +import '@app/app/font-fallback.css'; +import '@app/app/fonts/fallback/fallback-faces.css'; import '@app/app/globals.css'; import '@app/features/theme/styles/generated/color-system.css'; import '@app/features/theme/styles/generated/message-layout.css';