@expo/html-elements 57.0.0 → 58.0.0-canary-20260805-ccd18b9

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 (115) hide show
  1. package/.tsbuildinfo +1 -0
  2. package/.turbo/turbo-build.log +27 -0
  3. package/CHANGELOG.md +1 -1
  4. package/README.md +11 -11
  5. package/babel/jest.config.js +2 -6
  6. package/build/Elements.d.ts +0 -1
  7. package/build/Elements.js +9 -0
  8. package/build/Elements.js.map +1 -0
  9. package/build/css/createSafeStyledView.d.ts +0 -1
  10. package/build/css/createSafeStyledView.js +6 -0
  11. package/build/css/createSafeStyledView.js.map +1 -0
  12. package/build/css/createSafeStyledView.native.d.ts +0 -1
  13. package/build/css/createSafeStyledView.native.js +17 -0
  14. package/build/css/createSafeStyledView.native.js.map +1 -0
  15. package/build/css/filterStyles.d.ts +0 -1
  16. package/build/css/filterStyles.js +86 -0
  17. package/build/css/filterStyles.js.map +1 -0
  18. package/build/css/units.d.ts +0 -1
  19. package/build/css/units.js +11 -0
  20. package/build/css/units.js.map +1 -0
  21. package/build/elements/Anchor.d.ts +0 -1
  22. package/build/elements/Anchor.js +30 -0
  23. package/build/elements/Anchor.js.map +1 -0
  24. package/build/elements/Headings.d.ts +0 -1
  25. package/build/elements/Headings.js +82 -0
  26. package/build/elements/Headings.js.map +1 -0
  27. package/build/elements/Layout.d.ts +0 -1
  28. package/build/elements/Layout.js +60 -0
  29. package/build/elements/Layout.js.map +1 -0
  30. package/build/elements/Lists.d.ts +0 -1
  31. package/build/elements/Lists.js +46 -0
  32. package/build/elements/Lists.js.map +1 -0
  33. package/build/elements/Rules.d.ts +0 -1
  34. package/build/elements/Rules.js +23 -0
  35. package/build/elements/Rules.js.map +1 -0
  36. package/build/elements/Rules.web.d.ts +0 -1
  37. package/build/elements/Rules.web.js +6 -0
  38. package/build/elements/Rules.web.js.map +1 -0
  39. package/build/elements/Table.d.ts +0 -1
  40. package/build/elements/Table.js +83 -0
  41. package/build/elements/Table.js.map +1 -0
  42. package/build/elements/Table.web.d.ts +0 -1
  43. package/build/elements/Table.web.js +47 -0
  44. package/build/elements/Table.web.js.map +1 -0
  45. package/build/elements/Text.d.ts +1 -2
  46. package/build/elements/Text.js +169 -0
  47. package/build/elements/Text.js.map +1 -0
  48. package/build/elements/Text.types.d.ts +0 -1
  49. package/build/elements/Text.types.js +3 -0
  50. package/build/elements/Text.types.js.map +1 -0
  51. package/build/primitives/Image.d.ts +0 -1
  52. package/build/primitives/Image.js +6 -0
  53. package/build/primitives/Image.js.map +1 -0
  54. package/build/primitives/RNWView.d.ts +0 -1
  55. package/build/primitives/RNWView.js +128 -0
  56. package/build/primitives/RNWView.js.map +1 -0
  57. package/build/primitives/Table.d.ts +0 -1
  58. package/build/primitives/Table.js +4 -0
  59. package/build/primitives/Table.js.map +1 -0
  60. package/build/primitives/Text.d.ts +0 -1
  61. package/build/primitives/Text.js +6 -0
  62. package/build/primitives/Text.js.map +1 -0
  63. package/build/primitives/View.d.ts +0 -1
  64. package/build/primitives/View.js +11 -0
  65. package/build/primitives/View.js.map +1 -0
  66. package/build/primitives/createDevView.d.ts +0 -1
  67. package/build/primitives/createDevView.js +56 -0
  68. package/build/primitives/createDevView.js.map +1 -0
  69. package/build/ts-declarations/process.d.ts +7 -0
  70. package/build/ts-declarations/react-native-web.d.ts +1015 -0
  71. package/package.json +55 -34
  72. package/src/css/__tests__/createSafeStyledView.test.native.tsx +0 -1
  73. package/src/elements/Anchor.tsx +1 -1
  74. package/src/elements/Text.tsx +1 -1
  75. package/src/elements/__tests__/Anchor.test.ios.tsx +0 -1
  76. package/src/elements/__tests__/Anchor.test.web.tsx +0 -1
  77. package/src/elements/__tests__/Headings.test.ios.tsx +1 -2
  78. package/src/elements/__tests__/Layout.test.ios.tsx +0 -1
  79. package/src/elements/__tests__/Layout.test.web.tsx +0 -1
  80. package/src/elements/__tests__/Lists.test.native.tsx +0 -1
  81. package/src/elements/__tests__/Lists.test.web.tsx +0 -1
  82. package/src/elements/__tests__/Rules.test.native.tsx +0 -1
  83. package/src/elements/__tests__/Rules.test.web.tsx +0 -1
  84. package/src/elements/__tests__/Table.test.ios.tsx +0 -1
  85. package/src/elements/__tests__/Table.test.web.tsx +0 -1
  86. package/src/elements/__tests__/Text.test.ios.tsx +0 -1
  87. package/src/primitives/Image.tsx +1 -1
  88. package/src/primitives/Text.tsx +1 -1
  89. package/src/primitives/View.tsx +1 -1
  90. package/src/primitives/__tests__/createDevView.test.tsx +0 -1
  91. package/src/ts-declarations/react-native-web.d.ts +6 -7
  92. package/tsconfig.json +2 -3
  93. package/.eslintrc.js +0 -2
  94. package/build/Elements.d.ts.map +0 -1
  95. package/build/css/createSafeStyledView.d.ts.map +0 -1
  96. package/build/css/createSafeStyledView.native.d.ts.map +0 -1
  97. package/build/css/filterStyles.d.ts.map +0 -1
  98. package/build/css/units.d.ts.map +0 -1
  99. package/build/elements/Anchor.d.ts.map +0 -1
  100. package/build/elements/Headings.d.ts.map +0 -1
  101. package/build/elements/Layout.d.ts.map +0 -1
  102. package/build/elements/Lists.d.ts.map +0 -1
  103. package/build/elements/Rules.d.ts.map +0 -1
  104. package/build/elements/Rules.web.d.ts.map +0 -1
  105. package/build/elements/Table.d.ts.map +0 -1
  106. package/build/elements/Table.web.d.ts.map +0 -1
  107. package/build/elements/Text.d.ts.map +0 -1
  108. package/build/elements/Text.types.d.ts.map +0 -1
  109. package/build/primitives/Image.d.ts.map +0 -1
  110. package/build/primitives/RNWView.d.ts.map +0 -1
  111. package/build/primitives/Table.d.ts.map +0 -1
  112. package/build/primitives/Text.d.ts.map +0 -1
  113. package/build/primitives/View.d.ts.map +0 -1
  114. package/build/primitives/createDevView.d.ts.map +0 -1
  115. /package/src/primitives/{Table.ts → Table.tsx} +0 -0
