@evlop/native-components 1.0.273 → 1.0.274

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.
@@ -104,7 +104,7 @@ const RenderBlocks = ({ blocks, disableScrollview = false, animatedScrollPostion
104
104
  }
105
105
  return react_1.default.createElement(react_1.default.Fragment, null,
106
106
  virtualizedListServices,
107
- react_1.default.createElement(RenderBlocksAsVirtualizedList_1.default, { key: "flatlist-list", animatedScrollPostion: animatedScrollPostion, onEndReached: onEndReached, items: listItems }));
107
+ react_1.default.createElement(RenderBlocksAsVirtualizedList_1.default, { key: "virtualized-list", animatedScrollPostion: animatedScrollPostion, onEndReached: onEndReached, items: listItems }));
108
108
  };
109
109
  exports.RenderBlocks = RenderBlocks;
110
110
  exports.default = exports.RenderBlocks;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/RenderBlocks/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/RenderBlocks/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { Theme } from "@evlop/commons";
2
+ declare type FontWeight = keyof Theme["fontWeights"];
3
+ interface FontRegistration {
4
+ /** Base family name as embedded in the font file, e.g. "Inter" */
5
+ familyName: string;
6
+ /**
7
+ * Optional per-weight overrides for the resolved React Native font family
8
+ * string. Provide both `normal` and `italic` variants per weight.
9
+ * Any omitted weight falls back to the default naming convention:
10
+ * normal → `${familyName}-${weight}` (Regular → `${familyName}-Regular`)
11
+ * italic → `${familyName}-${weight}Italic` (Regular → `${familyName}-Italic`)
12
+ */
13
+ weights?: Partial<Record<FontWeight, {
14
+ normal: string;
15
+ italic: string;
16
+ }>>;
17
+ }
18
+ declare class CustomFontManager {
19
+ private registry;
20
+ /**
21
+ * Register a font family. Call this once during app bootstrap, before
22
+ * any component that uses the font is rendered.
23
+ *
24
+ * @param name - Logical name used to look up the font (e.g. "primary")
25
+ * @param config - Registration config with familyName and optional weight map
26
+ */
27
+ registerFont(name: string, config: FontRegistration): void;
28
+ /**
29
+ * Returns the logical names of all registered fonts.
30
+ */
31
+ getAvailableFontFamilies(): string[];
32
+ /**
33
+ * Resolves the React Native font family string for a given logical font
34
+ * name, weight, and italic flag.
35
+ *
36
+ * Returns `undefined` if the font is not registered, letting React Native
37
+ * fall back to the system font.
38
+ *
39
+ * @param name - Logical font name as passed to `registerFont`
40
+ * @param fontWeight - One of the FontWeight variants
41
+ * @param italic - Whether to use the italic variant (default: false)
42
+ */
43
+ /**
44
+ * Returns `true` if the given name has been registered as a custom font.
45
+ *
46
+ * @param name - Logical font name as passed to `registerFont`
47
+ */
48
+ isCustomFont(name: string): boolean;
49
+ resolveFontFamily(name: string, fontWeight: FontWeight, italic?: boolean): string | undefined;
50
+ }
51
+ export declare const customFontManager: CustomFontManager;
52
+ export {};
53
+ //# sourceMappingURL=customFontManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customFontManager.d.ts","sourceRoot":"","sources":["../../../../src/Text/customFontManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,aAAK,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,CAAA;AAE5C,UAAU,gBAAgB;IACxB,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CAC3E;AAcD,cAAM,iBAAiB;IACrB,OAAO,CAAC,QAAQ,CAAuC;IAEvD;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAI1D;;OAEG;IACH,wBAAwB,IAAI,MAAM,EAAE;IAIpC;;;;;;;;;;OAUG;IACH;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAInC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAQ,GAAG,MAAM,GAAG,SAAS;CAiB5F;AAED,eAAO,MAAM,iBAAiB,mBAA0B,CAAC"}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.customFontManager = void 0;
4
+ const DEFAULT_WEIGHT_SUFFIXES = {
5
+ Thin: { normal: 'Thin', italic: 'ThinItalic' },
6
+ UltraLight: { normal: 'UltraLight', italic: 'UltraLightItalic' },
7
+ Light: { normal: 'Light', italic: 'LightItalic' },
8
+ Regular: { normal: 'Regular', italic: 'Italic' },
9
+ Medium: { normal: 'Medium', italic: 'MediumItalic' },
10
+ Semibold: { normal: 'Semibold', italic: 'SemiboldItalic' },
11
+ Bold: { normal: 'Bold', italic: 'BoldItalic' },
12
+ Heavy: { normal: 'Heavy', italic: 'HeavyItalic' },
13
+ Black: { normal: 'Black', italic: 'BlackItalic' },
14
+ };
15
+ class CustomFontManager {
16
+ constructor() {
17
+ this.registry = new Map();
18
+ }
19
+ /**
20
+ * Register a font family. Call this once during app bootstrap, before
21
+ * any component that uses the font is rendered.
22
+ *
23
+ * @param name - Logical name used to look up the font (e.g. "primary")
24
+ * @param config - Registration config with familyName and optional weight map
25
+ */
26
+ registerFont(name, config) {
27
+ this.registry.set(name, config);
28
+ }
29
+ /**
30
+ * Returns the logical names of all registered fonts.
31
+ */
32
+ getAvailableFontFamilies() {
33
+ return Array.from(this.registry.keys());
34
+ }
35
+ /**
36
+ * Resolves the React Native font family string for a given logical font
37
+ * name, weight, and italic flag.
38
+ *
39
+ * Returns `undefined` if the font is not registered, letting React Native
40
+ * fall back to the system font.
41
+ *
42
+ * @param name - Logical font name as passed to `registerFont`
43
+ * @param fontWeight - One of the FontWeight variants
44
+ * @param italic - Whether to use the italic variant (default: false)
45
+ */
46
+ /**
47
+ * Returns `true` if the given name has been registered as a custom font.
48
+ *
49
+ * @param name - Logical font name as passed to `registerFont`
50
+ */
51
+ isCustomFont(name) {
52
+ return this.registry.has(name);
53
+ }
54
+ resolveFontFamily(name, fontWeight, italic = false) {
55
+ const registration = this.registry.get(name);
56
+ if (!registration) {
57
+ return undefined;
58
+ }
59
+ const { familyName, weights } = registration;
60
+ const override = weights === null || weights === void 0 ? void 0 : weights[fontWeight];
61
+ if (override) {
62
+ return italic ? override.italic : override.normal;
63
+ }
64
+ const suffix = DEFAULT_WEIGHT_SUFFIXES[fontWeight];
65
+ const variant = italic ? suffix.italic : suffix.normal;
66
+ return `${familyName}-${variant}`;
67
+ }
68
+ }
69
+ exports.customFontManager = new CustomFontManager();
70
+ //# sourceMappingURL=customFontManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customFontManager.js","sourceRoot":"","sources":["../../../../src/Text/customFontManager.ts"],"names":[],"mappings":";;;AAiBA,MAAM,uBAAuB,GAA2D;IACtF,IAAI,EAAQ,EAAE,MAAM,EAAE,MAAM,EAAQ,MAAM,EAAE,YAAY,EAAQ;IAChE,UAAU,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,kBAAkB,EAAE;IAChE,KAAK,EAAO,EAAE,MAAM,EAAE,OAAO,EAAO,MAAM,EAAE,aAAa,EAAO;IAChE,OAAO,EAAK,EAAE,MAAM,EAAE,SAAS,EAAK,MAAM,EAAE,QAAQ,EAAY;IAChE,MAAM,EAAM,EAAE,MAAM,EAAE,QAAQ,EAAM,MAAM,EAAE,cAAc,EAAM;IAChE,QAAQ,EAAI,EAAE,MAAM,EAAE,UAAU,EAAI,MAAM,EAAE,gBAAgB,EAAI;IAChE,IAAI,EAAQ,EAAE,MAAM,EAAE,MAAM,EAAQ,MAAM,EAAE,YAAY,EAAQ;IAChE,KAAK,EAAO,EAAE,MAAM,EAAE,OAAO,EAAO,MAAM,EAAE,aAAa,EAAO;IAChE,KAAK,EAAO,EAAE,MAAM,EAAE,OAAO,EAAO,MAAM,EAAE,aAAa,EAAO;CACjE,CAAC;AAEF,MAAM,iBAAiB;IAAvB;QACU,aAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAyDzD,CAAC;IAvDC;;;;;;OAMG;IACH,YAAY,CAAC,IAAY,EAAE,MAAwB;QACjD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,wBAAwB;QACtB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;OAUG;IACH;;;;OAIG;IACH,YAAY,CAAC,IAAY;QACvB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,UAAsB,EAAE,MAAM,GAAG,KAAK;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,YAAY,EAAE;YACjB,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;QAC7C,MAAM,QAAQ,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,UAAU,CAAC,CAAC;QAEvC,IAAI,QAAQ,EAAE;YACZ,OAAO,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;SACnD;QAED,MAAM,MAAM,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QACvD,OAAO,GAAG,UAAU,IAAI,OAAO,EAAE,CAAC;IACpC,CAAC;CACF;AAEY,QAAA,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC"}
@@ -2,6 +2,7 @@ import { ComponentWithSettings, Theme } from '@evlop/commons';
2
2
  import React from 'react';
