@expo/html-elements 0.0.0 → 0.0.1-canary-20231125-d600e44

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.
Files changed (88) hide show
  1. package/CHANGELOG.md +61 -0
  2. package/README.md +124 -53
  3. package/babel/__tests__/__snapshots__/transform.test.js.snap +55 -0
  4. package/babel/__tests__/fixtures/one.js +29 -0
  5. package/babel/__tests__/transform.test.js +96 -0
  6. package/babel/jest.config.js +12 -0
  7. package/babel.js +37 -3
  8. package/build/Elements.d.ts +1 -0
  9. package/build/Elements.d.ts.map +1 -0
  10. package/build/css/createSafeStyledView.d.ts +2 -0
  11. package/build/css/createSafeStyledView.d.ts.map +1 -0
  12. package/build/css/createSafeStyledView.js +5 -0
  13. package/build/css/createSafeStyledView.js.map +1 -0
  14. package/build/css/createSafeStyledView.native.d.ts +3 -0
  15. package/build/css/createSafeStyledView.native.d.ts.map +1 -0
  16. package/build/css/createSafeStyledView.native.js +10 -0
  17. package/build/css/createSafeStyledView.native.js.map +1 -0
  18. package/build/css/filterStyles.d.ts +2 -0
  19. package/build/css/filterStyles.d.ts.map +1 -0
  20. package/build/css/filterStyles.js +83 -0
  21. package/build/css/filterStyles.js.map +1 -0
  22. package/build/css/units.d.ts +1 -0
  23. package/build/css/units.d.ts.map +1 -0
  24. package/build/elements/Anchor.d.ts +3 -4
  25. package/build/elements/Anchor.d.ts.map +1 -0
  26. package/build/elements/Anchor.js +8 -4
  27. package/build/elements/Anchor.js.map +1 -1
  28. package/build/elements/Headings.d.ts +1 -0
  29. package/build/elements/Headings.d.ts.map +1 -0
  30. package/build/elements/Headings.js +26 -3
  31. package/build/elements/Headings.js.map +1 -1
  32. package/build/elements/Layout.d.ts +2 -0
  33. package/build/elements/Layout.d.ts.map +1 -0
  34. package/build/elements/Layout.js +9 -8
  35. package/build/elements/Layout.js.map +1 -1
  36. package/build/elements/Lists.d.ts +4 -1
  37. package/build/elements/Lists.d.ts.map +1 -0
  38. package/build/elements/Lists.js +8 -8
  39. package/build/elements/Lists.js.map +1 -1
  40. package/build/elements/Rules.d.ts +1 -0
  41. package/build/elements/Rules.d.ts.map +1 -0
  42. package/build/elements/Rules.js +1 -1
  43. package/build/elements/Rules.js.map +1 -1
  44. package/build/elements/Rules.web.d.ts +1 -0
  45. package/build/elements/Rules.web.d.ts.map +1 -0
  46. package/build/elements/Table.d.ts +1 -0
  47. package/build/elements/Table.d.ts.map +1 -0
  48. package/build/elements/Table.js +8 -8
  49. package/build/elements/Table.js.map +1 -1
  50. package/build/elements/Table.web.d.ts +10 -11
  51. package/build/elements/Table.web.d.ts.map +1 -0
  52. package/build/elements/Table.web.js +25 -33
  53. package/build/elements/Table.web.js.map +1 -1
  54. package/build/elements/Text.d.ts +7 -10
  55. package/build/elements/Text.d.ts.map +1 -0
  56. package/build/elements/Text.js +20 -16
  57. package/build/elements/Text.js.map +1 -1
  58. package/build/elements/Text.types.d.ts +9 -4
  59. package/build/elements/Text.types.d.ts.map +1 -0
  60. package/build/elements/Text.types.js +1 -0
  61. package/build/elements/Text.types.js.map +1 -1
  62. package/build/primitives/Image.d.ts +22 -0
  63. package/build/primitives/Image.d.ts.map +1 -0
  64. package/build/primitives/Image.js +5 -0
  65. package/build/primitives/Image.js.map +1 -0
  66. package/build/primitives/RNWView.d.ts +17 -0
  67. package/build/primitives/RNWView.d.ts.map +1 -0
  68. package/build/primitives/RNWView.js +118 -0
  69. package/build/primitives/RNWView.js.map +1 -0
  70. package/build/primitives/Table.d.ts +3 -2
  71. package/build/primitives/Table.d.ts.map +1 -0
  72. package/build/primitives/Text.d.ts +31 -8
  73. package/build/primitives/Text.d.ts.map +1 -0
  74. package/build/primitives/Text.js +3 -2
  75. package/build/primitives/Text.js.map +1 -1
  76. package/build/primitives/View.d.ts +11 -9
  77. package/build/primitives/View.d.ts.map +1 -0
  78. package/build/primitives/View.js +9 -3
  79. package/build/primitives/View.js.map +1 -1
  80. package/build/primitives/createDevView.d.ts +4 -0
  81. package/build/primitives/createDevView.d.ts.map +1 -0
  82. package/build/primitives/createDevView.js +41 -0
  83. package/build/primitives/createDevView.js.map +1 -0
  84. package/expo-html-elements-0.0.1-canary-20231125-d600e44.tgz +0 -0
  85. package/package.json +27 -9
  86. package/build/elements/_Text.web.d.ts +0 -23
  87. package/build/elements/_Text.web.js +0 -63
  88. package/build/elements/_Text.web.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RNWView.js","sourceRoot":"","sources":["../../src/primitives/RNWView.tsx"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright (c) Expo.\n * Copyright (c) Nicolas Gallagher.\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport * as React from 'react';\nimport StyleSheet from 'react-native-web/dist/exports/StyleSheet';\nimport TextAncestorContext from 'react-native-web/dist/exports/Text/TextAncestorContext';\nimport createElement from 'react-native-web/dist/exports/createElement';\nimport * as forwardedProps from 'react-native-web/dist/modules/forwardedProps';\nimport pick from 'react-native-web/dist/modules/pick';\nimport useElementLayout from 'react-native-web/dist/modules/useElementLayout';\nimport { useLocaleContext, getLocaleDirection } from 'react-native-web/dist/modules/useLocale';\nimport useMergeRefs from 'react-native-web/dist/modules/useMergeRefs';\nimport usePlatformMethods from 'react-native-web/dist/modules/usePlatformMethods';\nimport useResponderEvents from 'react-native-web/dist/modules/useResponderEvents';\nimport { PlatformMethods, ViewProps } from 'react-native-web/dist/types';\n\nconst forwardPropsList = Object.assign(\n {},\n forwardedProps.defaultProps,\n forwardedProps.accessibilityProps,\n forwardedProps.clickProps,\n forwardedProps.defaultProps,\n forwardedProps.accessibilityProps,\n forwardedProps.clickProps,\n forwardedProps.focusProps,\n forwardedProps.keyboardProps,\n forwardedProps.mouseProps,\n forwardedProps.touchProps,\n forwardedProps.styleProps,\n {\n href: true,\n lang: true,\n onScroll: true,\n onWheel: true,\n pointerEvents: true,\n }\n);\nconst pickProps = (props) => pick(props, forwardPropsList);\n\n/**\n * This is the View from react-native-web copied out in order to supply a custom `__element` property.\n * In the past, you could use `createElement` to create an element with a custom HTML element, but this changed\n * somewhere between 0.14...0.17.\n */\n\nconst View = React.forwardRef<ViewProps, HTMLElement & PlatformMethods>((props, forwardedRef) => {\n const {\n __element,\n hrefAttrs,\n onLayout,\n onMoveShouldSetResponder,\n onMoveShouldSetResponderCapture,\n onResponderEnd,\n onResponderGrant,\n onResponderMove,\n onResponderReject,\n onResponderRelease,\n onResponderStart,\n onResponderTerminate,\n onResponderTerminationRequest,\n onScrollShouldSetResponder,\n onScrollShouldSetResponderCapture,\n onSelectionChangeShouldSetResponder,\n onSelectionChangeShouldSetResponderCapture,\n onStartShouldSetResponder,\n onStartShouldSetResponderCapture,\n ...rest\n } = props as any;\n\n // if (process.env.NODE_ENV !== 'production') {\n // React.Children.toArray(props.children).forEach((item) => {\n // if (typeof item === 'string') {\n // console.error(`Unexpected text node: ${item}. A text node cannot be a child of a <View>.`);\n // }\n // });\n // }\n\n const hasTextAncestor = React.useContext(TextAncestorContext);\n const hostRef = React.useRef(null);\n const { direction: contextDirection } = useLocaleContext();\n\n useElementLayout(hostRef, onLayout);\n useResponderEvents(hostRef, {\n onMoveShouldSetResponder,\n onMoveShouldSetResponderCapture,\n onResponderEnd,\n onResponderGrant,\n onResponderMove,\n onResponderReject,\n onResponderRelease,\n onResponderStart,\n onResponderTerminate,\n onResponderTerminationRequest,\n onScrollShouldSetResponder,\n onScrollShouldSetResponderCapture,\n onSelectionChangeShouldSetResponder,\n onSelectionChangeShouldSetResponderCapture,\n onStartShouldSetResponder,\n onStartShouldSetResponderCapture,\n });\n\n let component = __element ?? 'div';\n\n const langDirection = props.lang != null ? getLocaleDirection(props.lang) : null;\n const componentDirection = props.dir || langDirection;\n const writingDirection = componentDirection || contextDirection;\n\n const supportedProps = pickProps(rest);\n supportedProps.dir = componentDirection;\n supportedProps.style = [styles.view$raw, hasTextAncestor && styles.inline, props.style];\n if (props.href != null) {\n component = 'a';\n if (hrefAttrs != null) {\n const { download, rel, target } = hrefAttrs;\n if (download != null) {\n supportedProps.download = download;\n }\n if (rel != null) {\n supportedProps.rel = rel;\n }\n if (typeof target === 'string') {\n supportedProps.target = target.charAt(0) !== '_' ? '_' + target : target;\n }\n }\n }\n\n const platformMethodsRef = usePlatformMethods(supportedProps);\n const setRef = useMergeRefs(hostRef, platformMethodsRef, forwardedRef);\n\n supportedProps.ref = setRef;\n\n return createElement(component, supportedProps, { writingDirection });\n});\n\nif (__DEV__) {\n View.displayName = 'View';\n}\n\nconst styles = StyleSheet.create({\n view$raw: {\n alignItems: 'stretch',\n backgroundColor: 'transparent',\n border: '0 solid black',\n boxSizing: 'border-box',\n display: 'flex',\n flexBasis: 'auto',\n flexDirection: 'column',\n flexShrink: 0,\n listStyle: 'none',\n margin: 0,\n minHeight: 0,\n minWidth: 0,\n padding: 0,\n position: 'relative',\n textDecoration: 'none',\n zIndex: 0,\n },\n inline: {\n display: 'inline-flex',\n },\n});\n\nexport default View;\n"]}