package/.tsbuildinfo ADDED
@@ -0,0 +1 @@
1
+ {"version":"6.0.3"}
@@ -0,0 +1,27 @@
1
+
2
+ > @expo/html-elements@58.0.0-canary-20260805-ccd18b9 build /Users/runner/work/expo/expo/packages/html-elements
3
+ > expo-build src
4
+
5
+ src/Elements.tsx
6
+ src/css/createSafeStyledView.native.tsx
7
+ src/css/createSafeStyledView.tsx
8
+ src/css/filterStyles.ts
9
+ src/css/units.ts
10
+ src/elements/Anchor.tsx
11
+ src/elements/Headings.tsx
12
+ src/elements/Layout.tsx
13
+ src/elements/Lists.tsx
14
+ src/elements/Rules.tsx
15
+ src/elements/Rules.web.tsx
16
+ src/elements/Table.tsx
17
+ src/elements/Table.web.tsx
18
+ src/elements/Text.tsx
19
+ src/elements/Text.types.ts
20
+ src/primitives/Image.tsx
21
+ src/primitives/RNWView.tsx
22
+ src/primitives/Table.tsx
23
+ src/primitives/Text.tsx
24
+ src/primitives/View.tsx
25
+ src/primitives/createDevView.tsx
26
+ src/ts-declarations/process.d.ts
27
+ src/ts-declarations/react-native-web.d.ts
package/CHANGELOG.md CHANGED
@@ -10,7 +10,7 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
- ## 57.0.0 2026-06-25
13
+ ## 57.0.0 - 2026-06-25
14
14
 
15
15
  _This version does not introduce any user-facing changes._
16
16
 