3
3
  import { TextProps as RNTextProps } from 'react-native';
4
4
  import { BackgroundProps, BorderProps, ColorProps, LayoutProps, SpaceProps, TypographyProps } from 'styled-system';
5
+ import { customFontManager } from './customFontManager';
5
6
  declare type TextVariantProp = {
6
7
  variant?: string;
7
8
  };
@@ -13,5 +14,6 @@ export declare type BaseTextProps = NativeTextProps & {
13
14
  };
14
15
  export declare const BaseText: React.ComponentType<BaseTextProps>;
15
16
  export declare const Text: ComponentWithSettings<BaseTextProps>;
17
+ export { customFontManager };
16
18
  export default Text;
17
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Text/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,EAEN,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAkB,SAAS,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EAAc,eAAe,EAAU,WAAW,EAAS,UAAU,EAAiC,WAAW,EAAoC,UAAU,EAAqB,eAAe,EAAW,MAAM,eAAe,CAAC;AAM3O,aAAK,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5C,aAAK,eAAe,GAAG,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA4ClN,oBAAY,aAAa,GAAG,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAMnE,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAcvD,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,aAAa,CAgC1C,CAAC;AAEb,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Text/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,EAEN,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAkB,SAAS,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EAAc,eAAe,EAAU,WAAW,EAAS,UAAU,EAAiC,WAAW,EAAoC,UAAU,EAAa,eAAe,EAAW,MAAM,eAAe,CAAC;AACnO,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAMxD,aAAK,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5C,aAAK,eAAe,GAAG,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA2DlN,oBAAY,aAAa,GAAG,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAMnE,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAcvD,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,aAAa,CAgC1C,CAAC;AAEb,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,eAAe,IAAI,CAAC"}
@@ -14,13 +14,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.Text = exports.BaseText = void 0;
17
+ exports.customFontManager = exports.Text = exports.BaseText = void 0;
18
18
  const commons_1 = require("@evlop/commons");