@@ -1,7 +1,7 @@
1
1
  import { ClassAttributes, ComponentProps, ComponentType } from 'react';
2
2
  import Text from './Text';
3
- declare type NativeTextProps = ComponentProps<typeof Text> & ClassAttributes<typeof Text>;
4
- export declare type TableTextProps = NativeTextProps & {
3
+ type NativeTextProps = ComponentProps<typeof Text> & ClassAttributes<typeof Text>;
4
+ export type TableTextProps = NativeTextProps & {
5
5
  /** @platform web */
6
6
  colSpan?: number | string;
7
7
  /** @platform web */
@@ -9,3 +9,4 @@ export declare type TableTextProps = NativeTextProps & {
9
9
  };
10
10
  export declare const TableText: ComponentType<TableTextProps>;
11
11
  export {};
12
+ //# sourceMappingURL=Table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.d.ts","sourceRoot":"","sources":["../../src/primitives/Table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEvE,OAAO,IAAI,MAAM,QAAQ,CAAC;AAE1B,KAAK,eAAe,GAAG,cAAc,CAAC,OAAO,IAAI,CAAC,GAAG,eAAe,CAAC,OAAO,IAAI,CAAC,CAAC;AAElF,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG;IAC7C,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC3B,CAAC;AAEF,eAAO,MAAM,SAAS,+BAAwC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { ClassAttributes, ComponentProps, ComponentType } from 'react';
2
- import { AccessibilityRole, StyleProp, Text as NativeText, TextStyle as NativeTextStyle } from 'react-native';
3
- declare type NativeTextProps = ComponentProps<typeof NativeText> & ClassAttributes<typeof NativeText>;
2
+ import { StyleProp, Text as NativeText, TextStyle as NativeTextStyle } from 'react-native';
3
+ import { WebViewStyle } from './View';
4
+ type NativeTextProps = ComponentProps<typeof NativeText> & ClassAttributes<typeof NativeText>;
4
5
  export interface WebTextStyle {
5
6
  /** string is only available on web */
6
7
  fontSize?: NativeTextStyle['fontSize'] | string;
@@ -21,13 +22,35 @@ export interface WebTextStyle {
21
22
  /** @platform web */
22
23
  wordWrap?: string;
23
24
  }
24
- export declare type TextStyle = Omit<NativeTextStyle, 'fontSize' | 'lineHeight'> & WebTextStyle;
25
- export declare type WebTextProps = {
25
+ export type TextStyle = Omit<NativeTextStyle, 'position' | 'fontSize' | 'lineHeight'> & WebTextStyle & WebViewStyle;
26
+ export type WebTextProps = {
26
27
  style?: StyleProp<TextStyle>;
27
28
  /** @platform web */
28
29
  tabIndex?: number;
29
- accessibilityRole?: 'listitem' | AccessibilityRole;
30
+ /** @platform web */
31
+ 'aria-level'?: number;
32
+ /**
33
+ * @deprecated use `aria-level` instead.
34
+ * @platform web
35
+ */
36
+ accessibilityLevel?: number;
37
+ /** @platform web */
38
+ href?: string;
39
+ /** @deprecated use the prop `hrefAttrs={{ target: '...' }}` instead. */
40
+ target?: string;
41
+ /** @platform web */
42
+ hrefAttrs?: {
43
+ /** @platform web */
44
+ target?: string;
45
+ /** @platform web */
46
+ rel?: string;
47
+ /** @platform web */
48
+ download?: boolean | string;
49
+ };
50
+ /** @platform web */
51
+ lang?: string;
30
52
  };
31
- export declare type TextProps = Omit<NativeTextProps, 'style' | 'accessibilityRole'> & WebTextProps;
32
- declare const Text: ComponentType<TextProps>;
33
- export default Text;
53
+ export type TextProps = Omit<NativeTextProps, 'style'> & WebTextProps;
54
+ declare const _default: ComponentType<TextProps>;
55
+ export default _default;
56
+ //# sourceMappingURL=Text.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Text.d.ts","sourceRoot":"","sources":["../../src/primitives/Text.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,UAAU,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,cAAc,CAAC;AAE3F,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAKtC,KAAK,eAAe,GAAG,cAAc,CAAC,OAAO,UAAU,CAAC,GAAG,eAAe,CAAC,OAAO,UAAU,CAAC,CAAC;AAE9F,MAAM,WAAW,YAAY;IAC3B,sCAAsC;IACtC,QAAQ,CAAC,EAAE,eAAe,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC;IAChD,sCAAsC;IACtC,UAAU,CAAC,EAAE,eAAe,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC;IACpD,oBAAoB;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,oBAAoB;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oBAAoB;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,UAAU,GAAG,UAAU,GAAG,YAAY,CAAC,GACnF,YAAY,GACZ,YAAY,CAAC;AAEf,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,oBAAoB;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oBAAoB;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,oBAAoB;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,SAAS,CAAC,EAAE;QACV,oBAAoB;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,oBAAoB;QACpB,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,oBAAoB;QACpB,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;KAC7B,CAAC;IACF,oBAAoB;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC;;AAItE,wBAAsE"}
@@ -1,4 +1,5 @@
1
- import { Text as NativeText, } from 'react-native';
1
+ import { Text as NativeText } from 'react-native';
2
+ import { createSafeStyledView } from '../css/createSafeStyledView';
2
3
  const Text = NativeText;
3
- export default Text;
4
+ export default createSafeStyledView(Text);
4
5
  //# sourceMappingURL=Text.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../src/primitives/Text.tsx"],"names":[],"mappings":"AACA,OAAO,EAGL,IAAI,IAAI,UAAU,GAEnB,MAAM,cAAc,CAAC;AAsCtB,MAAM,IAAI,GAAG,UAAsC,CAAC;AAEpD,eAAe,IAAI,CAAC","sourcesContent":["import { ClassAttributes, ComponentProps, ComponentType } from 'react';\nimport {\n AccessibilityRole,\n StyleProp,\n Text as NativeText,\n TextStyle as NativeTextStyle,\n} from 'react-native';\n\n// https://github.com/necolas/react-native-web/issues/832\n\ntype NativeTextProps = ComponentProps<typeof NativeText> & ClassAttributes<typeof NativeText>;\n\nexport interface WebTextStyle {\n /** string is only available on web */\n fontSize?: NativeTextStyle['fontSize'] | string;\n /** string is only available on web */\n lineHeight?: NativeTextStyle['lineHeight'] | string;\n /** @platform web */\n fontFeatureSettings?: string;\n /** @platform web */\n textIndent?: string;\n /** @platform web */\n textOverflow?: string;\n /** @platform web */\n textRendering?: string;\n /** @platform web */\n textTransform?: string;\n /** @platform web */\n unicodeBidi?: string;\n /** @platform web */\n wordWrap?: string;\n}\n\nexport type TextStyle = Omit<NativeTextStyle, 'fontSize' | 'lineHeight'> & WebTextStyle;\n\nexport type WebTextProps = {\n style?: StyleProp<TextStyle>;\n /** @platform web */\n tabIndex?: number;\n accessibilityRole?: 'listitem' | AccessibilityRole;\n};\n\nexport type TextProps = Omit<NativeTextProps, 'style' | 'accessibilityRole'> & WebTextProps;\n\nconst Text = NativeText as ComponentType<TextProps>;\n\nexport default Text;\n"]}
1
+ {"version":3,"file":"Text.js","sourceRoot":"","sources":["../../src/primitives/Text.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,IAAI,IAAI,UAAU,EAAgC,MAAM,cAAc,CAAC;AAG3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AA6DnE,MAAM,IAAI,GAAG,UAAsC,CAAC;AAEpD,eAAe,oBAAoB,CAAC,IAAI,CAA6B,CAAC","sourcesContent":["import { ClassAttributes, ComponentProps, ComponentType } from 'react';\nimport { StyleProp, Text as NativeText, TextStyle as NativeTextStyle } from 'react-native';\n\nimport { WebViewStyle } from './View';\nimport { createSafeStyledView } from '../css/createSafeStyledView';\n\n// https://github.com/necolas/react-native-web/issues/832\n\ntype NativeTextProps = ComponentProps<typeof NativeText> & ClassAttributes<typeof NativeText>;\n\nexport interface WebTextStyle {\n /** string is only available on web */\n fontSize?: NativeTextStyle['fontSize'] | string;\n /** string is only available on web */\n lineHeight?: NativeTextStyle['lineHeight'] | string;\n /** @platform web */\n fontFeatureSettings?: string;\n /** @platform web */\n textIndent?: string;\n /** @platform web */\n textOverflow?: string;\n /** @platform web */\n textRendering?: string;\n /** @platform web */\n textTransform?: string;\n /** @platform web */\n unicodeBidi?: string;\n /** @platform web */\n wordWrap?: string;\n}\n\nexport type TextStyle = Omit<NativeTextStyle, 'position' | 'fontSize' | 'lineHeight'> &\n WebTextStyle &\n WebViewStyle;\n\nexport type WebTextProps = {\n style?: StyleProp<TextStyle>;\n /** @platform web */\n tabIndex?: number;\n /** @platform web */\n 'aria-level'?: number;\n /**\n * @deprecated use `aria-level` instead.\n * @platform web\n */\n accessibilityLevel?: number;\n /** @platform web */\n href?: string;\n /** @deprecated use the prop `hrefAttrs={{ target: '...' }}` instead. */\n target?: string;\n /** @platform web */\n hrefAttrs?: {\n /** @platform web */\n target?: string;\n /** @platform web */\n rel?: string;\n /** @platform web */\n download?: boolean | string;\n };\n /** @platform web */\n lang?: string;\n};\n\nexport type TextProps = Omit<NativeTextProps, 'style'> & WebTextProps;\n\nconst Text = NativeText as ComponentType<TextProps>;\n\nexport default createSafeStyledView(Text) as ComponentType<TextProps>;\n"]}
@@ -1,6 +1,6 @@
1
1
  import { ClassAttributes, ComponentProps, ComponentType } from 'react';
2
- import { StyleProp, View as NativeView, AccessibilityRole, ViewStyle as NativeViewStyle } from 'react-native';
3
- declare type NativeViewProps = ComponentProps<typeof NativeView> & ClassAttributes<typeof NativeView>;
2
+ import { StyleProp, View as NativeView, ViewStyle as NativeViewStyle } from 'react-native';
3
+ type NativeViewProps = ComponentProps<typeof NativeView> & ClassAttributes<typeof NativeView>;
4
4
  /**
5
5
  * https://baconbrix.gitbook.io/react-native-web/primitives/view
6
6
  */
@@ -94,7 +94,7 @@ export interface WebViewStyle {
94
94
  /** @platform web */
95
95
  touchAction?: string;
96
96
  /** @platform web */
97
- transformOrigin?: string;
97
+ transformOrigin?: string | (string | number)[];
98
98
  /** @platform web */
99
99
  transitionDelay?: string;
100
100
  /** @platform web */
@@ -109,12 +109,14 @@ export interface WebViewStyle {
109
109
  visibility?: string;
110
110
  /** @platform web */
111
111
  willChange?: string;
112
+ /** @platform web */
113
+ position?: 'static' | 'relative' | 'absolute' | 'fixed' | 'sticky';
112
114
  }
113
- export declare type ViewStyle = NativeViewStyle & WebViewStyle;
114
- export declare type WebViewProps = {
115
+ export type ViewStyle = Omit<NativeViewStyle, 'position'> & WebViewStyle;
116
+ export type WebViewProps = {
115
117
  style?: StyleProp<ViewStyle>;
116
- accessibilityRole?: 'list' | 'listitem' | 'complementary' | 'contentinfo' | 'region' | 'navigation' | 'main' | 'article' | 'banner' | AccessibilityRole;
117
118
  };
118
- export declare type ViewProps = WebViewProps & Omit<NativeViewProps, 'style' | 'accessibilityRole'>;
119
- declare const View: ComponentType<ViewProps>;
120
- export default View;
119
+ export type ViewProps = WebViewProps & Omit<NativeViewProps, 'style'>;
120
+ declare const _default: ComponentType<ViewProps>;
121
+ export default _default;
122
+ //# sourceMappingURL=View.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../src/primitives/View.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
- import { View as NativeView, } from 'react-native';
2
- const View = NativeView;
3
- export default View;
1
+ import { View as NativeView } from 'react-native';
2
+ import { createDevView } from './createDevView';
3
+ import { createSafeStyledView } from '../css/createSafeStyledView';
4
+ let View = NativeView;
5
+ if (process.env.NODE_ENV !== 'production') {
6
+ // Add better errors and warnings in development builds.
7
+ View = createDevView(NativeView);
8
+ }
9
+ export default createSafeStyledView(View);
4
10
  //# sourceMappingURL=View.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"View.js","sourceRoot":"","sources":["../../src/primitives/View.tsx"],"names":[],"mappings":"AACA,OAAO,EAEL,IAAI,IAAI,UAAU,GAGnB,MAAM,cAAc,CAAC;AAwItB,MAAM,IAAI,GAAG,UAAsC,CAAC;AAEpD,eAAe,IAAI,CAAC","sourcesContent":["import { ClassAttributes, ComponentProps, ComponentType } from 'react';\nimport {\n StyleProp,\n View as NativeView,\n AccessibilityRole,\n ViewStyle as NativeViewStyle,\n} from 'react-native';\n\n// https://github.com/necolas/react-native-web/issues/832\n\ntype NativeViewProps = ComponentProps<typeof NativeView> & ClassAttributes<typeof NativeView>;\n\n/**\n * https://baconbrix.gitbook.io/react-native-web/primitives/view\n */\nexport interface WebViewStyle {\n /** @platform web */\n backdropFilter?: string;\n /** @platform web */\n animationDelay?: string;\n /** @platform web */\n animationDirection?: string;\n /** @platform web */\n animationDuration?: string;\n /** @platform web */\n animationFillMode?: string;\n /** @platform web */\n animationName?: string | any[];\n /** @platform web */\n animationIterationCount?: number | 'infinite';\n /** @platform web */\n animationPlayState?: string;\n /** @platform web */\n animationTimingFunction?: string;\n /** @platform web */\n backgroundAttachment?: string;\n /** @platform web */\n backgroundBlendMode?: string;\n /** @platform web */\n backgroundClip?: string;\n /** @platform web */\n backgroundImage?: string;\n /** @platform web */\n backgroundOrigin?: 'border-box' | 'content-box' | 'padding-box';\n /** @platform web */\n backgroundPosition?: string;\n /** @platform web */\n backgroundRepeat?: string;\n /** @platform web */\n backgroundSize?: string;\n /** @platform web */\n boxShadow?: string;\n /** @platform web */\n boxSizing?: string;\n /** @platform web */\n clip?: string;\n /** @platform web */\n cursor?: string;\n /** @platform web */\n filter?: string;\n /** @platform web */\n gridAutoColumns?: string;\n /** @platform web */\n gridAutoFlow?: string;\n /** @platform web */\n gridAutoRows?: string;\n /** @platform web */\n gridColumnEnd?: string;\n /** @platform web */\n gridColumnGap?: string;\n /** @platform web */\n gridColumnStart?: string;\n /** @platform web */\n gridRowEnd?: string;\n /** @platform web */\n gridRowGap?: string;\n /** @platform web */\n gridRowStart?: string;\n /** @platform web */\n gridTemplateColumns?: string;\n /** @platform web */\n gridTemplateRows?: string;\n /** @platform web */\n gridTemplateAreas?: string;\n /** @platform web */\n outline?: string;\n /** @platform web */\n outlineColor?: string;\n /** @platform web */\n overflowX?: string;\n /** @platform web */\n overflowY?: string;\n /** @platform web */\n overscrollBehavior?: 'auto' | 'contain' | 'none';\n /** @platform web */\n overscrollBehaviorX?: 'auto' | 'contain' | 'none';\n /** @platform web */\n overscrollBehaviorY?: 'auto' | 'contain' | 'none';\n /** @platform web */\n perspective?: string;\n /** @platform web */\n perspectiveOrigin?: string;\n /** @platform web */\n touchAction?: string;\n /** @platform web */\n transformOrigin?: string;\n /** @platform web */\n transitionDelay?: string;\n /** @platform web */\n transitionDuration?: string;\n /** @platform web */\n transitionProperty?: string;\n /** @platform web */\n transitionTimingFunction?: string;\n /** @platform web */\n userSelect?: string;\n /** @platform web */\n visibility?: string;\n /** @platform web */\n willChange?: string;\n}\n\nexport type ViewStyle = NativeViewStyle & WebViewStyle;\n\nexport type WebViewProps = {\n style?: StyleProp<ViewStyle>;\n\n accessibilityRole?:\n | 'list'\n | 'listitem'\n | 'complementary'\n | 'contentinfo'\n | 'region'\n | 'navigation'\n | 'main'\n | 'article'\n | 'banner'\n | AccessibilityRole;\n};\n\nexport type ViewProps = WebViewProps & Omit<NativeViewProps, 'style' | 'accessibilityRole'>;\n\nconst View = NativeView as ComponentType<ViewProps>;\n\nexport default View;\n"]}
1
+ {"version":3,"file":"View.js","sourceRoot":"","sources":["../../src/primitives/View.tsx"],"names":[],"mappings":"AACA,OAAO,EAAa,IAAI,IAAI,UAAU,EAAgC,MAAM,cAAc,CAAC;AAE3F,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AA8HnE,IAAI,IAAI,GAAG,UAAsC,CAAC;AAElD,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE;IACzC,wDAAwD;IACxD,IAAI,GAAG,aAAa,CAAC,UAAU,CAA6B,CAAC;CAC9D;AAED,eAAe,oBAAoB,CAAC,IAAI,CAA6B,CAAC","sourcesContent":["import { ClassAttributes, ComponentProps, ComponentType } from 'react';\nimport { StyleProp, View as NativeView, ViewStyle as NativeViewStyle } from 'react-native';\n\nimport { createDevView } from './createDevView';\nimport { createSafeStyledView } from '../css/createSafeStyledView';\n\n// https://github.com/necolas/react-native-web/issues/832\n\ntype NativeViewProps = ComponentProps<typeof NativeView> & ClassAttributes<typeof NativeView>;\n\n/**\n * https://baconbrix.gitbook.io/react-native-web/primitives/view\n */\nexport interface WebViewStyle {\n /** @platform web */\n backdropFilter?: string;\n /** @platform web */\n animationDelay?: string;\n /** @platform web */\n animationDirection?: string;\n /** @platform web */\n animationDuration?: string;\n /** @platform web */\n animationFillMode?: string;\n /** @platform web */\n animationName?: string | any[];\n /** @platform web */\n animationIterationCount?: number | 'infinite';\n /** @platform web */\n animationPlayState?: string;\n /** @platform web */\n animationTimingFunction?: string;\n /** @platform web */\n backgroundAttachment?: string;\n /** @platform web */\n backgroundBlendMode?: string;\n /** @platform web */\n backgroundClip?: string;\n /** @platform web */\n backgroundImage?: string;\n /** @platform web */\n backgroundOrigin?: 'border-box' | 'content-box' | 'padding-box';\n /** @platform web */\n backgroundPosition?: string;\n /** @platform web */\n backgroundRepeat?: string;\n /** @platform web */\n backgroundSize?: string;\n /** @platform web */\n boxShadow?: string;\n /** @platform web */\n boxSizing?: string;\n /** @platform web */\n clip?: string;\n /** @platform web */\n cursor?: string;\n /** @platform web */\n filter?: string;\n /** @platform web */\n gridAutoColumns?: string;\n /** @platform web */\n gridAutoFlow?: string;\n /** @platform web */\n gridAutoRows?: string;\n /** @platform web */\n gridColumnEnd?: string;\n /** @platform web */\n gridColumnGap?: string;\n /** @platform web */\n gridColumnStart?: string;\n /** @platform web */\n gridRowEnd?: string;\n /** @platform web */\n gridRowGap?: string;\n /** @platform web */\n gridRowStart?: string;\n /** @platform web */\n gridTemplateColumns?: string;\n /** @platform web */\n gridTemplateRows?: string;\n /** @platform web */\n gridTemplateAreas?: string;\n /** @platform web */\n outline?: string;\n /** @platform web */\n outlineColor?: string;\n /** @platform web */\n overflowX?: string;\n /** @platform web */\n overflowY?: string;\n /** @platform web */\n overscrollBehavior?: 'auto' | 'contain' | 'none';\n /** @platform web */\n overscrollBehaviorX?: 'auto' | 'contain' | 'none';\n /** @platform web */\n overscrollBehaviorY?: 'auto' | 'contain' | 'none';\n /** @platform web */\n perspective?: string;\n /** @platform web */\n perspectiveOrigin?: string;\n /** @platform web */\n touchAction?: string;\n /** @platform web */\n transformOrigin?: string | (string | number)[];\n /** @platform web */\n transitionDelay?: string;\n /** @platform web */\n transitionDuration?: string;\n /** @platform web */\n transitionProperty?: string;\n /** @platform web */\n transitionTimingFunction?: string;\n /** @platform web */\n userSelect?: string;\n /** @platform web */\n visibility?: string;\n /** @platform web */\n willChange?: string;\n /** @platform web */\n position?: 'static' | 'relative' | 'absolute' | 'fixed' | 'sticky';\n}\n\nexport type ViewStyle = Omit<NativeViewStyle, 'position'> & WebViewStyle;\n\nexport type WebViewProps = {\n style?: StyleProp<ViewStyle>;\n};\n\nexport type ViewProps = WebViewProps & Omit<NativeViewProps, 'style'>;\n\nlet View = NativeView as ComponentType<ViewProps>;\n\nif (process.env.NODE_ENV !== 'production') {\n // Add better errors and warnings in development builds.\n View = createDevView(NativeView) as ComponentType<ViewProps>;\n}\n\nexport default createSafeStyledView(View) as ComponentType<ViewProps>;\n"]}
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ /** Extend a view with a `children` filter that asserts more helpful warnings/errors. */
3
+ export declare function createDevView<TView extends React.ComponentType<any>>(View: TView): React.ForwardRefExoticComponent<Pick<any, string | number | symbol> & React.RefAttributes<TView>>;
4
+ //# sourceMappingURL=createDevView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDevView.d.ts","sourceRoot":"","sources":["../../src/primitives/createDevView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AA+B1B,wFAAwF;AACxF,wBAAgB,aAAa,CAAC,KAAK,SAAS,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,qGAIhF"}
@@ -0,0 +1,41 @@
1
+ import React from 'react';
2
+ import { Platform, StyleSheet, Text } from 'react-native';
3
+ function useChildren(inputChildren) {
4
+ return React.useMemo(() => {
5
+ const children = [];
6
+ React.Children.forEach(inputChildren, (child) => {
7
+ if (child == null || typeof child === 'boolean') {
8
+ }
9
+ else if (typeof child === 'string' || typeof child === 'number') {
10
+ // Wrap text in a Text component.
11
+ let message = `Invalid raw text as a child of View: "${child}"${child === '' ? ` [empty string]` : ''}.`;
12
+ message += ' Wrap the text contents with a Text element or remove it.';
13
+ console.warn(message);
14
+ children.push(<Text style={[StyleSheet.absoluteFill, styles.error]}>
15
+ Unwrapped text: "<Text style={{ fontWeight: 'bold' }}>{child}</Text>"
16
+ </Text>);
17
+ }
18
+ else if ('type' in child && typeof child?.type === 'string' && Platform.OS !== 'web') {
19
+ // Disallow untransformed react-dom elements on native.
20
+ throw new Error(`Using unsupported React DOM element: <${child.type} />`);
21
+ }
22
+ else {
23
+ children.push(child);
24
+ }
25
+ });
26
+ return children;
27
+ }, [inputChildren]);
28
+ }
29
+ /** Extend a view with a `children` filter that asserts more helpful warnings/errors. */
30
+ export function createDevView(View) {
31
+ return React.forwardRef(({ children, ...props }, forwardedRef) => {
32
+ return <View ref={forwardedRef} {...props} children={useChildren(children)}/>;
33
+ });
34
+ }
35
+ const styles = StyleSheet.create({
36
+ error: {
37
+ backgroundColor: 'firebrick',
38
+ color: 'white',
39
+ },
40
+ });
41
+ //# sourceMappingURL=createDevView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createDevView.js","sourceRoot":"","sources":["../../src/primitives/createDevView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAE1D,SAAS,WAAW,CAAC,aAA8B;IACjD,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACxB,MAAM,QAAQ,GAAsB,EAAE,CAAC;QACvC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;YAC9C,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE;aAChD;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;gBACjE,iCAAiC;gBACjC,IAAI,OAAO,GAAG,yCAAyC,KAAK,IAC1D,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EACrC,GAAG,CAAC;gBACJ,OAAO,IAAI,2DAA2D,CAAC;gBACvE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACtB,QAAQ,CAAC,IAAI,CACX,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CACnD;6BAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC;UACtE,EAAE,IAAI,CAAC,CACR,CAAC;aACH;iBAAM,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,EAAE,IAAI,KAAK,QAAQ,IAAI,QAAQ,CAAC,EAAE,KAAK,KAAK,EAAE;gBACtF,uDAAuD;gBACvD,MAAM,IAAI,KAAK,CAAC,yCAAyC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC;aAC3E;iBAAM;gBACL,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACtB;QACH,CAAC,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;AACtB,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,aAAa,CAAyC,IAAW;IAC/E,OAAO,KAAK,CAAC,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAO,EAAE,YAA8B,EAAE,EAAE;QACtF,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAG,CAAC;IACjF,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE;QACL,eAAe,EAAE,WAAW;QAC5B,KAAK,EAAE,OAAO;KACf;CACF,CAAC,CAAC","sourcesContent":["import React from 'react';\nimport { Platform, StyleSheet, Text } from 'react-native';\n\nfunction useChildren(inputChildren: React.ReactNode) {\n return React.useMemo(() => {\n const children: React.ReactNode[] = [];\n React.Children.forEach(inputChildren, (child) => {\n if (child == null || typeof child === 'boolean') {\n } else if (typeof child === 'string' || typeof child === 'number') {\n // Wrap text in a Text component.\n let message = `Invalid raw text as a child of View: \"${child}\"${\n child === '' ? ` [empty string]` : ''\n }.`;\n message += ' Wrap the text contents with a Text element or remove it.';\n console.warn(message);\n children.push(\n <Text style={[StyleSheet.absoluteFill, styles.error]}>\n Unwrapped text: \"<Text style={{ fontWeight: 'bold' }}>{child}</Text>\"\n </Text>\n );\n } else if ('type' in child && typeof child?.type === 'string' && Platform.OS !== 'web') {\n // Disallow untransformed react-dom elements on native.\n throw new Error(`Using unsupported React DOM element: <${child.type} />`);\n } else {\n children.push(child);\n }\n });\n return children;\n }, [inputChildren]);\n}\n\n/** Extend a view with a `children` filter that asserts more helpful warnings/errors. */\nexport function createDevView<TView extends React.ComponentType<any>>(View: TView) {\n return React.forwardRef(({ children, ...props }: any, forwardedRef: React.Ref<TView>) => {\n return <View ref={forwardedRef} {...props} children={useChildren(children)} />;\n });\n}\n\nconst styles = StyleSheet.create({\n error: {\n backgroundColor: 'firebrick',\n color: 'white',\n },\n});\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@expo/html-elements",
3
- "version": "0.0.0",
3
+ "version": "0.0.1-canary-20231125-d600e44",
4
4
  "description": "Universal semantic HTML React components for iOS, Android, web, and desktop",
5
5
  "main": "build/Elements.js",
6
6
  "types": "build/Elements.d.ts",
@@ -9,7 +9,9 @@
9
9
  "build": "expo-module build",
10
10
  "clean": "expo-module clean",
11
11
  "lint": "expo-module lint",
12
- "test": "expo-module test",
12
+ "test": "yarn test:babel && yarn test:src",
13
+ "test:src": "expo-module test",
14
+ "test:babel": "jest --config babel/jest.config.js",
13
15
  "prepare": "expo-module prepare",
14
16
  "prepublishOnly": "expo-module prepublishOnly",
15
17
  "expo-module": "expo-module"
@@ -31,15 +33,31 @@
31
33
  },
32
34
  "author": "650 Industries, Inc.",
33
35
  "license": "MIT",
34
- "homepage": "https://github.com/expo/expo/tree/master/packages/html-elements",
36
+ "homepage": "https://github.com/expo/expo/tree/main/packages/html-elements",
35
37
  "jest": {
36
- "preset": "expo-module-scripts/enzyme"
37
- },
38
- "peerDependencies": {
39
- "react-native-web": "~0.12.0"
38
+ "projects": [
39
+ {
40
+ "preset": "jest-expo/ios",
41
+ "modulePathIgnorePatterns": [
42
+ "<rootDir>/babel/"
43
+ ]
44
+ },
45
+ {
46
+ "preset": "jest-expo/android",
47
+ "modulePathIgnorePatterns": [
48
+ "<rootDir>/babel/"
49
+ ]
50
+ },
51
+ {
52
+ "preset": "jest-expo/web",
53
+ "modulePathIgnorePatterns": [
54
+ "<rootDir>/babel/"
55
+ ]
56
+ }
57
+ ]
40
58
  },
41
59
  "devDependencies": {
42
- "expo-module-scripts": "~1.2.0"
60
+ "expo-module-scripts": "0.0.1-canary-20231125-d600e44"
43
61
  },
44
- "gitHead": "a246801b0d9ca7f803261fa533c14e6369927258"
62
+ "gitHead": "d600e446fb6eaa71a089309b28076f312f0773a3"
45
63
  }
@@ -1,23 +0,0 @@
1
- import { ComponentType } from 'react';
2
- import { TextProps } from '../primitives/Text';
3
- export declare const P: ComponentType<TextProps>;
4
- export declare const B: ComponentType<TextProps>;
5
- export declare const S: ComponentType<TextProps>;
6
- export declare const Del: ComponentType<TextProps>;
7
- export declare const Strong: ComponentType<TextProps>;
8
- export declare const I: ComponentType<TextProps>;
9
- export declare const Q: ComponentType<import("react").PropsWithChildren<Pick<import("react-native").TextProps & import("react").ClassAttributes<typeof import("react-native").Text>, "allowFontScaling" | "ellipsizeMode" | "lineBreakMode" | "numberOfLines" | "onLayout" | "onPress" | "onLongPress" | "testID" | "nativeID" | "maxFontSizeMultiplier" | "adjustsFontSizeToFit" | "minimumFontScale" | "suppressHighlighting" | "selectable" | "selectionColor" | "textBreakStrategy" | "accessible" | "accessibilityActions" | "accessibilityLabel" | "accessibilityState" | "accessibilityHint" | "accessibilityValue" | "onAccessibilityAction" | "accessibilityComponentType" | "accessibilityLiveRegion" | "importantForAccessibility" | "accessibilityElementsHidden" | "accessibilityTraits" | "accessibilityViewIsModal" | "onAccessibilityEscape" | "onAccessibilityTap" | "onMagicTap" | "accessibilityIgnoresInvertColors" | "key" | "ref"> & import("../primitives/Text").WebTextProps & {
10
- cite?: string | undefined;
11
- }>>;
12
- export declare const BlockQuote: ComponentType<import("react").PropsWithChildren<import("../primitives/View").WebViewProps & Pick<import("react-native").ViewProps & import("react").ClassAttributes<typeof import("react-native").View>, "onLayout" | "testID" | "nativeID" | "accessible" | "accessibilityActions" | "accessibilityLabel" | "accessibilityState" | "accessibilityHint" | "accessibilityValue" | "onAccessibilityAction" | "accessibilityComponentType" | "accessibilityLiveRegion" | "importantForAccessibility" | "accessibilityElementsHidden" | "accessibilityTraits" | "accessibilityViewIsModal" | "onAccessibilityEscape" | "onAccessibilityTap" | "onMagicTap" | "accessibilityIgnoresInvertColors" | "key" | "ref" | "hitSlop" | "pointerEvents" | "removeClippedSubviews" | "collapsable" | "needsOffscreenAlphaCompositing" | "renderToHardwareTextureAndroid" | "shouldRasterizeIOS" | "isTVSelectable" | "hasTVPreferredFocus" | "tvParallaxProperties" | "tvParallaxShiftDistanceX" | "tvParallaxShiftDistanceY" | "tvParallaxTiltAngle" | "tvParallaxMagnification" | "onStartShouldSetResponder" | "onMoveShouldSetResponder" | "onResponderEnd" | "onResponderGrant" | "onResponderReject" | "onResponderMove" | "onResponderRelease" | "onResponderStart" | "onResponderTerminationRequest" | "onResponderTerminate" | "onStartShouldSetResponderCapture" | "onMoveShouldSetResponderCapture" | "onTouchStart" | "onTouchMove" | "onTouchEnd" | "onTouchCancel" | "onTouchEndCapture"> & {
13
- cite?: string | undefined;
14
- }>>;
15
- export declare const EM: ComponentType<TextProps>;
16
- export declare const BR: ComponentType<TextProps>;
17
- export declare const Small: ComponentType<TextProps>;
18
- export declare const Mark: ComponentType<TextProps>;
19
- export declare const Code: ComponentType<TextProps>;
20
- export declare const Time: ComponentType<import("react").PropsWithChildren<Pick<import("react-native").TextProps & import("react").ClassAttributes<typeof import("react-native").Text>, "allowFontScaling" | "ellipsizeMode" | "lineBreakMode" | "numberOfLines" | "onLayout" | "onPress" | "onLongPress" | "testID" | "nativeID" | "maxFontSizeMultiplier" | "adjustsFontSizeToFit" | "minimumFontScale" | "suppressHighlighting" | "selectable" | "selectionColor" | "textBreakStrategy" | "accessible" | "accessibilityActions" | "accessibilityLabel" | "accessibilityState" | "accessibilityHint" | "accessibilityValue" | "onAccessibilityAction" | "accessibilityComponentType" | "accessibilityLiveRegion" | "importantForAccessibility" | "accessibilityElementsHidden" | "accessibilityTraits" | "accessibilityViewIsModal" | "onAccessibilityEscape" | "onAccessibilityTap" | "onMagicTap" | "accessibilityIgnoresInvertColors" | "key" | "ref"> & import("../primitives/Text").WebTextProps & {
21
- dateTime?: string | undefined;
22
- }>>;
23
- export declare const Pre: ComponentType<TextProps>;
@@ -1,63 +0,0 @@
1
- import { forwardRef } from 'react';
2
- import { StyleSheet } from 'react-native';
3
- import createElement from 'react-native-web/dist/exports/createElement';
4
- export const P = forwardRef(({ style, ...props }, ref) => {
5
- return createElement('p', { ...props, style: [styles.reset, style], ref });
6
- });
7
- export const B = forwardRef(({ style, ...props }, ref) => {
8
- return createElement('b', { ...props, style: [styles.reset, style], ref });
9
- });
10
- export const S = forwardRef(({ style, ...props }, ref) => {
11
- return createElement('s', { ...props, style: [styles.reset, style], ref });
12
- });
13
- export const Del = forwardRef(({ style, ...props }, ref) => {
14
- return createElement('del', { ...props, style: [styles.reset, style], ref });
15
- });
16
- export const Strong = forwardRef(({ style, ...props }, ref) => {
17
- return createElement('strong', { ...props, style: [styles.reset, style], ref });
18
- });
19
- export const I = forwardRef(({ style, ...props }, ref) => {
20
- return createElement('i', { ...props, style: [styles.reset, style], ref });
21
- });
22
- export const Q = forwardRef(({ style, ...props }, ref) => {
23
- return createElement('q', { ...props, style: [styles.reset, style], ref });
24
- });
25
- export const BlockQuote = forwardRef(({ style, ...props }, ref) => {
26
- return createElement('blockquote', { ...props, style: [styles.reset, style], ref });
27
- });
28
- export const EM = forwardRef(({ style, ...props }, ref) => {
29
- return createElement('em', { ...props, style: [styles.reset, style], ref });
30
- });
31
- export const BR = forwardRef((props, ref) => {
32
- return createElement('br', { ...props, ref });
33
- });
34
- export const Small = forwardRef(({ style, ...props }, ref) => {
35
- return createElement('small', { ...props, style: [styles.reset, style], ref });
36
- });
37
- export const Mark = forwardRef(({ style, ...props }, ref) => {
38
- return createElement('mark', { ...props, style: [styles.reset, style], ref });
39
- });
40
- export const Code = forwardRef((props, ref) => {
41
- return createElement('code', { ...props, ref });
42
- });
43
- export const Time = forwardRef(({ style, ...props }, ref) => {
44
- return createElement('time', { ...props, style: [styles.reset, style], ref });
45
- });
46
- export const Pre = forwardRef(({ style, ...props }, ref) => {
47
- return createElement('pre', { ...props, style: [styles.reset, style], ref });
48
- });
49
- const styles = StyleSheet.create({
50
- reset: {
51
- fontFamily: 'System',
52
- color: '#000',
53
- border: '0 solid black',
54
- boxSizing: 'border-box',
55
- // @ts-ignore: inline is not supported
56
- display: 'inline',
57
- margin: 0,
58
- padding: 0,
59
- whiteSpace: 'pre-wrap',
60
- wordWrap: 'break-word',
61
- },
62
- });
63
- //# sourceMappingURL=_Text.web.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"_Text.web.js","sourceRoot":"","sources":["../../src/elements/_Text.web.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,UAAU,EAAE,MAAM,OAAO,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,aAAa,MAAM,6CAA6C,CAAC;AAKxE,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IAClE,OAAO,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7E,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IAClE,OAAO,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7E,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IAClE,OAAO,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7E,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACpE,OAAO,aAAa,CAAC,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC/E,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACvE,OAAO,aAAa,CAAC,QAAQ,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAClF,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IAClE,OAAO,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7E,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAc,EAAE,GAAG,EAAE,EAAE;IACnE,OAAO,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC7E,CAAC,CAA8B,CAAC;AAEhC,MAAM,CAAC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAmB,EAAE,GAAG,EAAE,EAAE;IACjF,OAAO,aAAa,CAAC,YAAY,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACtF,CAAC,CAAmC,CAAC;AAErC,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACnE,OAAO,aAAa,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC9E,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,KAAgB,EAAE,GAAG,EAAE,EAAE;IACrD,OAAO,aAAa,CAAC,IAAI,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;AAChD,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACtE,OAAO,aAAa,CAAC,OAAO,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AACjF,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACrE,OAAO,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAChF,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,KAAgB,EAAE,GAAG,EAAE,EAAE;IACvD,OAAO,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;AAClD,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACrE,OAAO,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAChF,CAAC,CAA6B,CAAC;AAE/B,MAAM,CAAC,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAa,EAAE,GAAG,EAAE,EAAE;IACpE,OAAO,aAAa,CAAC,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;AAC/E,CAAC,CAA6B,CAAC;AAE/B,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IAC/B,KAAK,EAAE;QACL,UAAU,EAAE,QAAQ;QACpB,KAAK,EAAE,MAAM;QACb,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,YAAY;QACvB,sCAAsC;QACtC,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,CAAC;QACT,OAAO,EAAE,CAAC;QACV,UAAU,EAAE,UAAU;QACtB,QAAQ,EAAE,YAAY;KACvB;CACF,CAAC,CAAC","sourcesContent":["import { ComponentType, forwardRef } from 'react';\nimport { StyleSheet } from 'react-native';\nimport createElement from 'react-native-web/dist/exports/createElement';\n\nimport { TextProps } from '../primitives/Text';\nimport { BlockQuoteProps, QuoteProps, TimeProps } from './Text.types';\n\nexport const P = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('p', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const B = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('b', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const S = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('s', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const Del = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('del', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const Strong = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('strong', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const I = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('i', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const Q = forwardRef(({ style, ...props }: QuoteProps, ref) => {\n return createElement('q', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<QuoteProps>;\n\nexport const BlockQuote = forwardRef(({ style, ...props }: BlockQuoteProps, ref) => {\n return createElement('blockquote', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<BlockQuoteProps>;\n\nexport const EM = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('em', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const BR = forwardRef((props: TextProps, ref) => {\n return createElement('br', { ...props, ref });\n}) as ComponentType<TextProps>;\n\nexport const Small = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('small', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const Mark = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('mark', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nexport const Code = forwardRef((props: TextProps, ref) => {\n return createElement('code', { ...props, ref });\n}) as ComponentType<TextProps>;\n\nexport const Time = forwardRef(({ style, ...props }: TimeProps, ref) => {\n return createElement('time', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TimeProps>;\n\nexport const Pre = forwardRef(({ style, ...props }: TextProps, ref) => {\n return createElement('pre', { ...props, style: [styles.reset, style], ref });\n}) as ComponentType<TextProps>;\n\nconst styles = StyleSheet.create({\n reset: {\n fontFamily: 'System',\n color: '#000',\n border: '0 solid black',\n boxSizing: 'border-box',\n // @ts-ignore: inline is not supported\n display: 'inline',\n margin: 0,\n padding: 0,\n whiteSpace: 'pre-wrap',\n wordWrap: 'break-word',\n },\n});\n"]}