package/README.md CHANGED
@@ -88,15 +88,15 @@ Here is a list of all the currently supported elements and the web feature they
88
88
  | [`<tr />`][html-tr] | [`<TR />`](#tr) |
89
89
  | [`<ul />`][html-ul] | [`<UL />`](#ul) |
90
90
  | [`<li />`][html-li] | [`<LI />`](#li) |
91
- | [`<details />`][html-details] | ⏱ Pending |
92
- | [`<summary />`][html-summary] | ⏱ Pending |
93
- | [`<progress />`][html-progress] | ⏱ Pending |
94
- | [`<select />`][html-select] | ⏱ Pending |
95
- | [`<picture />`][html-picture] | ⏱ Pending |
96
- | [`<figure />`][html-figure] | ⏱ Pending |
97
- | [`<figcaption />`][html-figcaption] | ⏱ Pending |
98
- | [`<form />`][html-form] | ⏱ Pending |
99
- | [`<label />`][html-label] | ⏱ Pending |
91
+ | [`<details />`][html-details] | ⏱ Pending |
92
+ | [`<summary />`][html-summary] | ⏱ Pending |
93
+ | [`<progress />`][html-progress] | ⏱ Pending |
94
+ | [`<select />`][html-select] | ⏱ Pending |
95
+ | [`<picture />`][html-picture] | ⏱ Pending |
96
+ | [`<figure />`][html-figure] | ⏱ Pending |
97
+ | [`<figcaption />`][html-figcaption] | ⏱ Pending |
98
+ | [`<form />`][html-form] | ⏱ Pending |
99
+ | [`<label />`][html-label] | ⏱ Pending |
100
100
 
101
101
  ## External
102
102
 
@@ -420,7 +420,7 @@ Standard paragraph element.
420
420
 
421
421
  ### `<B/>`
422
422
 
423
- Bold text text.
423
+ Bold text.
424
424
 
425
425
  | Platform | Output |
426
426
  | --------- | ----------------------------------------- |
@@ -734,7 +734,7 @@ Create a cell in a Table.
734
734
 
735
735
  ### `<Caption/>`
736
736
 
737
- Used to caption your table. Excepts text as a child.
737
+ Used to caption your table. Accepts text as a child.
738
738
 
739
739
  | Platform | Output |
740
740
  | -------- | --------------------------- |
@@ -1,12 +1,8 @@
1
1
  const path = require('path');
2
2
 
3
- const roots = ['.'];
4
-
5
3
  module.exports = {
6
- testEnvironment: 'node',
7
- testRegex: './__tests__/.*(test|spec)\\.[jt]sx?$',
8
- watchPlugins: ['jest-watch-typeahead/filename', 'jest-watch-typeahead/testname'],
4
+ ...require('expo-module-scripts/jest-preset-cli'),
9
5
  rootDir: path.resolve(__dirname),
10
6
  displayName: require('../package').name,
11
- roots,
7
+ roots: ['.'],
12
8
  };
@@ -5,4 +5,3 @@ export * from './elements/Text';
5
5
  export * from './elements/Rules';
6
6
  export * from './elements/Table';
7
7
  export * from './elements/Lists';
8
- //# sourceMappingURL=Elements.d.ts.map
@@ -0,0 +1,9 @@
1
+ export * from './elements/Headings';
2
+ export * from './elements/Anchor';
3
+ export * from './elements/Layout';
4
+ export * from './elements/Text';
5
+ export * from './elements/Rules';
6
+ export * from './elements/Table';
7
+ export * from './elements/Lists';
8
+
9
+ //# sourceMappingURL=Elements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["Elements.tsx"],"sourcesContent":[null],"names":[],"mappings":"AAAA,cAAc,sBAAsB;AACpC,cAAc,oBAAoB;AAClC,cAAc,oBAAoB;AAClC,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB;AACjC,cAAc,mBAAmB"}
@@ -1,2 +1 @@
1
1
  export declare function createSafeStyledView<TView>(View: TView): TView;
2
- //# sourceMappingURL=createSafeStyledView.d.ts.map
@@ -0,0 +1,6 @@
1
+ export function createSafeStyledView(View) {
2
+ // Do nothing by default
3
+ return View;
4
+ }
5
+
6
+ //# sourceMappingURL=createSafeStyledView.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css/createSafeStyledView.tsx"],"sourcesContent":[null],"names":["createSafeStyledView","View"],"mappings":"AAAA,OAAO,SAASA,qBAA4BC,IAAW;IACrD,wBAAwB;IACxB,OAAOA;AACT"}
@@ -1,3 +1,2 @@
1
1
  import React from 'react';
2
2
  export declare function createSafeStyledView<TView extends React.ComponentType<any>>(View: TView): ({ style, ...props }: any) => import("react/jsx-runtime").JSX.Element;
3
- //# sourceMappingURL=createSafeStyledView.native.d.ts.map
@@ -0,0 +1,17 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React, { useMemo } from 'react';
3
+ import { filterStyles } from './filterStyles';
4
+ export function createSafeStyledView(View) {
5
+ return function Safe({ style, ...props }) {
6
+ // Filter and apply `center` prop.
7
+ const finalStyle = useMemo(()=>filterStyles(style), [
8
+ style
9
+ ]);
10
+ return /*#__PURE__*/ _jsx(View, {
11
+ style: finalStyle,
12
+ ...props
13
+ });
14
+ };
15
+ }
16
+
17
+ //# sourceMappingURL=createSafeStyledView.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css/createSafeStyledView.native.tsx"],"sourcesContent":[null],"names":["React","useMemo","filterStyles","createSafeStyledView","View","Safe","style","props","finalStyle"],"mappings":";AAAA,OAAOA,SAASC,OAAO,QAAQ,QAAQ;AAEvC,SAASC,YAAY,QAAQ,iBAAiB;AAE9C,OAAO,SAASC,qBAA6DC,IAAW;IACtF,OAAO,SAASC,KAAK,EAAEC,KAAK,EAAE,GAAGC,OAAY;QAC3C,kCAAkC;QAClC,MAAMC,aAAaP,QAAQ,IAAMC,aAAaI,QAAQ;YAACA;SAAM;QAE7D,qBAAO,KAACF;YAAKE,OAAOE;YAAa,GAAGD,KAAK;;IAC3C;AACF"}
@@ -1,3 +1,2 @@
1
1
  import { type StyleProp } from 'react-native';
2
2
  export declare function filterStyles(styleProp: StyleProp<any>): any;
3
- //# sourceMappingURL=filterStyles.d.ts.map
@@ -0,0 +1,86 @@
1
+ import { StyleSheet } from 'react-native';
2
+ // Remove the unsupported web styles from the style object
3
+ // to prevent crashing.
4
+ const WEB_STYLES = [
5
+ 'backdropFilter',
6
+ 'animationDelay',
7
+ 'animationDirection',
8
+ 'animationDuration',
9
+ 'animationFillMode',
10
+ 'animationName',
11
+ 'animationIterationCount',
12
+ 'animationPlayState',
13
+ 'animationTimingFunction',
14
+ 'backgroundAttachment',
15
+ 'backgroundBlendMode',
16
+ 'backgroundClip',
17
+ 'backgroundImage',
18
+ 'backgroundOrigin',
19
+ 'backgroundPosition',
20
+ 'backgroundRepeat',
21
+ 'backgroundSize',
22
+ 'boxShadow',
23
+ 'boxSizing',
24
+ 'clip',
25
+ 'cursor',
26
+ 'filter',
27
+ 'gridAutoColumns',
28
+ 'gridAutoFlow',
29
+ 'gridAutoRows',
30
+ 'gridColumnEnd',
31
+ 'gridColumnGap',
32
+ 'gridColumnStart',
33
+ 'gridRowEnd',
34
+ 'gridRowGap',
35
+ 'gridRowStart',
36
+ 'gridTemplateColumns',
37
+ 'gridTemplateRows',
38
+ 'gridTemplateAreas',
39
+ 'outline',
40
+ 'outlineColor',
41
+ 'overflowX',
42
+ 'overflowY',
43
+ 'overscrollBehavior',
44
+ 'overscrollBehaviorX',
45
+ 'overscrollBehaviorY',
46
+ 'perspective',
47
+ 'perspectiveOrigin',
48
+ 'touchAction',
49
+ 'transformOrigin',
50
+ 'transitionDelay',
51
+ 'transitionDuration',
52
+ 'transitionProperty',
53
+ 'transitionTimingFunction',
54
+ 'userSelect',
55
+ 'willChange'
56
+ ];
57
+ export function filterStyles(styleProp) {
58
+ if (!styleProp) {
59
+ return styleProp;
60
+ }
61
+ const style = StyleSheet.flatten(styleProp);
62
+ const filteredStyle = Object.fromEntries(Object.entries(style).filter(([k])=>!WEB_STYLES.includes(k)));
63
+ return processNativeStyles(filteredStyle);
64
+ }
65
+ function processNativeStyles(style) {
66
+ if (!style) return style;
67
+ if (style.visibility) {
68
+ if (style.visibility === 'hidden') {
69
+ // style.display = "none";
70
+ style.opacity = 0;
71
+ }
72
+ delete style.visibility;
73
+ }
74
+ if (style.position) {
75
+ if (![
76
+ 'absolute',
77
+ 'relative'
78
+ ].includes(style.position)) {
79
+ console.warn(`Unsupported position: '${style.position}'`);
80
+ style.position = 'relative';
81
+ }
82
+ }
83
+ return style;
84
+ }
85
+
86
+ //# sourceMappingURL=filterStyles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css/filterStyles.ts"],"sourcesContent":[null],"names":["StyleSheet","WEB_STYLES","filterStyles","styleProp","style","flatten","filteredStyle","Object","fromEntries","entries","filter","k","includes","processNativeStyles","visibility","opacity","position","console","warn"],"mappings":"AACA,SAAyBA,UAAU,QAAQ,eAAe;AAE1D,0DAA0D;AAC1D,uBAAuB;AACvB,MAAMC,aAAa;IACjB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,SAASC,aAAaC,SAAyB;IACpD,IAAI,CAACA,WAAW;QACd,OAAOA;IACT;IACA,MAAMC,QAAQJ,WAAWK,OAAO,CAACF;IAEjC,MAAMG,gBAAgBC,OAAOC,WAAW,CACtCD,OAAOE,OAAO,CAACL,OAAOM,MAAM,CAAC,CAAC,CAACC,EAAE,GAAK,CAACV,WAAWW,QAAQ,CAACD;IAG7D,OAAOE,oBAAoBP;AAC7B;AAEA,SAASO,oBAAoBT,KAAoB;IAC/C,IAAI,CAACA,OAAO,OAAOA;IAEnB,IAAIA,MAAMU,UAAU,EAAE;QACpB,IAAIV,MAAMU,UAAU,KAAK,UAAU;YACjC,0BAA0B;YAC1BV,MAAMW,OAAO,GAAG;QAClB;QACA,OAAOX,MAAMU,UAAU;IACzB;IAEA,IAAIV,MAAMY,QAAQ,EAAE;QAClB,IAAI,CAAC;YAAC;YAAY;SAAW,CAACJ,QAAQ,CAACR,MAAMY,QAAQ,GAAG;YACtDC,QAAQC,IAAI,CAAC,CAAC,uBAAuB,EAAEd,MAAMY,QAAQ,CAAC,CAAC,CAAC;YACxDZ,MAAMY,QAAQ,GAAG;QACnB;IACF;IAEA,OAAOZ;AACT"}
@@ -1,3 +1,2 @@
1
1
  export declare function rem(value: number): number | string;
2
2
  export declare function em(value: number): number | string;
3
- //# sourceMappingURL=units.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { PixelRatio, Platform } from 'react-native';
2
+ export function rem(value) {
3
+ if (Platform.OS === 'web') return `${value}rem`;
4
+ return PixelRatio.getFontScale() * 16 * value;
5
+ }
6
+ export function em(value) {
7
+ if (Platform.OS === 'web') return `${value}em`;
8
+ return rem(value);
9
+ }
10
+
11
+ //# sourceMappingURL=units.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["css/units.ts"],"sourcesContent":[null],"names":["PixelRatio","Platform","rem","value","OS","getFontScale","em"],"mappings":"AAAA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,eAAe;AAEpD,OAAO,SAASC,IAAIC,KAAa;IAC/B,IAAIF,SAASG,EAAE,KAAK,OAAO,OAAO,GAAGD,MAAM,GAAG,CAAC;IAC/C,OAAOH,WAAWK,YAAY,KAAK,KAAKF;AAC1C;AAEA,OAAO,SAASG,GAAGH,KAAa;IAC9B,IAAIF,SAASG,EAAE,KAAK,OAAO,OAAO,GAAGD,MAAM,EAAE,CAAC;IAC9C,OAAOD,IAAIC;AACb"}
@@ -1,3 +1,2 @@
1
1
  import type { LinkProps } from './Text.types';
2
2
  export declare function A({ href, target, download, rel, ...props }: LinkProps): import("react/jsx-runtime").JSX.Element;
3
- //# sourceMappingURL=Anchor.d.ts.map
@@ -0,0 +1,30 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Linking, Platform } from 'react-native';
3
+ import Text from '../primitives/Text';
4
+ export function A({ href, target, download, rel, ...props }) {
5
+ const nativeProps = Platform.select({
6
+ web: {
7
+ href,
8
+ hrefAttrs: {
9
+ target,
10
+ download,
11
+ rel
12
+ }
13
+ },
14
+ default: {
15
+ onPress: (event)=>{
16
+ props.onPress && props.onPress(event);
17
+ if (Platform.OS !== 'web' && href !== undefined) {
18
+ Linking.openURL(href);
19
+ }
20
+ }
21
+ }
22
+ });
23
+ return /*#__PURE__*/ _jsx(Text, {
24
+ role: "link",
25
+ ...props,
26
+ ...nativeProps
27
+ });
28
+ }
29
+
30
+ //# sourceMappingURL=Anchor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["elements/Anchor.tsx"],"sourcesContent":[null],"names":["Linking","Platform","Text","A","href","target","download","rel","props","nativeProps","select","web","hrefAttrs","default","onPress","event","OS","undefined","openURL","role"],"mappings":";AAAA,SAASA,OAAO,EAAEC,QAAQ,QAAQ,eAAe;AAEjD,OAAOC,UAAU,qBAAqB;AAGtC,OAAO,SAASC,EAAE,EAAEC,IAAI,EAAEC,MAAM,EAAEC,QAAQ,EAAEC,GAAG,EAAE,GAAGC,OAAkB;IACpE,MAAMC,cAAcR,SAASS,MAAM,CAAY;QAC7CC,KAAK;YACHP;YACAQ,WAAW;gBACTP;gBACAC;gBACAC;YACF;QACF;QACAM,SAAS;YACPC,SAAS,CAACC;gBACRP,MAAMM,OAAO,IAAIN,MAAMM,OAAO,CAACC;gBAC/B,IAAId,SAASe,EAAE,KAAK,SAASZ,SAASa,WAAW;oBAC/CjB,QAAQkB,OAAO,CAACd;gBAClB;YACF;QACF;IACF;IACA,qBAAO,KAACF;QAAKiB,MAAK;QAAQ,GAAGX,KAAK;QAAG,GAAGC,WAAW;;AACrD"}
@@ -6,4 +6,3 @@ export declare const H3: ComponentType<TextProps>;
6
6
  export declare const H4: ComponentType<TextProps>;
7
7
  export declare const H5: ComponentType<TextProps>;
8
8
  export declare const H6: ComponentType<TextProps>;
9
- //# sourceMappingURL=Headings.d.ts.map
@@ -0,0 +1,82 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Platform, StyleSheet } from 'react-native';
3
+ import { em } from '../css/units';
4
+ import Text from '../primitives/Text';
5
+ function createHeadingComponent(level) {
6
+ const nativeProps = Platform.select({
7
+ web: {
8
+ 'aria-level': level,
9
+ role: 'header'
10
+ },
11
+ default: {
12
+ accessibilityRole: 'header'
13
+ }
14
+ });
15
+ function Heading(props) {
16
+ return /*#__PURE__*/ _jsx(Text, {
17
+ ...nativeProps,
18
+ ...props,
19
+ style: [
20
+ styles[`h${level}`],
21
+ props.style
22
+ ]
23
+ });
24
+ }
25
+ if (__DEV__) {
26
+ Heading.displayName = `H${level}`;
27
+ }
28
+ return Heading;
29
+ }
30
+ export const H1 = createHeadingComponent(1);
31
+ export const H2 = createHeadingComponent(2);
32
+ export const H3 = createHeadingComponent(3);
33
+ export const H4 = createHeadingComponent(4);
34
+ export const H5 = createHeadingComponent(5);
35
+ export const H6 = createHeadingComponent(6);
36
+ // Default web styles: http://trac.webkit.org/browser/trunk/Source/WebCore/css/html.css
37
+ const styles = StyleSheet.create({
38
+ h1: {
39
+ // @ts-ignore
40
+ fontSize: em(2),
41
+ // @ts-ignore
42
+ marginVertical: em(0.67),
43
+ fontWeight: 'bold'
44
+ },
45
+ h2: {
46
+ // @ts-ignore
47
+ fontSize: em(1.5),
48
+ // @ts-ignore
49
+ marginVertical: em(0.83),
50
+ fontWeight: 'bold'
51
+ },
52
+ h3: {
53
+ // @ts-ignore
54
+ fontSize: em(1.17),
55
+ // @ts-ignore
56
+ marginVertical: em(1),
57
+ fontWeight: 'bold'
58
+ },
59
+ h4: {
60
+ // @ts-ignore
61
+ fontSize: em(1),
62
+ // @ts-ignore
63
+ marginVertical: em(1.33),
64
+ fontWeight: 'bold'
65
+ },
66
+ h5: {
67
+ // @ts-ignore
68
+ fontSize: em(0.83),
69
+ // @ts-ignore
70
+ marginVertical: em(1.67),
71
+ fontWeight: 'bold'
72
+ },
73
+ h6: {
74
+ // @ts-ignore
75
+ fontSize: em(0.67),
76
+ // @ts-ignore
77
+ marginVertical: em(2.33),
78
+ fontWeight: 'bold'
79
+ }
80
+ });
81
+
82
+ //# sourceMappingURL=Headings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["elements/Headings.tsx"],"sourcesContent":[null],"names":["Platform","StyleSheet","em","Text","createHeadingComponent","level","nativeProps","select","web","role","default","accessibilityRole","Heading","props","style","styles","__DEV__","displayName","H1","H2","H3","H4","H5","H6","create","h1","fontSize","marginVertical","fontWeight","h2","h3","h4","h5","h6"],"mappings":";AACA,SAASA,QAAQ,EAAEC,UAAU,QAAQ,eAAe;AAEpD,SAASC,EAAE,QAAQ,eAAe;AAElC,OAAOC,UAAU,qBAAqB;AAItC,SAASC,uBAAuBC,KAAmB;IACjD,MAAMC,cAAmBN,SAASO,MAAM,CAAC;QACvCC,KAAK;YACH,cAAcH;YACdI,MAAM;QACR;QACAC,SAAS;YACPC,mBAAmB;QACrB;IACF;IACA,SAASC,QAAQC,KAAgB;QAC/B,qBAAO,KAACV;YAAM,GAAGG,WAAW;YAAG,GAAGO,KAAK;YAAEC,OAAO;gBAACC,MAAM,CAAC,CAAC,CAAC,EAAEV,OAAO,CAAC;gBAAEQ,MAAMC,KAAK;aAAC;;IACpF;IAEA,IAAIE,SAAS;QACXJ,QAAQK,WAAW,GAAG,CAAC,CAAC,EAAEZ,OAAO;IACnC;IAEA,OAAOO;AACT;AAEA,OAAO,MAAMM,KAAKd,uBAAuB,GAAG;AAC5C,OAAO,MAAMe,KAAKf,uBAAuB,GAAG;AAC5C,OAAO,MAAMgB,KAAKhB,uBAAuB,GAAG;AAC5C,OAAO,MAAMiB,KAAKjB,uBAAuB,GAAG;AAC5C,OAAO,MAAMkB,KAAKlB,uBAAuB,GAAG;AAC5C,OAAO,MAAMmB,KAAKnB,uBAAuB,GAAG;AAE5C,uFAAuF;AACvF,MAAMW,SAASd,WAAWuB,MAAM,CAAC;IAC/BC,IAAI;QACF,aAAa;QACbC,UAAUxB,GAAG;QACb,aAAa;QACbyB,gBAAgBzB,GAAG;QACnB0B,YAAY;IACd;IACAC,IAAI;QACF,aAAa;QACbH,UAAUxB,GAAG;QACb,aAAa;QACbyB,gBAAgBzB,GAAG;QACnB0B,YAAY;IACd;IACAE,IAAI;QACF,aAAa;QACbJ,UAAUxB,GAAG;QACb,aAAa;QACbyB,gBAAgBzB,GAAG;QACnB0B,YAAY;IACd;IACAG,IAAI;QACF,aAAa;QACbL,UAAUxB,GAAG;QACb,aAAa;QACbyB,gBAAgBzB,GAAG;QACnB0B,YAAY;IACd;IACAI,IAAI;QACF,aAAa;QACbN,UAAUxB,GAAG;QACb,aAAa;QACbyB,gBAAgBzB,GAAG;QACnB0B,YAAY;IACd;IACAK,IAAI;QACF,aAAa;QACbP,UAAUxB,GAAG;QACb,aAAa;QACbyB,gBAAgBzB,GAAG;QACnB0B,YAAY;IACd;AACF"}
@@ -8,4 +8,3 @@ export declare const Header: ComponentType<ViewProps>;
8
8
  export declare const Main: ComponentType<ViewProps>;
9
9
  export declare const Article: ComponentType<ViewProps>;
10
10
  export declare const Section: ComponentType<ViewProps>;
11
- //# sourceMappingURL=Layout.d.ts.map
@@ -0,0 +1,60 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Platform } from 'react-native';
3
+ import View from '../primitives/View';
4
+ function createView(nativeProps = {}) {
5
+ return function Dom(props) {
6
+ return /*#__PURE__*/ _jsx(View, {
7
+ ...nativeProps,
8
+ ...props
9
+ });
10
+ };
11
+ }
12
+ export const Div = createView();
13
+ export const Nav = createView(Platform.select({
14
+ web: {
15
+ role: 'navigation'
16
+ }
17
+ }));
18
+ export const Footer = createView(Platform.select({
19
+ web: {
20
+ role: 'contentinfo'
21
+ }
22
+ }));
23
+ export const Aside = createView(Platform.select({
24
+ web: {
25
+ role: 'complementary'
26
+ }
27
+ }));
28
+ export const Header = createView(Platform.select({
29
+ web: {
30
+ role: 'banner'
31
+ },
32
+ default: {
33
+ accessibilityRole: 'header'
34
+ }
35
+ }));
36
+ export const Main = createView(Platform.select({
37
+ web: {
38
+ role: 'main'
39
+ }
40
+ }));
41
+ export const Article = createView(Platform.select({
42
+ web: {
43
+ role: 'article'
44
+ }
45
+ }));
46
+ export const Section = createView({
47
+ role: 'summary'
48
+ });
49
+ if (__DEV__) {
50
+ Div.displayName = 'Div';
51
+ Nav.displayName = 'Nav';
52
+ Footer.displayName = 'Footer';
53
+ Aside.displayName = 'Aside';
54
+ Header.displayName = 'Header';
55
+ Main.displayName = 'Main';
56
+ Article.displayName = 'Article';
57
+ Section.displayName = 'Section';
58
+ }
59
+
60
+ //# sourceMappingURL=Layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["elements/Layout.tsx"],"sourcesContent":[null],"names":["Platform","View","createView","nativeProps","Dom","props","Div","Nav","select","web","role","Footer","Aside","Header","default","accessibilityRole","Main","Article","Section","__DEV__","displayName"],"mappings":";AACA,SAASA,QAAQ,QAAQ,eAAe;AAGxC,OAAOC,UAAU,qBAAqB;AAEtC,SAASC,WAAWC,cAAyB,CAAC,CAAC;IAC7C,OAAO,SAASC,IAAIC,KAAgB;QAClC,qBAAO,KAACJ;YAAM,GAAGE,WAAW;YAAG,GAAGE,KAAK;;IACzC;AACF;AAEA,OAAO,MAAMC,MAAMJ,aAAa;AAEhC,OAAO,MAAMK,MAAML,WACjBF,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;AACF,IACA;AACF,OAAO,MAAMC,SAAST,WACpBF,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;AACF,IACA;AACF,OAAO,MAAME,QAAQV,WACnBF,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;AACF,IACA;AACF,OAAO,MAAMG,SAASX,WACpBF,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;IACAI,SAAS;QACPC,mBAAmB;IACrB;AACF,IACA;AACF,OAAO,MAAMC,OAAOd,WAClBF,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;AACF,IACA;AACF,OAAO,MAAMO,UAAUf,WACrBF,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;AACF,IACA;AACF,OAAO,MAAMQ,UAAUhB,WAAW;IAChCQ,MAAM;AACR,GAAG;AAEH,IAAIS,SAAS;IACXb,IAAIc,WAAW,GAAG;IAClBb,IAAIa,WAAW,GAAG;IAClBT,OAAOS,WAAW,GAAG;IACrBR,MAAMQ,WAAW,GAAG;IACpBP,OAAOO,WAAW,GAAG;IACrBJ,KAAKI,WAAW,GAAG;IACnBH,QAAQG,WAAW,GAAG;IACtBF,QAAQE,WAAW,GAAG;AACxB"}
@@ -5,4 +5,3 @@ export declare const UL: ComponentType<ViewProps>;
5
5
  type LIProps = TextProps | ViewProps;