19
19
  const lodash_1 = require("lodash");
20
20
  const react_1 = __importDefault(require("react"));
21
21
  const react_native_1 = require("react-native");
22
22
  const native_1 = __importDefault(require("styled-components/native"));
23
23
  const styled_system_1 = require("styled-system");
24
+ const customFontManager_1 = require("./customFontManager");
25
+ Object.defineProperty(exports, "customFontManager", { enumerable: true, get: function () { return customFontManager_1.customFontManager; } });
24
26
  const textVariant = (0, styled_system_1.variant)({
25
27
  scale: 'textVariants',
26
28
  });
@@ -38,24 +40,30 @@ const fontSize = ({ fontSize = 'md', fontScale = 1, lineHeight = 'md', theme })
38
40
  }
39
41
  return { fontSize: fontSizeValue, lineHeight: fontSizeValue * lineHeightValue };
40
42
  };
43
+ const resolveFontFamily = ({ fontFamily: fontFamilyProp, fontWeight: fontWeightProp, fontStyle: fontStyleProp, variant: variantProp, theme }) => {
44
+ var _a, _b;
45
+ const variantStyles = variantProp ? (_b = (_a = theme === null || theme === void 0 ? void 0 : theme.textVariants) === null || _a === void 0 ? void 0 : _a[variantProp]) !== null && _b !== void 0 ? _b : {} : {};
46
+ // explicit props take precedence over variant values
47
+ const fontFamilyValue = fontFamilyProp !== null && fontFamilyProp !== void 0 ? fontFamilyProp : variantStyles.fontFamily;
48
+ const fontWeightValue = fontWeightProp !== null && fontWeightProp !== void 0 ? fontWeightProp : variantStyles.fontWeight;
49
+ const fontStyleValue = fontStyleProp !== null && fontStyleProp !== void 0 ? fontStyleProp : variantStyles.fontStyle;
50
+ const fonts = theme === null || theme === void 0 ? void 0 : theme.fonts;
51
+ const valueToApply = (fonts === null || fonts === void 0 ? void 0 : fonts[fontFamilyValue]) || fontFamilyValue;
52
+ if (!valueToApply || valueToApply === 'system')
53
+ return;
54
+ if (customFontManager_1.customFontManager.isCustomFont(valueToApply)) {
55
+ const customFontFamily = customFontManager_1.customFontManager.resolveFontFamily(valueToApply, fontWeightValue, fontStyleValue === 'italic');
56
+ return customFontFamily ? { fontFamily: customFontFamily } : undefined;
57
+ }
58
+ return { fontFamily: valueToApply };
59
+ };
41
60
  const StyledText = (0, native_1.default)(react_native_1.Text)(({ theme }) => {
42
61
  var _a;
43
62
  return ({
44
63
  // has to be like this for defaulting the color, we cannot override prop as text variant might apply color to it aswell.
45
64
  color: (_a = theme === null || theme === void 0 ? void 0 : theme.colors) === null || _a === void 0 ? void 0 : _a['gray-900'],
46
65
  });
47
- }, textVariant, (0, styled_system_1.system)({
48
- fontFamily: {
49
- property: 'fontFamily',
50
- scale: 'fonts',
51
- transform: (value, scale) => {
52
- const valueToApply = scale[value] || value;
53
- if (valueToApply === 'system')
54
- return;
55
- return valueToApply;
56
- },
57
- },
58
- }), styled_system_1.border, styled_system_1.layout, styled_system_1.background, styled_system_1.color, fontSize, styled_system_1.fontWeight, styled_system_1.letterSpacing, styled_system_1.fontStyle, styled_system_1.textAlign, // these are typography from styled-system except fontFamily, lineHeight is handled by fontSize
66
+ }, textVariant, resolveFontFamily, styled_system_1.border, styled_system_1.layout, styled_system_1.background, styled_system_1.color, fontSize, styled_system_1.fontWeight, styled_system_1.letterSpacing, styled_system_1.fontStyle, styled_system_1.textAlign, // these are typography from styled-system except fontFamily, lineHeight is handled by fontSize
59
67
  styled_system_1.space);
