@yahoo/uds-mobile 1.0.0 → 1.1.0-beta.1
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.
- package/CONTRIBUTING.md +25 -1
- package/README.md +1 -1
- package/dist/bin/{uds/dist/fixtures.mjs → fixtures/dist/index.mjs} +28 -10
- package/dist/bin/{uds/dist/tokens/consts/fontDeclarationsMap.mjs → fonts/dist/index.mjs} +220 -49
- package/dist/bin/generateTheme.mjs +10 -8
- package/dist/bin/mobile/scripts/utils/configToRNMappings.mjs +1 -1
- package/dist/bin/modes/dist/index.mjs +6 -0
- package/dist/bin/{uds/dist/tokens/configs/palette/alwaysPalette.mjs → palette/dist/index.mjs} +1 -1
- package/dist/components/Avatar.d.cts +2 -2
- package/dist/components/Avatar.d.cts.map +1 -1
- package/dist/components/Avatar.d.mts +2 -2
- package/dist/components/Badge.d.cts +3 -3
- package/dist/components/Badge.d.cts.map +1 -1
- package/dist/components/Badge.d.mts +3 -3
- package/dist/components/Badge.mjs.map +1 -1
- package/dist/components/Box.cjs +1 -1
- package/dist/components/Box.d.cts +3 -3
- package/dist/components/Box.d.cts.map +1 -1
- package/dist/components/Box.d.mts +3 -3
- package/dist/components/Box.d.mts.map +1 -1
- package/dist/components/Box.mjs +1 -1
- package/dist/components/Box.mjs.map +1 -1
- package/dist/components/Button.cjs +7 -7
- package/dist/components/Button.d.cts +3 -4
- package/dist/components/Button.d.cts.map +1 -1
- package/dist/components/Button.d.mts +3 -4
- package/dist/components/Button.d.mts.map +1 -1
- package/dist/components/Button.mjs +2 -2
- package/dist/components/Button.mjs.map +1 -1
- package/dist/components/Checkbox.cjs +4 -4
- package/dist/components/Checkbox.d.cts +1 -1
- package/dist/components/Checkbox.d.mts +3 -3
- package/dist/components/Checkbox.mjs +1 -1
- package/dist/components/Checkbox.mjs.map +1 -1
- package/dist/components/Chip.d.cts +1 -1
- package/dist/components/Chip.d.mts +3 -3
- package/dist/components/Chip.mjs.map +1 -1
- package/dist/components/HStack.d.cts +2 -2
- package/dist/components/HStack.d.mts +2 -2
- package/dist/components/Icon.d.cts +4 -5
- package/dist/components/Icon.d.cts.map +1 -1
- package/dist/components/Icon.d.mts +4 -5
- package/dist/components/Icon.d.mts.map +1 -1
- package/dist/components/Icon.mjs.map +1 -1
- package/dist/components/IconButton.cjs +5 -5
- package/dist/components/IconButton.d.cts +3 -4
- package/dist/components/IconButton.d.cts.map +1 -1
- package/dist/components/IconButton.d.mts +3 -4
- package/dist/components/IconButton.d.mts.map +1 -1
- package/dist/components/IconButton.mjs +1 -1
- package/dist/components/IconButton.mjs.map +1 -1
- package/dist/components/IconSlot.d.cts +2 -2
- package/dist/components/IconSlot.d.mts +2 -2
- package/dist/components/Image.d.cts +3 -3
- package/dist/components/Image.d.mts +3 -3
- package/dist/components/Image.mjs.map +1 -1
- package/dist/components/Input.d.cts +3 -3
- package/dist/components/Input.d.mts +3 -3
- package/dist/components/Input.mjs.map +1 -1
- package/dist/components/Link.d.cts +3 -4
- package/dist/components/Link.d.cts.map +1 -1
- package/dist/components/Link.d.mts +3 -4
- package/dist/components/Link.d.mts.map +1 -1
- package/dist/components/Link.mjs.map +1 -1
- package/dist/components/Pressable.d.cts +3 -3
- package/dist/components/Pressable.d.cts.map +1 -1
- package/dist/components/Pressable.d.mts +3 -3
- package/dist/components/Radio.cjs +4 -4
- package/dist/components/Radio.d.cts +3 -3
- package/dist/components/Radio.d.cts.map +1 -1
- package/dist/components/Radio.d.mts +3 -3
- package/dist/components/Radio.d.mts.map +1 -1
- package/dist/components/Radio.mjs +1 -1
- package/dist/components/Radio.mjs.map +1 -1
- package/dist/components/Screen.d.cts +2 -2
- package/dist/components/Screen.d.cts.map +1 -1
- package/dist/components/Screen.d.mts +2 -2
- package/dist/components/Switch.d.cts +3 -3
- package/dist/components/Switch.d.mts +3 -3
- package/dist/components/Switch.mjs.map +1 -1
- package/dist/components/Text.d.cts +2 -2
- package/dist/components/Text.d.cts.map +1 -1
- package/dist/components/Text.d.mts +2 -2
- package/dist/components/Text.d.mts.map +1 -1
- package/dist/components/VStack.d.cts +2 -2
- package/dist/components/VStack.d.cts.map +1 -1
- package/dist/components/VStack.d.mts +2 -2
- package/dist/components/VStack.d.mts.map +1 -1
- package/dist/icons/dist/glyphMap.cjs +3069 -3024
- package/dist/icons/dist/glyphMap.d.cts +2 -2
- package/dist/icons/dist/glyphMap.d.cts.map +1 -1
- package/dist/icons/dist/glyphMap.d.mts +2 -2
- package/dist/icons/dist/glyphMap.d.mts.map +1 -1
- package/dist/icons/dist/glyphMap.mjs +3069 -3024
- package/dist/icons/dist/glyphMap.mjs.map +1 -1
- package/dist/icons/dist/svgMap.cjs +421 -421
- package/dist/icons/dist/svgMap.d.cts.map +1 -1
- package/dist/icons/dist/svgMap.d.mts.map +1 -1
- package/dist/icons/dist/svgMap.mjs +421 -421
- package/dist/icons/dist/svgMap.mjs.map +1 -1
- package/dist/icons/dist/tokens.mjs.map +1 -1
- package/dist/{uds/dist/tokens/configs/motion.cjs → motion-tokens/dist/index.cjs} +2 -2
- package/dist/{uds/dist/tokens/configs/motion.d.mts → motion-tokens/dist/index.d.cts} +4 -4
- package/dist/motion-tokens/dist/index.d.cts.map +1 -0
- package/dist/{uds/dist/tokens/configs/motion.d.cts → motion-tokens/dist/index.d.mts} +4 -4
- package/dist/motion-tokens/dist/index.d.mts.map +1 -0
- package/dist/{uds/dist/tokens/configs/motion.mjs → motion-tokens/dist/index.mjs} +3 -3
- package/dist/motion-tokens/dist/index.mjs.map +1 -0
- package/dist/motion.cjs +12 -12
- package/dist/motion.d.cts +2 -3
- package/dist/motion.d.cts.map +1 -1
- package/dist/motion.d.mts +2 -3
- package/dist/motion.d.mts.map +1 -1
- package/dist/motion.mjs +1 -1
- package/dist/motion.mjs.map +1 -1
- package/dist/types/dist/index.d.cts +247 -0
- package/dist/types/dist/index.d.cts.map +1 -0
- package/dist/types/dist/index.d.mts +247 -0
- package/dist/types/dist/index.d.mts.map +1 -0
- package/generated/styles.cjs +3 -0
- package/generated/styles.d.ts +3 -3
- package/generated/styles.mjs +3 -0
- package/generated/unistyles.d.ts +15 -0
- package/package.json +2 -35
- package/dist/bin/uds/dist/tokens/consts/defaultModes.mjs +0 -6
- package/dist/icons/dist/types.d.cts +0 -24
- package/dist/icons/dist/types.d.cts.map +0 -1
- package/dist/icons/dist/types.d.mts +0 -24
- package/dist/icons/dist/types.d.mts.map +0 -1
- package/dist/uds/dist/components/Box.d.cts +0 -3
- package/dist/uds/dist/components/Box.d.mts +0 -3
- package/dist/uds/dist/components/Divider/Divider.d.cts +0 -3
- package/dist/uds/dist/components/Divider/Divider.d.mts +0 -3
- package/dist/uds/dist/components/Divider/DividerCore.d.cts +0 -4
- package/dist/uds/dist/components/Divider/DividerCore.d.mts +0 -4
- package/dist/uds/dist/components/Divider/DividerInternal.d.cts +0 -4
- package/dist/uds/dist/components/Divider/DividerInternal.d.mts +0 -4
- package/dist/uds/dist/components/Divider/index.d.cts +0 -2
- package/dist/uds/dist/components/Divider/index.d.mts +0 -2
- package/dist/uds/dist/components/FormLabel.d.cts +0 -3
- package/dist/uds/dist/components/FormLabel.d.mts +0 -4
- package/dist/uds/dist/components/HStack.d.cts +0 -4
- package/dist/uds/dist/components/HStack.d.mts +0 -4
- package/dist/uds/dist/components/Icon.d.cts +0 -3
- package/dist/uds/dist/components/Icon.d.mts +0 -3
- package/dist/uds/dist/components/Image.d.cts +0 -2
- package/dist/uds/dist/components/Image.d.mts +0 -3
- package/dist/uds/dist/components/Link.d.cts +0 -3
- package/dist/uds/dist/components/Link.d.mts +0 -3
- package/dist/uds/dist/components/Text.d.cts +0 -3
- package/dist/uds/dist/components/Text.d.mts +0 -3
- package/dist/uds/dist/components/VStack.d.cts +0 -4
- package/dist/uds/dist/components/VStack.d.mts +0 -4
- package/dist/uds/dist/components/client/Avatar/Avatar.d.cts +0 -2
- package/dist/uds/dist/components/client/Avatar/Avatar.d.mts +0 -3
- package/dist/uds/dist/components/client/Avatar/AvatarIcon.d.cts +0 -2
- package/dist/uds/dist/components/client/Avatar/AvatarIcon.d.mts +0 -3
- package/dist/uds/dist/components/client/Avatar/AvatarImage.d.cts +0 -4
- package/dist/uds/dist/components/client/Avatar/AvatarImage.d.mts +0 -5
- package/dist/uds/dist/components/client/Avatar/AvatarText.d.cts +0 -3
- package/dist/uds/dist/components/client/Avatar/AvatarText.d.mts +0 -4
- package/dist/uds/dist/components/client/Avatar/index.d.cts +0 -5
- package/dist/uds/dist/components/client/Avatar/index.d.mts +0 -5
- package/dist/uds/dist/components/client/Badge.d.cts +0 -3
- package/dist/uds/dist/components/client/Badge.d.mts +0 -3
- package/dist/uds/dist/components/client/Button.d.cts +0 -3
- package/dist/uds/dist/components/client/Button.d.mts +0 -3
- package/dist/uds/dist/components/client/Checkbox.d.cts +0 -3
- package/dist/uds/dist/components/client/Checkbox.d.mts +0 -3
- package/dist/uds/dist/components/client/Chip/Chip.d.cts +0 -4
- package/dist/uds/dist/components/client/Chip/Chip.d.mts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipBase.d.cts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipBase.d.mts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipButton.d.cts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipButton.d.mts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipDismissible.d.cts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipDismissible.d.mts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipLink.d.cts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipLink.d.mts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipToggle.d.cts +0 -4
- package/dist/uds/dist/components/client/Chip/ChipToggle.d.mts +0 -4
- package/dist/uds/dist/components/client/Chip/index.d.cts +0 -6
- package/dist/uds/dist/components/client/Chip/index.d.mts +0 -6
- package/dist/uds/dist/components/client/IconButton.d.cts +0 -3
- package/dist/uds/dist/components/client/IconButton.d.mts +0 -3
- package/dist/uds/dist/components/client/Input/Input.d.cts +0 -4
- package/dist/uds/dist/components/client/Input/Input.d.mts +0 -4
- package/dist/uds/dist/components/client/Input/InputHelpText.d.cts +0 -2
- package/dist/uds/dist/components/client/Input/InputHelpText.d.mts +0 -3
- package/dist/uds/dist/components/client/Input/InputHelpTextInternal.d.cts +0 -5
- package/dist/uds/dist/components/client/Input/InputHelpTextInternal.d.mts +0 -6
- package/dist/uds/dist/components/client/Input/index.d.cts +0 -3
- package/dist/uds/dist/components/client/Input/index.d.mts +0 -3
- package/dist/uds/dist/components/client/Menu/Menu.Content.d.cts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.Content.d.mts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.Divider.d.cts +0 -3
- package/dist/uds/dist/components/client/Menu/Menu.Divider.d.mts +0 -3
- package/dist/uds/dist/components/client/Menu/Menu.Item.d.cts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.Item.d.mts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.ItemCheckbox.d.cts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.ItemCheckbox.d.mts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.Provider.d.cts +0 -2
- package/dist/uds/dist/components/client/Menu/Menu.Provider.d.mts +0 -3
- package/dist/uds/dist/components/client/Menu/Menu.Trigger.d.cts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.Trigger.d.mts +0 -4
- package/dist/uds/dist/components/client/Menu/Menu.d.cts +0 -2
- package/dist/uds/dist/components/client/Menu/Menu.d.mts +0 -2
- package/dist/uds/dist/components/client/Menu/Menu.index.d.cts +0 -7
- package/dist/uds/dist/components/client/Menu/Menu.index.d.mts +0 -7
- package/dist/uds/dist/components/client/Menu/index.d.cts +0 -9
- package/dist/uds/dist/components/client/Menu/index.d.mts +0 -9
- package/dist/uds/dist/components/client/Pressable.d.cts +0 -3
- package/dist/uds/dist/components/client/Pressable.d.mts +0 -3
- package/dist/uds/dist/components/client/Radio/Radio.d.cts +0 -3
- package/dist/uds/dist/components/client/Radio/Radio.d.mts +0 -3
- package/dist/uds/dist/components/client/Radio/RadioGroupProvider.d.cts +0 -3
- package/dist/uds/dist/components/client/Radio/RadioGroupProvider.d.mts +0 -3
- package/dist/uds/dist/components/client/Radio/index.d.cts +0 -3
- package/dist/uds/dist/components/client/Radio/index.d.mts +0 -3
- package/dist/uds/dist/components/client/SpringMotionConfig.d.cts +0 -3
- package/dist/uds/dist/components/client/SpringMotionConfig.d.mts +0 -3
- package/dist/uds/dist/components/client/Switch.d.cts +0 -3
- package/dist/uds/dist/components/client/Switch.d.mts +0 -3
- package/dist/uds/dist/components/client/index.d.cts +0 -33
- package/dist/uds/dist/components/client/index.d.mts +0 -33
- package/dist/uds/dist/components/index.d.cts +0 -40
- package/dist/uds/dist/components/index.d.mts +0 -40
- package/dist/uds/dist/index.d.cts +0 -46
- package/dist/uds/dist/index.d.mts +0 -46
- package/dist/uds/dist/styles/styler.d.cts +0 -2
- package/dist/uds/dist/styles/styler.d.mts +0 -2
- package/dist/uds/dist/styles/stylerTypes.d.cts +0 -2
- package/dist/uds/dist/styles/stylerTypes.d.mts +0 -2
- package/dist/uds/dist/tokens/automation/configs/avatar.d.cts +0 -2
- package/dist/uds/dist/tokens/automation/configs/avatar.d.mts +0 -2
- package/dist/uds/dist/tokens/automation/properties.d.cts +0 -3
- package/dist/uds/dist/tokens/automation/properties.d.mts +0 -3
- package/dist/uds/dist/tokens/automation/types/ComponentConfig.d.cts +0 -3
- package/dist/uds/dist/tokens/automation/types/ComponentConfig.d.mts +0 -3
- package/dist/uds/dist/tokens/configs/motion.d.cts.map +0 -1
- package/dist/uds/dist/tokens/configs/motion.d.mts.map +0 -1
- package/dist/uds/dist/tokens/configs/motion.mjs.map +0 -1
- package/dist/uds/dist/tokens/configs/palette/alwaysPalette.d.cts +0 -32
- package/dist/uds/dist/tokens/configs/palette/alwaysPalette.d.cts.map +0 -1
- package/dist/uds/dist/tokens/configs/palette/alwaysPalette.d.mts +0 -32
- package/dist/uds/dist/tokens/configs/palette/alwaysPalette.d.mts.map +0 -1
- package/dist/uds/dist/tokens/types.d.cts +0 -426
- package/dist/uds/dist/tokens/types.d.cts.map +0 -1
- package/dist/uds/dist/tokens/types.d.mts +0 -426
- package/dist/uds/dist/tokens/types.d.mts.map +0 -1
- package/dist/uds/dist/types.d.cts +0 -2
- package/dist/uds/dist/types.d.mts +0 -2
package/CONTRIBUTING.md
CHANGED
|
@@ -104,7 +104,7 @@ This is the most important generated file. It contains all Unistyles stylesheets
|
|
|
104
104
|
**Example input** (from `uds.config.ts` - see `packages/configurator/uds.config.ts`):
|
|
105
105
|
|
|
106
106
|
```typescript
|
|
107
|
-
import type { UniversalTokensConfig } from '@yahoo/uds';
|
|
107
|
+
import type { UniversalTokensConfig } from '@yahoo/uds-types';
|
|
108
108
|
|
|
109
109
|
export const config: UniversalTokensConfig = {
|
|
110
110
|
// Component configs use path-based keys: '{dimension}/{value}/{layer}'
|
|
@@ -1059,6 +1059,30 @@ cd packages/mobile
|
|
|
1059
1059
|
bun turbo build
|
|
1060
1060
|
```
|
|
1061
1061
|
|
|
1062
|
+
### Two-Terminal Development (Recommended)
|
|
1063
|
+
|
|
1064
|
+
For the best experience when working on `@yahoo/uds-mobile` with the demo app, use two terminals:
|
|
1065
|
+
|
|
1066
|
+
**Terminal 1** — Watch the UDS Mobile package:
|
|
1067
|
+
|
|
1068
|
+
```bash
|
|
1069
|
+
turbo run dev --filter=@yahoo/uds-mobile
|
|
1070
|
+
```
|
|
1071
|
+
|
|
1072
|
+
**Terminal 2** — Run the demo app with full Expo CLI interactivity:
|
|
1073
|
+
|
|
1074
|
+
```bash
|
|
1075
|
+
cd apps/mobile && bun run ios # or bun run android
|
|
1076
|
+
```
|
|
1077
|
+
|
|
1078
|
+
This approach gives you:
|
|
1079
|
+
|
|
1080
|
+
- **Package hot-reloading** — Changes to `packages/mobile` are watched by Turbo and picked up by Metro
|
|
1081
|
+
- **Interactive Expo CLI** — Press `r` to reload, `d` for dev menu, `i`/`a` to switch platforms
|
|
1082
|
+
- **Faster iteration** — No need to rebuild the entire app for JS changes
|
|
1083
|
+
|
|
1084
|
+
> **Why two terminals?** Running `turbo run dev` wraps Expo in a way that disables interactive keyboard commands. The two-terminal approach preserves Expo's interactivity while still getting Turbo's package watching.
|
|
1085
|
+
|
|
1062
1086
|
### Making Changes
|
|
1063
1087
|
|
|
1064
1088
|
1. **Components** (`src/components/`): Edit directly, run `bun turbo dev` for watch mode
|
package/README.md
CHANGED
|
@@ -550,7 +550,7 @@ export const breakpoints = {
|
|
|
550
550
|
|
|
551
551
|
## Contributing
|
|
552
552
|
|
|
553
|
-
See [CONTRIBUTING.md](./CONTRIBUTING.md) for
|
|
553
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for the development workflow, architecture details, and internal documentation.
|
|
554
554
|
|
|
555
555
|
## API Reference
|
|
556
556
|
|
|
@@ -1,8 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
//#region ../
|
|
3
|
-
function fromEntries(item) {
|
|
4
|
-
return Object.fromEntries(item);
|
|
5
|
-
}
|
|
2
|
+
//#region ../fixtures/dist/index.js
|
|
6
3
|
var elevationAliases = [
|
|
7
4
|
"elevation-0",
|
|
8
5
|
"elevation-1",
|
|
@@ -172,6 +169,7 @@ var opacitySteps = [
|
|
|
172
169
|
"99",
|
|
173
170
|
"100"
|
|
174
171
|
];
|
|
172
|
+
var fromEntries = (item) => Object.fromEntries(item);
|
|
175
173
|
var opacityMap = fromEntries(opacitySteps.map((key) => [key, `${parseInt(key) / 100}`]));
|
|
176
174
|
var backgroundColors = [
|
|
177
175
|
...backgroundPaletteColors,
|
|
@@ -202,9 +200,7 @@ var iconSizes = [
|
|
|
202
200
|
"md",
|
|
203
201
|
"lg",
|
|
204
202
|
"xs"
|
|
205
|
-
].sort((a, b) =>
|
|
206
|
-
return iconSizeSort[a] - iconSizeSort[b];
|
|
207
|
-
});
|
|
203
|
+
].sort((a, b) => iconSizeSort[a] - iconSizeSort[b]);
|
|
208
204
|
var spacingMap = {
|
|
209
205
|
"0": 0,
|
|
210
206
|
px: 1,
|
|
@@ -378,9 +374,31 @@ var buttonVariantsFlat = [
|
|
|
378
374
|
if (aPriority !== bPriority) return aPriority - bPriority;
|
|
379
375
|
return a.localeCompare(b);
|
|
380
376
|
});
|
|
381
|
-
var buttonVariantsSecondary = buttonVariantsFlat.filter((
|
|
382
|
-
var buttonVariantsTertiary = buttonVariantsFlat.filter((
|
|
383
|
-
var buttonVariantsPrimary = buttonVariantsFlat.filter((
|
|
377
|
+
var buttonVariantsSecondary = buttonVariantsFlat.filter((v) => v.includes("secondary"));
|
|
378
|
+
var buttonVariantsTertiary = buttonVariantsFlat.filter((v) => v.includes("tertiary"));
|
|
379
|
+
var buttonVariantsPrimary = buttonVariantsFlat.filter((v) => !buttonVariantsSecondary.includes(v) && !buttonVariantsTertiary.includes(v));
|
|
380
|
+
var preferredTShirtSizeSort = {
|
|
381
|
+
none: 0,
|
|
382
|
+
xs: 1,
|
|
383
|
+
sm: 2,
|
|
384
|
+
md: 3,
|
|
385
|
+
lg: 4,
|
|
386
|
+
xl: 5,
|
|
387
|
+
full: 6
|
|
388
|
+
};
|
|
389
|
+
var buttonSizes = [
|
|
390
|
+
"sm",
|
|
391
|
+
"md",
|
|
392
|
+
"lg",
|
|
393
|
+
"xs"
|
|
394
|
+
].sort((a, b) => preferredTShirtSizeSort[a] - preferredTShirtSizeSort[b]);
|
|
395
|
+
var iconButtonSizes = [
|
|
396
|
+
"sm",
|
|
397
|
+
"md",
|
|
398
|
+
"lg",
|
|
399
|
+
"xl",
|
|
400
|
+
"xs"
|
|
401
|
+
].sort((a, b) => preferredTShirtSizeSort[a] - preferredTShirtSizeSort[b]);
|
|
384
402
|
var shadowVariants = [
|
|
385
403
|
"none",
|
|
386
404
|
"xs",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
//#region ../
|
|
3
|
-
/*! © 2026 Yahoo, Inc. UDS v0.0.0-development */
|
|
2
|
+
//#region ../fonts/dist/index.js
|
|
3
|
+
/*! © 2026 Yahoo, Inc. UDS Fonts v0.0.0-development */
|
|
4
4
|
const UDS_FONTS_CDN_PREFIX = "https://s.yimg.com/bw/fonts";
|
|
5
5
|
const sansFallbacks = [
|
|
6
6
|
"Helvetica Neue",
|
|
@@ -75,97 +75,268 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
75
75
|
{
|
|
76
76
|
fontStyle: "normal",
|
|
77
77
|
fontWeight: "50",
|
|
78
|
-
src:
|
|
78
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-hairline.woff2`
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
fontStyle: "italic",
|
|
82
82
|
fontWeight: "50",
|
|
83
|
-
src:
|
|
83
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-hairline-italic.woff2`
|
|
84
84
|
},
|
|
85
85
|
{
|
|
86
86
|
fontStyle: "normal",
|
|
87
87
|
fontWeight: "100",
|
|
88
|
-
src:
|
|
88
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-thin.woff2`
|
|
89
89
|
},
|
|
90
90
|
{
|
|
91
91
|
fontStyle: "italic",
|
|
92
92
|
fontWeight: "100",
|
|
93
|
-
src:
|
|
93
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-thin-italic.woff2`
|
|
94
94
|
},
|
|
95
95
|
{
|
|
96
96
|
fontStyle: "normal",
|
|
97
97
|
fontWeight: "300",
|
|
98
|
-
src:
|
|
98
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-light.woff2`
|
|
99
99
|
},
|
|
100
100
|
{
|
|
101
101
|
fontStyle: "italic",
|
|
102
102
|
fontWeight: "300",
|
|
103
|
-
src:
|
|
103
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-light-italic.woff2`
|
|
104
104
|
},
|
|
105
105
|
{
|
|
106
106
|
fontStyle: "normal",
|
|
107
107
|
fontWeight: "400",
|
|
108
|
-
src:
|
|
108
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-book.woff2`
|
|
109
109
|
},
|
|
110
110
|
{
|
|
111
111
|
fontStyle: "italic",
|
|
112
112
|
fontWeight: "400",
|
|
113
|
-
src:
|
|
113
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-book-italic.woff2`
|
|
114
114
|
},
|
|
115
115
|
{
|
|
116
116
|
fontStyle: "normal",
|
|
117
117
|
fontWeight: "500",
|
|
118
|
-
src:
|
|
118
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-medium.woff2`
|
|
119
119
|
},
|
|
120
120
|
{
|
|
121
121
|
fontStyle: "italic",
|
|
122
122
|
fontWeight: "500",
|
|
123
|
-
src:
|
|
123
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-medium-italic.woff2`
|
|
124
124
|
},
|
|
125
125
|
{
|
|
126
126
|
fontStyle: "normal",
|
|
127
127
|
fontWeight: "700",
|
|
128
|
-
src:
|
|
128
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-bold.woff2`
|
|
129
129
|
},
|
|
130
130
|
{
|
|
131
131
|
fontStyle: "italic",
|
|
132
132
|
fontWeight: "700",
|
|
133
|
-
src:
|
|
133
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-bold-italic.woff2`
|
|
134
134
|
},
|
|
135
135
|
{
|
|
136
136
|
fontStyle: "normal",
|
|
137
137
|
fontWeight: "800",
|
|
138
|
-
src:
|
|
138
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-extrabold.woff2`
|
|
139
139
|
},
|
|
140
140
|
{
|
|
141
141
|
fontStyle: "italic",
|
|
142
142
|
fontWeight: "800",
|
|
143
|
-
src:
|
|
143
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-extrabold-italic.woff2`
|
|
144
144
|
},
|
|
145
145
|
{
|
|
146
146
|
fontStyle: "normal",
|
|
147
147
|
fontWeight: "900",
|
|
148
|
-
src:
|
|
148
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-black.woff2`
|
|
149
149
|
},
|
|
150
150
|
{
|
|
151
151
|
fontStyle: "italic",
|
|
152
152
|
fontWeight: "900",
|
|
153
|
-
src:
|
|
153
|
+
src: `${UDS_FONTS_CDN_PREFIX}/centra-no2-black-italic.woff2`
|
|
154
154
|
}
|
|
155
155
|
]
|
|
156
156
|
},
|
|
157
|
-
|
|
157
|
+
gelica: {
|
|
158
|
+
fallback: sansFallbacks,
|
|
159
|
+
type: "serif",
|
|
160
|
+
fontFamily: "Gelica",
|
|
161
|
+
isVariableFont: false,
|
|
162
|
+
fontSlants: void 0,
|
|
163
|
+
fontWidths: void 0,
|
|
164
|
+
fontWeights: [
|
|
165
|
+
{
|
|
166
|
+
label: "ExtraLight",
|
|
167
|
+
value: 250
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
label: "Light",
|
|
171
|
+
value: 300
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
label: "Regular",
|
|
175
|
+
value: 400
|
|
176
|
+
},
|
|
177
|
+
{
|
|
178
|
+
label: "Medium",
|
|
179
|
+
value: 500
|
|
180
|
+
},
|
|
181
|
+
{
|
|
182
|
+
label: "SemiBold",
|
|
183
|
+
value: 600
|
|
184
|
+
},
|
|
185
|
+
{
|
|
186
|
+
label: "Bold",
|
|
187
|
+
value: 700
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
label: "Black",
|
|
191
|
+
value: 800
|
|
192
|
+
}
|
|
193
|
+
],
|
|
194
|
+
defaults: {
|
|
195
|
+
fontSlant: void 0,
|
|
196
|
+
fontWidth: void 0,
|
|
197
|
+
fontWeight: 400
|
|
198
|
+
},
|
|
199
|
+
declarations: [
|
|
200
|
+
{
|
|
201
|
+
fontStyle: "normal",
|
|
202
|
+
fontWeight: "250",
|
|
203
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-extralight.woff2`
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
fontStyle: "italic",
|
|
207
|
+
fontWeight: "250",
|
|
208
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-extralight-italic.woff2`
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
fontStyle: "normal",
|
|
212
|
+
fontWeight: "300",
|
|
213
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-light.woff2`
|
|
214
|
+
},
|
|
215
|
+
{
|
|
216
|
+
fontStyle: "italic",
|
|
217
|
+
fontWeight: "300",
|
|
218
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-light-italic.woff2`
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
fontStyle: "normal",
|
|
222
|
+
fontWeight: "400",
|
|
223
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-regular.woff2`
|
|
224
|
+
},
|
|
225
|
+
{
|
|
226
|
+
fontStyle: "italic",
|
|
227
|
+
fontWeight: "400",
|
|
228
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-regular-italic.woff2`
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
fontStyle: "normal",
|
|
232
|
+
fontWeight: "500",
|
|
233
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-medium.woff2`
|
|
234
|
+
},
|
|
235
|
+
{
|
|
236
|
+
fontStyle: "italic",
|
|
237
|
+
fontWeight: "500",
|
|
238
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-medium-italic.woff2`
|
|
239
|
+
},
|
|
240
|
+
{
|
|
241
|
+
fontStyle: "normal",
|
|
242
|
+
fontWeight: "600",
|
|
243
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-semibold.woff2`
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
fontStyle: "italic",
|
|
247
|
+
fontWeight: "600",
|
|
248
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-semibold-italic.woff2`
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
fontStyle: "normal",
|
|
252
|
+
fontWeight: "700",
|
|
253
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-bold.woff2`
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
fontStyle: "italic",
|
|
257
|
+
fontWeight: "700",
|
|
258
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-bold-italic.woff2`
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
fontStyle: "normal",
|
|
262
|
+
fontWeight: "800",
|
|
263
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-black.woff2`
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
fontStyle: "italic",
|
|
267
|
+
fontWeight: "800",
|
|
268
|
+
src: `${UDS_FONTS_CDN_PREFIX}/gelica-black-italic.woff2`
|
|
269
|
+
}
|
|
270
|
+
]
|
|
271
|
+
},
|
|
272
|
+
yas: {
|
|
158
273
|
fallback: sansFallbacks,
|
|
159
274
|
type: "sans",
|
|
160
|
-
fontFamily: "
|
|
275
|
+
fontFamily: "YA Sans VF",
|
|
161
276
|
isVariableFont: true,
|
|
162
277
|
fontSlants: [{
|
|
163
|
-
label: "Italic",
|
|
164
|
-
value: -10
|
|
165
|
-
}, {
|
|
166
278
|
label: "None",
|
|
167
279
|
value: 0
|
|
280
|
+
}, {
|
|
281
|
+
label: "Italic",
|
|
282
|
+
value: 1
|
|
168
283
|
}],
|
|
284
|
+
fontWidths: [
|
|
285
|
+
{
|
|
286
|
+
label: "Condensed",
|
|
287
|
+
value: 75
|
|
288
|
+
},
|
|
289
|
+
{
|
|
290
|
+
label: "Normal",
|
|
291
|
+
value: 100
|
|
292
|
+
},
|
|
293
|
+
{
|
|
294
|
+
label: "Extended",
|
|
295
|
+
value: 125
|
|
296
|
+
}
|
|
297
|
+
],
|
|
298
|
+
fontWeights: [
|
|
299
|
+
{
|
|
300
|
+
label: "Light",
|
|
301
|
+
value: 300
|
|
302
|
+
},
|
|
303
|
+
{
|
|
304
|
+
label: "Regular",
|
|
305
|
+
value: 400
|
|
306
|
+
},
|
|
307
|
+
{
|
|
308
|
+
label: "Medium",
|
|
309
|
+
value: 500
|
|
310
|
+
},
|
|
311
|
+
{
|
|
312
|
+
label: "SemiBold",
|
|
313
|
+
value: 600
|
|
314
|
+
},
|
|
315
|
+
{
|
|
316
|
+
label: "Bold",
|
|
317
|
+
value: 700
|
|
318
|
+
},
|
|
319
|
+
{
|
|
320
|
+
label: "Black",
|
|
321
|
+
value: 900
|
|
322
|
+
}
|
|
323
|
+
],
|
|
324
|
+
defaults: {
|
|
325
|
+
fontSlant: 0,
|
|
326
|
+
fontWidth: 100,
|
|
327
|
+
fontWeight: 400
|
|
328
|
+
},
|
|
329
|
+
declarations: [{
|
|
330
|
+
fontWeight: "1 1000",
|
|
331
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yas-vf.woff2`
|
|
332
|
+
}]
|
|
333
|
+
},
|
|
334
|
+
inter: {
|
|
335
|
+
fallback: sansFallbacks,
|
|
336
|
+
type: "sans",
|
|
337
|
+
fontFamily: "Inter",
|
|
338
|
+
isVariableFont: true,
|
|
339
|
+
fontSlants: void 0,
|
|
169
340
|
fontWidths: void 0,
|
|
170
341
|
fontWeights: [
|
|
171
342
|
{
|
|
@@ -206,13 +377,13 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
206
377
|
}
|
|
207
378
|
],
|
|
208
379
|
defaults: {
|
|
209
|
-
fontSlant: 0,
|
|
380
|
+
fontSlant: void 0,
|
|
210
381
|
fontWidth: void 0,
|
|
211
382
|
fontWeight: 400
|
|
212
383
|
},
|
|
213
384
|
declarations: [{
|
|
214
385
|
fontWeight: "1 1000",
|
|
215
|
-
src:
|
|
386
|
+
src: `${UDS_FONTS_CDN_PREFIX}/inter-vf.woff2`
|
|
216
387
|
}]
|
|
217
388
|
},
|
|
218
389
|
"roboto-mono": {
|
|
@@ -253,52 +424,52 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
253
424
|
{
|
|
254
425
|
fontStyle: "normal",
|
|
255
426
|
fontWeight: "100",
|
|
256
|
-
src:
|
|
427
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-100.woff2`
|
|
257
428
|
},
|
|
258
429
|
{
|
|
259
430
|
fontStyle: "italic",
|
|
260
431
|
fontWeight: "100",
|
|
261
|
-
src:
|
|
432
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-100-italic.woff2`
|
|
262
433
|
},
|
|
263
434
|
{
|
|
264
435
|
fontStyle: "normal",
|
|
265
436
|
fontWeight: "300",
|
|
266
|
-
src:
|
|
437
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-300.woff2`
|
|
267
438
|
},
|
|
268
439
|
{
|
|
269
440
|
fontStyle: "italic",
|
|
270
441
|
fontWeight: "300",
|
|
271
|
-
src:
|
|
442
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-300-italic.woff2`
|
|
272
443
|
},
|
|
273
444
|
{
|
|
274
445
|
fontStyle: "normal",
|
|
275
446
|
fontWeight: "400",
|
|
276
|
-
src:
|
|
447
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-400.woff2`
|
|
277
448
|
},
|
|
278
449
|
{
|
|
279
450
|
fontStyle: "italic",
|
|
280
451
|
fontWeight: "400",
|
|
281
|
-
src:
|
|
452
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-400-italic.woff2`
|
|
282
453
|
},
|
|
283
454
|
{
|
|
284
455
|
fontStyle: "normal",
|
|
285
456
|
fontWeight: "500",
|
|
286
|
-
src:
|
|
457
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-500.woff2`
|
|
287
458
|
},
|
|
288
459
|
{
|
|
289
460
|
fontStyle: "italic",
|
|
290
461
|
fontWeight: "500",
|
|
291
|
-
src:
|
|
462
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-500-italic.woff2`
|
|
292
463
|
},
|
|
293
464
|
{
|
|
294
465
|
fontStyle: "normal",
|
|
295
466
|
fontWeight: "700",
|
|
296
|
-
src:
|
|
467
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-700.woff2`
|
|
297
468
|
},
|
|
298
469
|
{
|
|
299
470
|
fontStyle: "italic",
|
|
300
471
|
fontWeight: "700",
|
|
301
|
-
src:
|
|
472
|
+
src: `${UDS_FONTS_CDN_PREFIX}/roboto-mono-700-italic.woff2`
|
|
302
473
|
}
|
|
303
474
|
]
|
|
304
475
|
},
|
|
@@ -350,7 +521,7 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
350
521
|
},
|
|
351
522
|
declarations: [{
|
|
352
523
|
fontWeight: "1 1000",
|
|
353
|
-
src:
|
|
524
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-sans-vf.woff2`
|
|
354
525
|
}]
|
|
355
526
|
},
|
|
356
527
|
"yahoo-sans-cr4": {
|
|
@@ -386,7 +557,7 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
386
557
|
},
|
|
387
558
|
declarations: [{
|
|
388
559
|
fontWeight: "1 1000",
|
|
389
|
-
src:
|
|
560
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-sans-cr4-vf.woff2`
|
|
390
561
|
}]
|
|
391
562
|
},
|
|
392
563
|
"yahoo-product-sans": {
|
|
@@ -422,7 +593,7 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
422
593
|
},
|
|
423
594
|
declarations: [{
|
|
424
595
|
fontWeight: "1 1000",
|
|
425
|
-
src:
|
|
596
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-product-sans-vf.woff2`
|
|
426
597
|
}]
|
|
427
598
|
},
|
|
428
599
|
"yahoo-product-sans-extended": {
|
|
@@ -496,7 +667,7 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
496
667
|
},
|
|
497
668
|
declarations: [{
|
|
498
669
|
fontWeight: "1 1000",
|
|
499
|
-
src:
|
|
670
|
+
src: `${UDS_FONTS_CDN_PREFIX}/YahooPd_Eval202412-v1.1.0.woff2`
|
|
500
671
|
}]
|
|
501
672
|
},
|
|
502
673
|
"yahoo-sans-condensed": {
|
|
@@ -539,7 +710,7 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
539
710
|
},
|
|
540
711
|
declarations: [{
|
|
541
712
|
fontWeight: "1 1000",
|
|
542
|
-
src:
|
|
713
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-sans-condensed-vf.woff2`
|
|
543
714
|
}]
|
|
544
715
|
},
|
|
545
716
|
"yahoo-serif-display": {
|
|
@@ -580,27 +751,27 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
580
751
|
{
|
|
581
752
|
fontStyle: "normal",
|
|
582
753
|
fontWeight: "300",
|
|
583
|
-
src:
|
|
754
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-display-light.woff2`
|
|
584
755
|
},
|
|
585
756
|
{
|
|
586
757
|
fontStyle: "normal",
|
|
587
758
|
fontWeight: "400",
|
|
588
|
-
src:
|
|
759
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-display-regular.woff2`
|
|
589
760
|
},
|
|
590
761
|
{
|
|
591
762
|
fontStyle: "normal",
|
|
592
763
|
fontWeight: "700",
|
|
593
|
-
src:
|
|
764
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-display-bold.woff2`
|
|
594
765
|
},
|
|
595
766
|
{
|
|
596
767
|
fontStyle: "normal",
|
|
597
768
|
fontWeight: "800",
|
|
598
|
-
src:
|
|
769
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-display-extrabold.woff2`
|
|
599
770
|
},
|
|
600
771
|
{
|
|
601
772
|
fontStyle: "normal",
|
|
602
773
|
fontWeight: "900",
|
|
603
|
-
src:
|
|
774
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-display-black.woff2`
|
|
604
775
|
}
|
|
605
776
|
]
|
|
606
777
|
},
|
|
@@ -627,22 +798,22 @@ const FONT_DECLARATIONS_MAP = {
|
|
|
627
798
|
{
|
|
628
799
|
fontStyle: "normal",
|
|
629
800
|
fontWeight: "400",
|
|
630
|
-
src:
|
|
801
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-text-regular.woff2`
|
|
631
802
|
},
|
|
632
803
|
{
|
|
633
804
|
fontStyle: "italic",
|
|
634
805
|
fontWeight: "400",
|
|
635
|
-
src:
|
|
806
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-text-italic.woff2`
|
|
636
807
|
},
|
|
637
808
|
{
|
|
638
809
|
fontStyle: "normal",
|
|
639
810
|
fontWeight: "700",
|
|
640
|
-
src:
|
|
811
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-text-bold.woff2`
|
|
641
812
|
},
|
|
642
813
|
{
|
|
643
814
|
fontStyle: "italic",
|
|
644
815
|
fontWeight: "700",
|
|
645
|
-
src:
|
|
816
|
+
src: `${UDS_FONTS_CDN_PREFIX}/yahoo-serif-text-bold-italic.woff2`
|
|
646
817
|
}
|
|
647
818
|
]
|
|
648
819
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { spacingMap } from "./
|
|
3
|
-
import {
|
|
4
|
-
import { DEFAULT_SCALE_MODE } from "./
|
|
5
|
-
import {
|
|
2
|
+
import { spacingMap } from "./fixtures/dist/index.mjs";
|
|
3
|
+
import { FONT_DECLARATIONS_MAP } from "./fonts/dist/index.mjs";
|
|
4
|
+
import { DEFAULT_SCALE_MODE } from "./modes/dist/index.mjs";
|
|
5
|
+
import { newAlwaysPalette } from "./palette/dist/index.mjs";
|
|
6
6
|
import { MOBILE_STATES, PROPERTY_TO_RN_PROPS, SHADOW_PROPS, TEXT_ONLY_PROPS, toSlashKey } from "./mobile/scripts/utils/configToRNMappings.mjs";
|
|
7
7
|
import { fontAliasToPostscript } from "@yahoo/uds-mobile/fonts";
|
|
8
8
|
|
|
@@ -45,13 +45,15 @@ function sortKeys(obj) {
|
|
|
45
45
|
for (const key of keys) sorted[key] = sortKeys(obj[key]);
|
|
46
46
|
return sorted;
|
|
47
47
|
}
|
|
48
|
+
function isWebFontID(value) {
|
|
49
|
+
return value in FONT_DECLARATIONS_MAP;
|
|
50
|
+
}
|
|
48
51
|
/**
|
|
49
52
|
* Converts a FontID and weight value to a PostScript font name.
|
|
50
53
|
* React Native requires PostScript names to load fonts, not CSS font-family + weight.
|
|
51
54
|
*/
|
|
52
55
|
function getPostScriptName(fontId, weight, italic = false) {
|
|
53
56
|
const fontConfig = FONT_DECLARATIONS_MAP[fontId];
|
|
54
|
-
if (!fontConfig) return fontId;
|
|
55
57
|
let weightConfig = fontConfig.fontWeights.find((w) => w.value === weight);
|
|
56
58
|
if (!weightConfig) weightConfig = fontConfig.fontWeights.reduce((closest, current) => {
|
|
57
59
|
const closestDiff = Math.abs(closest.value - weight);
|
|
@@ -148,7 +150,7 @@ function generateTypography(typographyConfig, fontConfig) {
|
|
|
148
150
|
const fontAlias = style.fontFamily.base;
|
|
149
151
|
const fontId = fontConfig[fontAlias] ?? fontAlias;
|
|
150
152
|
const weight = Number(style.fontWeight.base.value);
|
|
151
|
-
const postScriptName = fontId
|
|
153
|
+
const postScriptName = isWebFontID(fontId) ? getPostScriptName(fontId, weight) : fontId;
|
|
152
154
|
result[variant] = {
|
|
153
155
|
fontSize: parseTypographyValue(style.fontSize.base),
|
|
154
156
|
lineHeight: parseTypographyValue(style.lineHeight.base),
|
|
@@ -161,7 +163,7 @@ function generateTypography(typographyConfig, fontConfig) {
|
|
|
161
163
|
}
|
|
162
164
|
function generateFontAliases(fontConfig) {
|
|
163
165
|
const result = {};
|
|
164
|
-
for (const [alias, fontId] of Object.entries(fontConfig)) if (fontId
|
|
166
|
+
for (const [alias, fontId] of Object.entries(fontConfig)) if (isWebFontID(fontId)) {
|
|
165
167
|
const defaultWeight = FONT_DECLARATIONS_MAP[fontId].defaults.fontWeight;
|
|
166
168
|
result[alias] = getPostScriptName(fontId, defaultWeight);
|
|
167
169
|
} else result[alias] = fontId;
|
|
@@ -201,7 +203,7 @@ function resolveTypographyStyles(variantName, typography, config) {
|
|
|
201
203
|
if (typeof letterSpacing === "number") result.letterSpacing = letterSpacing;
|
|
202
204
|
if (typeof fontFamily === "string") {
|
|
203
205
|
const fontId = config.font[fontFamily] ?? fontFamily;
|
|
204
|
-
if (fontId
|
|
206
|
+
if (isWebFontID(fontId)) result.fontFamily = getPostScriptName(fontId, typeof fontWeight === "number" ? fontWeight : 400);
|
|
205
207
|
else result.fontFamily = fontId;
|
|
206
208
|
}
|
|
207
209
|
return result;
|