6
6
  export declare function LI(props: PropsWithChildren<LIProps>): import("react/jsx-runtime").JSX.Element;
7
7
  export {};
8
- //# sourceMappingURL=Lists.d.ts.map
@@ -0,0 +1,46 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Platform } from 'react-native';
3
+ import Text from '../primitives/Text';
4
+ import View from '../primitives/View';
5
+ function createView(nativeProps = {}) {
6
+ return function Dom(props) {
7
+ return /*#__PURE__*/ _jsx(View, {
8
+ ...nativeProps,
9
+ ...props
10
+ });
11
+ };
12
+ }
13
+ export const UL = createView(Platform.select({
14
+ web: {
15
+ role: 'list'
16
+ }
17
+ }));
18
+ if (__DEV__) {
19
+ UL.displayName = 'UL';
20
+ }
21
+ function isTextProps(props) {
22
+ // Treat <li></li> as a Text element.
23
+ return typeof props.children === 'string';
24
+ }
25
+ export function LI(props) {
26
+ if (isTextProps(props)) {
27
+ const role = Platform.select({
28
+ web: 'listitem',
29
+ default: props.role
30
+ });
31
+ return /*#__PURE__*/ _jsx(Text, {
32
+ ...props,
33
+ role: role
34
+ });
35
+ }
36
+ const role = Platform.select({
37
+ web: 'listitem',
38
+ default: props.role
39
+ });
40
+ return /*#__PURE__*/ _jsx(View, {
41
+ ...props,
42
+ role: role
43
+ });
44
+ }
45
+
46
+ //# sourceMappingURL=Lists.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["elements/Lists.tsx"],"sourcesContent":[null],"names":["Platform","Text","View","createView","nativeProps","Dom","props","UL","select","web","role","__DEV__","displayName","isTextProps","children","LI","default"],"mappings":";AACA,SAASA,QAAQ,QAAQ,eAAe;AAGxC,OAAOC,UAAU,qBAAqB;AAEtC,OAAOC,UAAU,qBAAqB;AAEtC,SAASC,WAAWC,cAAyB,CAAC,CAAC;IAC7C,OAAO,SAASC,IAAIC,KAAgB;QAClC,qBAAO,KAACJ;YAAM,GAAGE,WAAW;YAAG,GAAGE,KAAK;;IACzC;AACF;AAEA,OAAO,MAAMC,KAAKJ,WAChBH,SAASQ,MAAM,CAAC;IACdC,KAAK;QACHC,MAAM;IACR;AACF,IACA;AAEF,IAAIC,SAAS;IACXJ,GAAGK,WAAW,GAAG;AACnB;AAEA,SAASC,YAAYP,KAAU;IAC7B,qCAAqC;IACrC,OAAO,OAAOA,MAAMQ,QAAQ,KAAK;AACnC;AAIA,OAAO,SAASC,GAAGT,KAAiC;IAClD,IAAIO,YAAYP,QAAQ;QACtB,MAAMI,OAAwBV,SAASQ,MAAM,CAAC;YAC5CC,KAAK;YACLO,SAASV,MAAMI,IAAI;QACrB;QACA,qBAAO,KAACT;YAAM,GAAGK,KAAK;YAAEI,MAAMA;;IAChC;IACA,MAAMA,OAAwBV,SAASQ,MAAM,CAAC;QAC5CC,KAAK;QACLO,SAASV,MAAMI,IAAI;IACrB;IACA,qBAAO,KAACR;QAAM,GAAGI,KAAK;QAAEI,MAAMA;;AAChC"}
@@ -1,3 +1,2 @@
1
1
  import type { ViewProps } from '../primitives/View';