60
68
  const handlebarTemplateRegex = /{{[^{}]+}}/;
61
69
  const testHandlebarTemplate = (0, lodash_1.memoize)((content) => typeof content === 'string' && handlebarTemplateRegex.test(content));
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Text/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/Text/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { Theme } from "@evlop/commons";
2
+ declare type FontWeight = keyof Theme["fontWeights"];
3
+ interface FontRegistration {
4
+ /** Base family name as embedded in the font file, e.g. "Inter" */
5
+ familyName: string;
6
+ /**
7
+ * Optional per-weight overrides for the resolved React Native font family
8
+ * string. Provide both `normal` and `italic` variants per weight.
9
+ * Any omitted weight falls back to the default naming convention:
10
+ * normal → `${familyName}-${weight}` (Regular → `${familyName}-Regular`)
11
+ * italic → `${familyName}-${weight}Italic` (Regular → `${familyName}-Italic`)
12
+ */
13
+ weights?: Partial<Record<FontWeight, {
14
+ normal: string;
15
+ italic: string;
16
+ }>>;
17
+ }
18
+ declare class CustomFontManager {
19
+ private registry;
20
+ /**
21
+ * Register a font family. Call this once during app bootstrap, before
22
+ * any component that uses the font is rendered.
23
+ *
24
+ * @param name - Logical name used to look up the font (e.g. "primary")
25
+ * @param config - Registration config with familyName and optional weight map
26
+ */
27
+ registerFont(name: string, config: FontRegistration): void;
28
+ /**
29
+ * Returns the logical names of all registered fonts.
30
+ */
31
+ getAvailableFontFamilies(): string[];
32
+ /**
33
+ * Resolves the React Native font family string for a given logical font
34
+ * name, weight, and italic flag.
35
+ *
36
+ * Returns `undefined` if the font is not registered, letting React Native
37
+ * fall back to the system font.
38
+ *
39
+ * @param name - Logical font name as passed to `registerFont`
40
+ * @param fontWeight - One of the FontWeight variants
41
+ * @param italic - Whether to use the italic variant (default: false)
42
+ */
43
+ /**
44
+ * Returns `true` if the given name has been registered as a custom font.
45
+ *
46
+ * @param name - Logical font name as passed to `registerFont`
47
+ */
48
+ isCustomFont(name: string): boolean;
49
+ resolveFontFamily(name: string, fontWeight: FontWeight, italic?: boolean): string | undefined;
50
+ }
51
+ export declare const customFontManager: CustomFontManager;
52
+ export {};
53
+ //# sourceMappingURL=customFontManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customFontManager.d.ts","sourceRoot":"","sources":["../../../../src/Text/customFontManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,aAAK,UAAU,GAAG,MAAM,KAAK,CAAC,aAAa,CAAC,CAAA;AAE5C,UAAU,gBAAgB;IACxB,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;CAC3E;AAcD,cAAM,iBAAiB;IACrB,OAAO,CAAC,QAAQ,CAAuC;IAEvD;;;;;;OAMG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAI1D;;OAEG;IACH,wBAAwB,IAAI,MAAM,EAAE;IAIpC;;;;;;;;;;OAUG;IACH;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAInC,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,UAAQ,GAAG,MAAM,GAAG,SAAS;CAiB5F;AAED,eAAO,MAAM,iBAAiB,mBAA0B,CAAC"}
@@ -2,6 +2,7 @@ import { ComponentWithSettings, Theme } from '@evlop/commons';
2
2
  import React from 'react';