2
2
  export declare function HR(props: ViewProps): import("react/jsx-runtime").JSX.Element;
3
- //# sourceMappingURL=Rules.d.ts.map
@@ -0,0 +1,23 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { StyleSheet } from 'react-native';
3
+ import View from '../primitives/View';
4
+ export function HR(props) {
5
+ return /*#__PURE__*/ _jsx(View, {
6
+ ...props,
7
+ style: [
8
+ styles.hr,
9
+ props.style
10
+ ]
11
+ });
12
+ }
13
+ const styles = StyleSheet.create({
14
+ hr: {
15
+ borderTopWidth: StyleSheet.hairlineWidth,
16
+ borderBottomWidth: StyleSheet.hairlineWidth,
17
+ borderTopColor: '#9A9A9A',
18
+ borderBottomColor: '#EEEEEE',
19
+ marginVertical: 8
20
+ }
21
+ });
22
+
23
+ //# sourceMappingURL=Rules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["elements/Rules.tsx"],"sourcesContent":[null],"names":["StyleSheet","View","HR","props","style","styles","hr","create","borderTopWidth","hairlineWidth","borderBottomWidth","borderTopColor","borderBottomColor","marginVertical"],"mappings":";AAAA,SAASA,UAAU,QAAQ,eAAe;AAG1C,OAAOC,UAAU,qBAAqB;AAEtC,OAAO,SAASC,GAAGC,KAAgB;IACjC,qBAAO,KAACF;QAAM,GAAGE,KAAK;QAAEC,OAAO;YAACC,OAAOC,EAAE;YAAEH,MAAMC,KAAK;SAAC;;AACzD;AAEA,MAAMC,SAASL,WAAWO,MAAM,CAAC;IAC/BD,IAAI;QACFE,gBAAgBR,WAAWS,aAAa;QACxCC,mBAAmBV,WAAWS,aAAa;QAC3CE,gBAAgB;QAChBC,mBAAmB;QACnBC,gBAAgB;IAClB;AACF"}
@@ -1,3 +1,2 @@
1
1
  import type { ViewProps } from '../primitives/View';