3
3
  import { TextProps as RNTextProps } from 'react-native';
4
4
  import { BackgroundProps, BorderProps, ColorProps, LayoutProps, SpaceProps, TypographyProps } from 'styled-system';
5
+ import { customFontManager } from './customFontManager';
5
6
  declare type TextVariantProp = {
6
7
  variant?: string;
7
8
  };
@@ -13,5 +14,6 @@ export declare type BaseTextProps = NativeTextProps & {
13
14
  };
14
15
  export declare const BaseText: React.ComponentType<BaseTextProps>;
15
16
  export declare const Text: ComponentWithSettings<BaseTextProps>;
17
+ export { customFontManager };
16
18
  export default Text;
17
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Text/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,EAEN,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAkB,SAAS,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EAAc,eAAe,EAAU,WAAW,EAAS,UAAU,EAAiC,WAAW,EAAoC,UAAU,EAAqB,eAAe,EAAW,MAAM,eAAe,CAAC;AAM3O,aAAK,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5C,aAAK,eAAe,GAAG,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA4ClN,oBAAY,aAAa,GAAG,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAMnE,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAcvD,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,aAAa,CAgC1C,CAAC;AAEb,eAAe,IAAI,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/Text/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EAErB,KAAK,EAEN,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAkB,SAAS,IAAI,WAAW,EAAE,MAAM,cAAc,CAAC;AAExE,OAAO,EAAc,eAAe,EAAU,WAAW,EAAS,UAAU,EAAiC,WAAW,EAAoC,UAAU,EAAa,eAAe,EAAW,MAAM,eAAe,CAAC;AACnO,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAMxD,aAAK,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5C,aAAK,eAAe,GAAG,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,eAAe,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AA2DlN,oBAAY,aAAa,GAAG,eAAe,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAMnE,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,aAAa,CAAC,aAAa,CAcvD,CAAC;AAEF,eAAO,MAAM,IAAI,EAAE,qBAAqB,CAAC,aAAa,CAgC1C,CAAC;AAEb,OAAO,EAAE,iBAAiB,EAAE,CAAC;AAE7B,eAAe,IAAI,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evlop/native-components",
3
- "version": "1.0.273",
3
+ "version": "1.0.274",
4
4
  "description": "",
5
5
  "main": "dist/cjs/main.js",
6
6
  "types": "dist/types/main.d.ts",