2
2
  export declare function HR(props: ViewProps): import("react").ReactElement<import("../primitives/View").WebViewProps & Omit<import("react-native").ViewProps & import("react").ClassAttributes<typeof import("react-native").View>, "style">, string | import("react").JSXElementConstructor<any>>;
3
- //# sourceMappingURL=Rules.web.d.ts.map
@@ -0,0 +1,6 @@
1
+ import createElement from 'react-native-web/dist/exports/createElement';
2
+ export function HR(props) {
3
+ return createElement('hr', props);
4
+ }
5
+
6
+ //# sourceMappingURL=Rules.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["elements/Rules.web.tsx"],"sourcesContent":[null],"names":["createElement","HR","props"],"mappings":"AAAA,OAAOA,mBAAmB,8CAA8C;AAIxE,OAAO,SAASC,GAAGC,KAAgB;IACjC,OAAOF,cAAc,MAAME;AAC7B"}
@@ -9,4 +9,3 @@ export declare function TH(props: TableTextProps): import("react/jsx-runtime").J
9
9
  export declare function TR(props: ViewProps): import("react/jsx-runtime").JSX.Element;
10
10
  export declare function TD(props: TableTextProps): import("react/jsx-runtime").JSX.Element;
11
11
  export declare function Caption(props: TextProps): import("react/jsx-runtime").JSX.Element;
12
- //# sourceMappingURL=Table.d.ts.map