@tamagui/react-native-web-internals 1.114.4 → 1.115.0

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 (198) hide show
  1. package/dist/cjs/StyleSheet/__tests__/{compiler-createReactDOMStyle-test.js → compiler-createReactDOMStyle-test.cjs} +98 -50
  2. package/dist/cjs/StyleSheet/__tests__/{compiler-test.js → compiler-test.cjs} +158 -129
  3. package/dist/cjs/StyleSheet/__tests__/{dom-createOrderedCSSStyleSheet-test.js → dom-createOrderedCSSStyleSheet-test.cjs} +23 -19
  4. package/dist/cjs/StyleSheet/__tests__/{index-test.js → index-test.cjs} +173 -116
  5. package/dist/cjs/StyleSheet/__tests__/preprocess-test.cjs +108 -0
  6. package/dist/cjs/StyleSheet/__tests__/validate-test.cjs +36 -0
  7. package/dist/cjs/StyleSheet/compiler/createReactDOMStyle.cjs +99 -0
  8. package/dist/cjs/StyleSheet/compiler/hash.cjs +26 -0
  9. package/dist/cjs/StyleSheet/compiler/hyphenateStyleName.cjs +37 -0
  10. package/dist/cjs/StyleSheet/compiler/index.cjs +329 -0
  11. package/dist/cjs/StyleSheet/compiler/{normalizeColor.js → normalizeColor.cjs} +30 -20
  12. package/dist/cjs/StyleSheet/compiler/{normalizeValueWithProperty.js → normalizeValueWithProperty.cjs} +24 -15
  13. package/dist/cjs/StyleSheet/compiler/resolveShadowValue.cjs +60 -0
  14. package/dist/cjs/StyleSheet/dom/createCSSStyleSheet.cjs +48 -0
  15. package/dist/cjs/StyleSheet/dom/{createOrderedCSSStyleSheet.js → createOrderedCSSStyleSheet.cjs} +36 -20
  16. package/dist/cjs/StyleSheet/dom/index.cjs +78 -0
  17. package/dist/cjs/StyleSheet/{index.js → index.cjs} +24 -19
  18. package/dist/cjs/StyleSheet/preprocess.cjs +112 -0
  19. package/dist/cjs/StyleSheet/validate.cjs +69 -0
  20. package/dist/cjs/TextAncestorContext.cjs +29 -0
  21. package/dist/cjs/{colorProps.js → colorProps.cjs} +16 -11
  22. package/dist/cjs/index.cjs +113 -0
  23. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.cjs +50 -0
  24. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.cjs +40 -0
  25. package/dist/cjs/modules/AccessibilityUtil/{index.js → index.cjs} +25 -15
  26. package/dist/cjs/modules/AccessibilityUtil/isDisabled.cjs +27 -0
  27. package/dist/cjs/modules/AccessibilityUtil/propsToAccessibilityComponent.cjs +69 -0
  28. package/dist/cjs/modules/AccessibilityUtil/propsToAriaRole.cjs +48 -0
  29. package/dist/cjs/modules/AssetRegistry/{index.js → index.cjs} +16 -11
  30. package/dist/cjs/modules/ImageLoader/index.cjs +112 -0
  31. package/dist/cjs/modules/{InteractionManager.js → InteractionManager.cjs} +26 -20
  32. package/dist/cjs/modules/Platform/__tests__/index-test.cjs +48 -0
  33. package/dist/cjs/modules/Platform/index.cjs +31 -0
  34. package/dist/cjs/modules/TextInputState/{index.js → index.cjs} +23 -15
  35. package/dist/cjs/modules/UIManager/__tests__/{index-test.js → index-test.cjs} +56 -32
  36. package/dist/cjs/modules/UIManager/index.cjs +138 -0
  37. package/dist/cjs/modules/canUseDOM.cjs +28 -0
  38. package/dist/cjs/modules/createDOMProps/__tests__/index-test.cjs +156 -0
  39. package/dist/cjs/modules/createDOMProps/index.cjs +138 -0
  40. package/dist/cjs/modules/createEventHandle/__tests__/index-test.cjs +344 -0
  41. package/dist/cjs/modules/createEventHandle/{index.js → index.cjs} +38 -34
  42. package/dist/cjs/modules/dismissKeyboard/{index.js → index.cjs} +23 -15
  43. package/dist/cjs/modules/forwardedProps/index.cjs +160 -0
  44. package/dist/cjs/modules/getBoundingClientRect/index.cjs +29 -0
  45. package/dist/cjs/modules/invariant.cjs +36 -0
  46. package/dist/cjs/modules/isSelectionValid/index.cjs +35 -0
  47. package/dist/cjs/modules/isWebColor/index.cjs +27 -0
  48. package/dist/cjs/modules/mergeRefs/__tests__/index-test.cjs +42 -0
  49. package/dist/cjs/modules/mergeRefs/index.cjs +42 -0
  50. package/dist/cjs/modules/modality/__tests__/{index-test.js → index-test.cjs} +20 -8
  51. package/dist/cjs/modules/modality/{index.js → index.cjs} +75 -19
  52. package/dist/cjs/modules/multiplyStyleLengthValue/__tests__/{index-test.js → index-test.cjs} +16 -14
  53. package/dist/cjs/modules/multiplyStyleLengthValue/index.cjs +36 -0
  54. package/dist/cjs/modules/normalizeColor/{index.js → index.cjs} +29 -18
  55. package/dist/cjs/modules/pick/index.cjs +30 -0
  56. package/dist/cjs/modules/processColor/__tests__/{index-test.js → index-test.cjs} +17 -15
  57. package/dist/cjs/modules/processColor/{index.js → index.cjs} +25 -19
  58. package/dist/cjs/modules/requestIdleCallback/index.cjs +56 -0
  59. package/dist/cjs/modules/setValueForStyles/{dangerousStyleValue.js → dangerousStyleValue.cjs} +23 -15
  60. package/dist/cjs/modules/setValueForStyles/{index.js → index.cjs} +26 -18
  61. package/dist/cjs/modules/unitlessNumbers/index.cjs +87 -0
  62. package/dist/cjs/modules/useElementLayout/{index.js → index.cjs} +40 -23
  63. package/dist/cjs/modules/useEvent/__tests__/{index-test.js → index-test.cjs} +218 -99
  64. package/dist/cjs/modules/useEvent/index.cjs +56 -0
  65. package/dist/cjs/modules/useHover/__tests__/{index-test.js → index-test.cjs} +118 -40
  66. package/dist/cjs/modules/useHover/index.cjs +108 -0
  67. package/dist/cjs/modules/useLayoutEffect/{index.js → index.cjs} +24 -15
  68. package/dist/cjs/modules/useLocale/index.cjs +66 -0
  69. package/dist/cjs/modules/useLocale/{isLocaleRTL.js → isLocaleRTL.cjs} +23 -31
  70. package/dist/cjs/modules/useMergeRefs/__tests__/index-test.cjs +102 -0
  71. package/dist/cjs/modules/useMergeRefs/index.cjs +43 -0
  72. package/dist/cjs/modules/usePlatformMethods/index.cjs +48 -0
  73. package/dist/cjs/modules/useStable/__tests__/{index-test.js → index-test.cjs} +46 -23
  74. package/dist/cjs/modules/useStable/{index.js → index.cjs} +22 -14
  75. package/dist/cjs/styleTypes.cjs +16 -0
  76. package/dist/cjs/types.cjs +16 -0
  77. package/package.json +9 -8
  78. package/dist/cjs/StyleSheet/__tests__/preprocess-test.js +0 -77
  79. package/dist/cjs/StyleSheet/__tests__/validate-test.js +0 -18
  80. package/dist/cjs/StyleSheet/compiler/createReactDOMStyle.js +0 -121
  81. package/dist/cjs/StyleSheet/compiler/hash.js +0 -21
  82. package/dist/cjs/StyleSheet/compiler/hyphenateStyleName.js +0 -31
  83. package/dist/cjs/StyleSheet/compiler/index.js +0 -253
  84. package/dist/cjs/StyleSheet/compiler/resolveShadowValue.js +0 -35
  85. package/dist/cjs/StyleSheet/dom/createCSSStyleSheet.js +0 -44
  86. package/dist/cjs/StyleSheet/dom/index.js +0 -74
  87. package/dist/cjs/StyleSheet/preprocess.js +0 -67
  88. package/dist/cjs/StyleSheet/validate.js +0 -66
  89. package/dist/cjs/TextAncestorContext.js +0 -24
  90. package/dist/cjs/index.js +0 -73
  91. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAccessibilityComponent-test.js +0 -46
  92. package/dist/cjs/modules/AccessibilityUtil/__tests__/propsToAriaRole-test.js +0 -30
  93. package/dist/cjs/modules/AccessibilityUtil/isDisabled.js +0 -22
  94. package/dist/cjs/modules/AccessibilityUtil/propsToAccessibilityComponent.js +0 -60
  95. package/dist/cjs/modules/AccessibilityUtil/propsToAriaRole.js +0 -43
  96. package/dist/cjs/modules/ImageLoader/index.js +0 -102
  97. package/dist/cjs/modules/Platform/__tests__/index-test.js +0 -46
  98. package/dist/cjs/modules/Platform/index.js +0 -26
  99. package/dist/cjs/modules/UIManager/index.js +0 -101
  100. package/dist/cjs/modules/canUseDOM.js +0 -23
  101. package/dist/cjs/modules/createDOMProps/__tests__/index-test.js +0 -106
  102. package/dist/cjs/modules/createDOMProps/index.js +0 -121
  103. package/dist/cjs/modules/createEventHandle/__tests__/index-test.js +0 -242
  104. package/dist/cjs/modules/forwardedProps/index.js +0 -145
  105. package/dist/cjs/modules/getBoundingClientRect/index.js +0 -25
  106. package/dist/cjs/modules/invariant.js +0 -35
  107. package/dist/cjs/modules/isSelectionValid/index.js +0 -27
  108. package/dist/cjs/modules/isWebColor/index.js +0 -22
  109. package/dist/cjs/modules/mergeRefs/__tests__/index-test.js +0 -34
  110. package/dist/cjs/modules/mergeRefs/index.js +0 -41
  111. package/dist/cjs/modules/multiplyStyleLengthValue/index.js +0 -28
  112. package/dist/cjs/modules/pick/index.js +0 -26
  113. package/dist/cjs/modules/requestIdleCallback/index.js +0 -44
  114. package/dist/cjs/modules/unitlessNumbers/index.js +0 -80
  115. package/dist/cjs/modules/useEvent/index.js +0 -45
  116. package/dist/cjs/modules/useHover/index.js +0 -81
  117. package/dist/cjs/modules/useLocale/index.js +0 -54
  118. package/dist/cjs/modules/useMergeRefs/__tests__/index-test.js +0 -68
  119. package/dist/cjs/modules/useMergeRefs/index.js +0 -36
  120. package/dist/cjs/modules/usePlatformMethods/index.js +0 -39
  121. package/dist/cjs/styleTypes.js +0 -14
  122. package/dist/cjs/types.js +0 -14
  123. /package/dist/cjs/StyleSheet/__tests__/{compiler-createReactDOMStyle-test.js.map → compiler-createReactDOMStyle-test.cjs.map} +0 -0
  124. /package/dist/cjs/StyleSheet/__tests__/{compiler-test.js.map → compiler-test.cjs.map} +0 -0
  125. /package/dist/cjs/StyleSheet/__tests__/{dom-createOrderedCSSStyleSheet-test.js.map → dom-createOrderedCSSStyleSheet-test.cjs.map} +0 -0
  126. /package/dist/cjs/StyleSheet/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  127. /package/dist/cjs/StyleSheet/__tests__/{preprocess-test.js.map → preprocess-test.cjs.map} +0 -0
  128. /package/dist/cjs/StyleSheet/__tests__/{validate-test.js.map → validate-test.cjs.map} +0 -0
  129. /package/dist/cjs/StyleSheet/compiler/{createReactDOMStyle.js.map → createReactDOMStyle.cjs.map} +0 -0
  130. /package/dist/cjs/StyleSheet/compiler/{hash.js.map → hash.cjs.map} +0 -0
  131. /package/dist/cjs/StyleSheet/compiler/{hyphenateStyleName.js.map → hyphenateStyleName.cjs.map} +0 -0
  132. /package/dist/cjs/StyleSheet/compiler/{index.js.map → index.cjs.map} +0 -0
  133. /package/dist/cjs/StyleSheet/compiler/{normalizeColor.js.map → normalizeColor.cjs.map} +0 -0
  134. /package/dist/cjs/StyleSheet/compiler/{normalizeValueWithProperty.js.map → normalizeValueWithProperty.cjs.map} +0 -0
  135. /package/dist/cjs/StyleSheet/compiler/{resolveShadowValue.js.map → resolveShadowValue.cjs.map} +0 -0
  136. /package/dist/cjs/StyleSheet/dom/{createCSSStyleSheet.js.map → createCSSStyleSheet.cjs.map} +0 -0
  137. /package/dist/cjs/StyleSheet/dom/{createOrderedCSSStyleSheet.js.map → createOrderedCSSStyleSheet.cjs.map} +0 -0
  138. /package/dist/cjs/StyleSheet/dom/{index.js.map → index.cjs.map} +0 -0
  139. /package/dist/cjs/StyleSheet/{index.js.map → index.cjs.map} +0 -0
  140. /package/dist/cjs/StyleSheet/{preprocess.js.map → preprocess.cjs.map} +0 -0
  141. /package/dist/cjs/StyleSheet/{validate.js.map → validate.cjs.map} +0 -0
  142. /package/dist/cjs/{TextAncestorContext.js.map → TextAncestorContext.cjs.map} +0 -0
  143. /package/dist/cjs/{colorProps.js.map → colorProps.cjs.map} +0 -0
  144. /package/dist/cjs/{index.js.map → index.cjs.map} +0 -0
  145. /package/dist/cjs/modules/AccessibilityUtil/__tests__/{propsToAccessibilityComponent-test.js.map → propsToAccessibilityComponent-test.cjs.map} +0 -0
  146. /package/dist/cjs/modules/AccessibilityUtil/__tests__/{propsToAriaRole-test.js.map → propsToAriaRole-test.cjs.map} +0 -0
  147. /package/dist/cjs/modules/AccessibilityUtil/{index.js.map → index.cjs.map} +0 -0
  148. /package/dist/cjs/modules/AccessibilityUtil/{isDisabled.js.map → isDisabled.cjs.map} +0 -0
  149. /package/dist/cjs/modules/AccessibilityUtil/{propsToAccessibilityComponent.js.map → propsToAccessibilityComponent.cjs.map} +0 -0
  150. /package/dist/cjs/modules/AccessibilityUtil/{propsToAriaRole.js.map → propsToAriaRole.cjs.map} +0 -0
  151. /package/dist/cjs/modules/AssetRegistry/{index.js.map → index.cjs.map} +0 -0
  152. /package/dist/cjs/modules/ImageLoader/{index.js.map → index.cjs.map} +0 -0
  153. /package/dist/cjs/modules/{InteractionManager.js.map → InteractionManager.cjs.map} +0 -0
  154. /package/dist/cjs/modules/Platform/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  155. /package/dist/cjs/modules/Platform/{index.js.map → index.cjs.map} +0 -0
  156. /package/dist/cjs/modules/TextInputState/{index.js.map → index.cjs.map} +0 -0
  157. /package/dist/cjs/modules/UIManager/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  158. /package/dist/cjs/modules/UIManager/{index.js.map → index.cjs.map} +0 -0
  159. /package/dist/cjs/modules/{canUseDOM.js.map → canUseDOM.cjs.map} +0 -0
  160. /package/dist/cjs/modules/createDOMProps/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  161. /package/dist/cjs/modules/createDOMProps/{index.js.map → index.cjs.map} +0 -0
  162. /package/dist/cjs/modules/createEventHandle/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  163. /package/dist/cjs/modules/createEventHandle/{index.js.map → index.cjs.map} +0 -0
  164. /package/dist/cjs/modules/dismissKeyboard/{index.js.map → index.cjs.map} +0 -0
  165. /package/dist/cjs/modules/forwardedProps/{index.js.map → index.cjs.map} +0 -0
  166. /package/dist/cjs/modules/getBoundingClientRect/{index.js.map → index.cjs.map} +0 -0
  167. /package/dist/cjs/modules/{invariant.js.map → invariant.cjs.map} +0 -0
  168. /package/dist/cjs/modules/isSelectionValid/{index.js.map → index.cjs.map} +0 -0
  169. /package/dist/cjs/modules/isWebColor/{index.js.map → index.cjs.map} +0 -0
  170. /package/dist/cjs/modules/mergeRefs/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  171. /package/dist/cjs/modules/mergeRefs/{index.js.map → index.cjs.map} +0 -0
  172. /package/dist/cjs/modules/modality/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  173. /package/dist/cjs/modules/modality/{index.js.map → index.cjs.map} +0 -0
  174. /package/dist/cjs/modules/multiplyStyleLengthValue/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  175. /package/dist/cjs/modules/multiplyStyleLengthValue/{index.js.map → index.cjs.map} +0 -0
  176. /package/dist/cjs/modules/normalizeColor/{index.js.map → index.cjs.map} +0 -0
  177. /package/dist/cjs/modules/pick/{index.js.map → index.cjs.map} +0 -0
  178. /package/dist/cjs/modules/processColor/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  179. /package/dist/cjs/modules/processColor/{index.js.map → index.cjs.map} +0 -0
  180. /package/dist/cjs/modules/requestIdleCallback/{index.js.map → index.cjs.map} +0 -0
  181. /package/dist/cjs/modules/setValueForStyles/{dangerousStyleValue.js.map → dangerousStyleValue.cjs.map} +0 -0
  182. /package/dist/cjs/modules/setValueForStyles/{index.js.map → index.cjs.map} +0 -0
  183. /package/dist/cjs/modules/unitlessNumbers/{index.js.map → index.cjs.map} +0 -0
  184. /package/dist/cjs/modules/useElementLayout/{index.js.map → index.cjs.map} +0 -0
  185. /package/dist/cjs/modules/useEvent/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  186. /package/dist/cjs/modules/useEvent/{index.js.map → index.cjs.map} +0 -0
  187. /package/dist/cjs/modules/useHover/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  188. /package/dist/cjs/modules/useHover/{index.js.map → index.cjs.map} +0 -0
  189. /package/dist/cjs/modules/useLayoutEffect/{index.js.map → index.cjs.map} +0 -0
  190. /package/dist/cjs/modules/useLocale/{index.js.map → index.cjs.map} +0 -0
  191. /package/dist/cjs/modules/useLocale/{isLocaleRTL.js.map → isLocaleRTL.cjs.map} +0 -0
  192. /package/dist/cjs/modules/useMergeRefs/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  193. /package/dist/cjs/modules/useMergeRefs/{index.js.map → index.cjs.map} +0 -0
  194. /package/dist/cjs/modules/usePlatformMethods/{index.js.map → index.cjs.map} +0 -0
  195. /package/dist/cjs/modules/useStable/__tests__/{index-test.js.map → index-test.cjs.map} +0 -0
  196. /package/dist/cjs/modules/useStable/{index.js.map → index.cjs.map} +0 -0
  197. /package/dist/cjs/{styleTypes.js.map → styleTypes.cjs.map} +0 -0
  198. /package/dist/cjs/{types.js.map → types.cjs.map} +0 -0
@@ -2,33 +2,39 @@ var __create = Object.create;
2
2
  var __defProp = Object.defineProperty;
3
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __getProtoOf = Object.getPrototypeOf,
6
+ __hasOwnProp = Object.prototype.hasOwnProperty;
6
7
  var __copyProps = (to, from, except, desc) => {
7
- if (from && typeof from == "object" || typeof from == "function")
8
- for (let key of __getOwnPropNames(from))
9
- !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
8
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
9
+ get: () => from[key],
10
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
11
+ });
10
12
  return to;
11
13
  };
12
14
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
13
- // If the importer is in node compatibility mode or this is not an ESM
14
- // file that has been converted to a CommonJS file using a Babel-
15
- // compatible transform (i.e. "__esModule" has not been set), then set
16
- // "default" to the CommonJS "module.exports" for node compatibility.
17
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
18
- mod
19
- ));
20
- var import__ = __toESM(require(".."));
15
+ // If the importer is in node compatibility mode or this is not an ESM
16
+ // file that has been converted to a CommonJS file using a Babel-
17
+ // compatible transform (i.e. "__esModule" has not been set), then set
18
+ // "default" to the CommonJS "module.exports" for node compatibility.
19
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
20
+ value: mod,
21
+ enumerable: !0
22
+ }) : target, mod));
23
+ var import__ = __toESM(require("../index.cjs"));
21
24
  const createStyledNode = (name = "div", style = {}) => {
22
- const root = document.createElement(name);
23
- return Object.keys(style).forEach((prop) => {
24
- root.style[prop] = style[prop];
25
- }), root;
26
- }, componentStub = {
27
- _reactInternalInstance: {
28
- _currentElement: { _owner: {} },
29
- _debugID: 1
30
- }
31
- };
25
+ const root = document.createElement(name);
26
+ return Object.keys(style).forEach(prop => {
27
+ root.style[prop] = style[prop];
28
+ }), root;
29
+ },
30
+ componentStub = {
31
+ _reactInternalInstance: {
32
+ _currentElement: {
33
+ _owner: {}
34
+ },
35
+ _debugID: 1
36
+ }
37
+ };
32
38
  describe("apis/UIManager", () => {
33
39
  describe("focus", () => {
34
40
  test('sets tabIndex="-1" on elements not programmatically focusable by default', () => {
@@ -38,29 +44,47 @@ describe("apis/UIManager", () => {
38
44
  const node = createStyledNode();
39
45
  node.tabIndex = 0, import__.default.focus(node), expect(node.getAttribute("tabIndex")).toEqual("0");
40
46
  }), test(`doesn't set tabIndex="-1" on elements focusable by default`, () => {
41
- ["a", "input", "select", "textarea"].forEach((name) => {
47
+ ["a", "input", "select", "textarea"].forEach(name => {
42
48
  const node = createStyledNode(name);
43
49
  import__.default.focus(node), expect(node.getAttribute("tabIndex")).toBeNull();
44
50
  });
45
51
  });
46
52
  }), describe("updateView", () => {
47
53
  test("supports className alias for class", () => {
48
- const node = createStyledNode(), props = { className: "extra" };
54
+ const node = createStyledNode(),
55
+ props = {
56
+ className: "extra"
57
+ };
49
58
  import__.default.updateView(node, props, componentStub), expect(node.getAttribute("class")).toEqual("extra");
50
59
  }), test("adds correct DOM styles to existing style", () => {
51
- const node = createStyledNode("div", { color: "red" }), props = { style: { marginTop: 0, marginBottom: 0, opacity: 0 } };
52
- import__.default.updateView(node, props, componentStub), expect(node.getAttribute("style")).toEqual(
53
- "color: red; margin-top: 0px; margin-bottom: 0px; opacity: 0;"
54
- );
60
+ const node = createStyledNode("div", {
61
+ color: "red"
62
+ }),
63
+ props = {
64
+ style: {
65
+ marginTop: 0,
66
+ marginBottom: 0,
67
+ opacity: 0
68
+ }
69
+ };
70
+ import__.default.updateView(node, props, componentStub), expect(node.getAttribute("style")).toEqual("color: red; margin-top: 0px; margin-bottom: 0px; opacity: 0;");
55
71
  }), test("replaces input and textarea text", () => {
56
72
  const node = createStyledNode("textarea");
57
73
  node.value = "initial";
58
- const textProp = { text: "expected-text" }, valueProp = { value: "expected-value" };
74
+ const textProp = {
75
+ text: "expected-text"
76
+ },
77
+ valueProp = {
78
+ value: "expected-value"
79
+ };
59
80
  import__.default.updateView(node, textProp), expect(node.value).toEqual("expected-text"), import__.default.updateView(node, valueProp), expect(node.value).toEqual("expected-value");
60
81
  }), test("sets other attribute values", () => {
61
- const node = createStyledNode(), props = { "aria-level": "4", "data-of-type": "string" };
82
+ const node = createStyledNode(),
83
+ props = {
84
+ "aria-level": "4",
85
+ "data-of-type": "string"
86
+ };
62
87
  import__.default.updateView(node, props), expect(node.getAttribute("aria-level")).toEqual("4"), expect(node.getAttribute("data-of-type")).toEqual("string");
63
88
  });
64
89
  });
65
- });
66
- //# sourceMappingURL=index-test.js.map
90
+ });
@@ -0,0 +1,138 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf,
6
+ __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: !0
28
+ }) : target, mod)),
29
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
+ value: !0
31
+ }), mod);
32
+ var UIManager_exports = {};
33
+ __export(UIManager_exports, {
34
+ default: () => UIManager_default
35
+ });
36
+ module.exports = __toCommonJS(UIManager_exports);
37
+ var import_getBoundingClientRect = __toESM(require("../getBoundingClientRect/index.cjs")),
38
+ import_setValueForStyles = __toESM(require("../setValueForStyles/index.cjs"));
39
+ const getRect = node => {
40
+ const {
41
+ x,
42
+ y,
43
+ top,
44
+ left
45
+ } = (0, import_getBoundingClientRect.default)(node),
46
+ width = node.offsetWidth,
47
+ height = node.offsetHeight;
48
+ return {
49
+ x,
50
+ y,
51
+ width,
52
+ height,
53
+ top,
54
+ left
55
+ };
56
+ },
57
+ measureLayout = (node, relativeToNativeNode, callback) => {
58
+ const relativeNode = relativeToNativeNode || node && node.parentNode;
59
+ node && relativeNode && setTimeout(() => {
60
+ const relativeRect = (0, import_getBoundingClientRect.default)(relativeNode),
61
+ {
62
+ height,
63
+ left,
64
+ top,
65
+ width
66
+ } = getRect(node),
67
+ x = left - relativeRect.left,
68
+ y = top - relativeRect.top;
69
+ callback(x, y, width, height, left, top);
70
+ }, 0);
71
+ },
72
+ focusableElements = {
73
+ A: !0,
74
+ INPUT: !0,
75
+ SELECT: !0,
76
+ TEXTAREA: !0
77
+ },
78
+ UIManager = {
79
+ blur(node) {
80
+ try {
81
+ node.blur();
82
+ } catch {}
83
+ },
84
+ focus(node) {
85
+ try {
86
+ const name = node.nodeName;
87
+ node.getAttribute("tabIndex") == null && focusableElements[name] == null && node.setAttribute("tabIndex", "-1"), node.focus();
88
+ } catch {}
89
+ },
90
+ measure(node, callback) {
91
+ measureLayout(node, null, callback);
92
+ },
93
+ measureInWindow(node, callback) {
94
+ node && setTimeout(() => {
95
+ const {
96
+ height,
97
+ left,
98
+ top,
99
+ width
100
+ } = getRect(node);
101
+ callback(left, top, width, height);
102
+ }, 0);
103
+ },
104
+ measureLayout(node, relativeToNativeNode, onFail, onSuccess) {
105
+ measureLayout(node, relativeToNativeNode, onSuccess);
106
+ },
107
+ updateView(node, props) {
108
+ for (const prop in props) {
109
+ if (!Object.prototype.hasOwnProperty.call(props, prop)) continue;
110
+ const value = props[prop];
111
+ switch (prop) {
112
+ case "style":
113
+ {
114
+ (0, import_setValueForStyles.default)(node, value);
115
+ break;
116
+ }
117
+ case "class":
118
+ case "className":
119
+ {
120
+ node.setAttribute("class", value);
121
+ break;
122
+ }
123
+ case "text":
124
+ case "value":
125
+ node.value = value;
126
+ break;
127
+ default:
128
+ node.setAttribute(prop, value);
129
+ }
130
+ }
131
+ },
132
+ configureNextLayoutAnimation(config, onAnimationDidEnd) {
133
+ onAnimationDidEnd();
134
+ },
135
+ // mocks
136
+ setLayoutAnimationEnabledExperimental() {}
137
+ };
138
+ var UIManager_default = UIManager;
@@ -0,0 +1,28 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: !0
9
+ });
10
+ },
11
+ __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
13
+ get: () => from[key],
14
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
+ });
16
+ return to;
17
+ };
18
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
+ value: !0
20
+ }), mod);
21
+ var canUseDOM_exports = {};
22
+ __export(canUseDOM_exports, {
23
+ canUseDOM: () => canUseDOM,
24
+ default: () => canUseDOM_default
25
+ });
26
+ module.exports = __toCommonJS(canUseDOM_exports);
27
+ const canUseDOM = !!(typeof window < "u" && window.document && window.document.createElement);
28
+ var canUseDOM_default = canUseDOM;
@@ -0,0 +1,156 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf,
6
+ __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __copyProps = (to, from, except, desc) => {
8
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
9
+ get: () => from[key],
10
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
11
+ });
12
+ return to;
13
+ };
14
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
15
+ // If the importer is in node compatibility mode or this is not an ESM
16
+ // file that has been converted to a CommonJS file using a Babel-
17
+ // compatible transform (i.e. "__esModule" has not been set), then set
18
+ // "default" to the CommonJS "module.exports" for node compatibility.
19
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
20
+ value: mod,
21
+ enumerable: !0
22
+ }) : target, mod));
23
+ var import__ = __toESM(require("../index.cjs"));
24
+ const createProps = props => (0, import__.default)(null, props);
25
+ describe("modules/createDOMProps", () => {
26
+ describe("focus-related accessibility attributes", () => {
27
+ test("with no accessibility props", () => {
28
+ expect(createProps({})).toEqual({});
29
+ }), describe('"accessibilityRole" of "link"', () => {
30
+ const accessibilityRole = "link";
31
+ test("default case", () => {
32
+ expect(createProps({
33
+ accessibilityRole
34
+ })).toEqual(expect.not.objectContaining({
35
+ tabIndex: "-1"
36
+ }));
37
+ }), test('when "focusable" is true', () => {
38
+ expect(createProps({
39
+ accessibilityRole,
40
+ focusable: !0
41
+ })).toEqual(expect.not.objectContaining({
42
+ tabIndex: "-1"
43
+ }));
44
+ }), test('when "focusable" is false', () => {
45
+ expect(createProps({
46
+ accessibilityRole,
47
+ focusable: !1
48
+ })).toEqual(expect.objectContaining({
49
+ tabIndex: "-1"
50
+ }));
51
+ }), test('when "accessibilityDisabled" is true', () => {
52
+ expect(createProps({
53
+ accessibilityRole,
54
+ accessibilityDisabled: !0
55
+ })).toEqual(expect.objectContaining({
56
+ "aria-disabled": !0
57
+ }));
58
+ }), test('when "disabled" is false', () => {
59
+ expect(createProps({
60
+ accessibilityRole,
61
+ accessibilityDisabled: !1
62
+ })).toEqual(expect.not.objectContaining({
63
+ tabIndex: "-1"
64
+ }));
65
+ });
66
+ });
67
+ const testFocusableRole = accessibilityRole => {
68
+ test("default case", () => {
69
+ expect(createProps({
70
+ accessibilityRole
71
+ })).toEqual(expect.objectContaining({
72
+ tabIndex: "0"
73
+ }));
74
+ }), test('when "focusable" is true', () => {
75
+ expect(createProps({
76
+ accessibilityRole,
77
+ focusable: !0
78
+ })).toEqual(expect.objectContaining({
79
+ tabIndex: "0"
80
+ }));
81
+ }), test('when "focusable" is false', () => {
82
+ expect(createProps({
83
+ accessibilityRole,
84
+ focusable: !1
85
+ })).toEqual(expect.objectContaining({
86
+ tabIndex: "-1"
87
+ }));
88
+ }), test('when "accessibilityDisabled" is true', () => {
89
+ expect(createProps({
90
+ accessibilityRole,
91
+ accessibilityDisabled: !0
92
+ })).toEqual(expect.objectContaining({
93
+ "aria-disabled": !0
94
+ }));
95
+ }), test('when "accessibilityDisabled" is false', () => {
96
+ expect(createProps({
97
+ accessibilityRole,
98
+ accessibilityDisabled: !1
99
+ })).toEqual(expect.objectContaining({
100
+ tabIndex: "0"
101
+ }));
102
+ });
103
+ };
104
+ describe('"accessibilityRole" of "button"', () => {
105
+ testFocusableRole("button");
106
+ }), describe("with unfocusable accessibilityRole", () => {
107
+ test('when "focusable" is true', () => {
108
+ expect(createProps({
109
+ focusable: !0
110
+ })).toEqual(expect.objectContaining({
111
+ tabIndex: "0"
112
+ }));
113
+ }), test('when "focusable" is false', () => {
114
+ expect(createProps({
115
+ focusable: !1
116
+ })).toEqual(expect.objectContaining({
117
+ tabIndex: "-1"
118
+ }));
119
+ });
120
+ });
121
+ }), test('prop "accessibilityLabel" becomes "aria-label"', () => {
122
+ const accessibilityLabel = "accessibilityLabel",
123
+ props = createProps({
124
+ accessibilityLabel
125
+ });
126
+ expect(props["aria-label"]).toEqual(accessibilityLabel);
127
+ }), test('prop "accessibilityLiveRegion" becomes "aria-live"', () => {
128
+ const props = createProps({
129
+ accessibilityLiveRegion: "none"
130
+ });
131
+ expect(props["aria-live"]).toEqual("off");
132
+ }), test('prop "accessibilityRole" becomes "role"', () => {
133
+ const props = createProps({
134
+ accessibilityRole: "button"
135
+ });
136
+ expect(props.role).toEqual("button");
137
+ }), test('prop "className" is preserved', () => {
138
+ const className = "external-class-name",
139
+ props = createProps({
140
+ className
141
+ });
142
+ expect(props.className).toEqual(className);
143
+ }), test('prop "nativeID" becomes "id"', () => {
144
+ const nativeID = "Example.nativeID",
145
+ props = createProps({
146
+ nativeID
147
+ });
148
+ expect(props.id).toEqual(nativeID);
149
+ }), test('prop "testID" becomes "data-testid"', () => {
150
+ const testID = "Example.testID",
151
+ props = createProps({
152
+ testID
153
+ });
154
+ expect(props["data-testid"]).toEqual(testID);
155
+ });
156
+ });
@@ -0,0 +1,138 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf,
6
+ __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: !0
11
+ });
12
+ },
13
+ __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from == "object" || typeof from == "function") for (let key of __getOwnPropNames(from)) !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, {
15
+ get: () => from[key],
16
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
17
+ });
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: !0
28
+ }) : target, mod)),
29
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
+ value: !0
31
+ }), mod);
32
+ var createDOMProps_exports = {};
33
+ __export(createDOMProps_exports, {
34
+ default: () => createDOMProps_default,
35
+ stylesFromProps: () => stylesFromProps
36
+ });
37
+ module.exports = __toCommonJS(createDOMProps_exports);
38
+ var import_AccessibilityUtil = __toESM(require("../AccessibilityUtil/index.cjs")),
39
+ import_web = require("@tamagui/web");
40
+ const emptyObject = {},
41
+ hasOwnProperty = Object.prototype.hasOwnProperty,
42
+ isArray = Array.isArray,
43
+ uppercasePattern = /[A-Z]/g;
44
+ function toHyphenLower(match) {
45
+ return "-" + match.toLowerCase();
46
+ }
47
+ function hyphenateString(str) {
48
+ return str.replace(uppercasePattern, toHyphenLower);
49
+ }
50
+ function processIDRefList(idRefList) {
51
+ return isArray(idRefList) ? idRefList.join(" ") : idRefList;
52
+ }
53
+ const stylesFromProps = /* @__PURE__ */new WeakMap(),
54
+ createDOMProps = (elementType, props, options) => {
55
+ props || (props = emptyObject);
56
+ const {
57
+ accessibilityActiveDescendant,
58
+ accessibilityAtomic,
59
+ accessibilityAutoComplete,
60
+ accessibilityBusy,
61
+ accessibilityChecked,
62
+ accessibilityColumnCount,
63
+ accessibilityColumnIndex,
64
+ accessibilityColumnSpan,
65
+ accessibilityControls,
66
+ accessibilityCurrent,
67
+ accessibilityDescribedBy,
68
+ accessibilityDetails,
69
+ accessibilityDisabled,
70
+ accessibilityErrorMessage,
71
+ accessibilityExpanded,
72
+ accessibilityFlowTo,
73
+ accessibilityHasPopup,
74
+ accessibilityHidden,
75
+ accessibilityInvalid,
76
+ accessibilityKeyShortcuts,
77
+ accessibilityLabel,
78
+ accessibilityLabelledBy,
79
+ accessibilityLevel,
80
+ accessibilityLiveRegion,
81
+ accessibilityModal,
82
+ accessibilityMultiline,
83
+ accessibilityMultiSelectable,
84
+ accessibilityOrientation,
85
+ accessibilityOwns,
86
+ accessibilityPlaceholder,
87
+ accessibilityPosInSet,
88
+ accessibilityPressed,
89
+ accessibilityReadOnly,
90
+ accessibilityRequired,
91
+ /* eslint-disable */
92
+ accessibilityRole,
93
+ /* eslint-enable */
94
+ accessibilityRoleDescription,
95
+ accessibilityRowCount,
96
+ accessibilityRowIndex,
97
+ accessibilityRowSpan,
98
+ accessibilitySelected,
99
+ accessibilitySetSize,
100
+ accessibilitySort,
101
+ accessibilityValueMax,
102
+ accessibilityValueMin,
103
+ accessibilityValueNow,
104
+ accessibilityValueText,
105
+ dataSet,
106
+ focusable,
107
+ nativeID,
108
+ pointerEvents,
109
+ style,
110
+ testID,
111
+ id,
112
+ // Rest
113
+ ...domProps
114
+ } = props,
115
+ disabled = accessibilityDisabled,
116
+ role = import_AccessibilityUtil.default.propsToAriaRole(props);
117
+ accessibilityActiveDescendant != null && (domProps["aria-activedescendant"] = accessibilityActiveDescendant), accessibilityAtomic != null && (domProps["aria-atomic"] = accessibilityAtomic), accessibilityAutoComplete != null && (domProps["aria-autocomplete"] = accessibilityAutoComplete), accessibilityBusy != null && (domProps["aria-busy"] = accessibilityBusy), accessibilityChecked != null && (domProps["aria-checked"] = accessibilityChecked), accessibilityColumnCount != null && (domProps["aria-colcount"] = accessibilityColumnCount), accessibilityColumnIndex != null && (domProps["aria-colindex"] = accessibilityColumnIndex), accessibilityColumnSpan != null && (domProps["aria-colspan"] = accessibilityColumnSpan), accessibilityControls != null && (domProps["aria-controls"] = processIDRefList(accessibilityControls)), accessibilityCurrent != null && (domProps["aria-current"] = accessibilityCurrent), accessibilityDescribedBy != null && (domProps["aria-describedby"] = processIDRefList(accessibilityDescribedBy)), accessibilityDetails != null && (domProps["aria-details"] = accessibilityDetails), disabled === !0 && (domProps["aria-disabled"] = !0, (elementType === "button" || elementType === "form" || elementType === "input" || elementType === "select" || elementType === "textarea") && (domProps.disabled = !0)), accessibilityErrorMessage != null && (domProps["aria-errormessage"] = accessibilityErrorMessage), accessibilityExpanded != null && (domProps["aria-expanded"] = accessibilityExpanded), accessibilityFlowTo != null && (domProps["aria-flowto"] = processIDRefList(accessibilityFlowTo)), accessibilityHasPopup != null && (domProps["aria-haspopup"] = accessibilityHasPopup), accessibilityHidden === !0 && (domProps["aria-hidden"] = accessibilityHidden), accessibilityInvalid != null && (domProps["aria-invalid"] = accessibilityInvalid), accessibilityKeyShortcuts != null && Array.isArray(accessibilityKeyShortcuts) && (domProps["aria-keyshortcuts"] = accessibilityKeyShortcuts.join(" ")), accessibilityLabel != null && (domProps["aria-label"] = accessibilityLabel), accessibilityLabelledBy != null && (domProps["aria-labelledby"] = processIDRefList(accessibilityLabelledBy)), accessibilityLevel != null && (domProps["aria-level"] = accessibilityLevel), accessibilityLiveRegion != null && (domProps["aria-live"] = accessibilityLiveRegion === "none" ? "off" : accessibilityLiveRegion), accessibilityModal != null && (domProps["aria-modal"] = accessibilityModal), accessibilityMultiline != null && (domProps["aria-multiline"] = accessibilityMultiline), accessibilityMultiSelectable != null && (domProps["aria-multiselectable"] = accessibilityMultiSelectable), accessibilityOrientation != null && (domProps["aria-orientation"] = accessibilityOrientation), accessibilityOwns != null && (domProps["aria-owns"] = processIDRefList(accessibilityOwns)), accessibilityPlaceholder != null && (domProps["aria-placeholder"] = accessibilityPlaceholder), accessibilityPosInSet != null && (domProps["aria-posinset"] = accessibilityPosInSet), accessibilityPressed != null && (domProps["aria-pressed"] = accessibilityPressed), accessibilityReadOnly != null && (domProps["aria-readonly"] = accessibilityReadOnly, (elementType === "input" || elementType === "select" || elementType === "textarea") && (domProps.readOnly = !0)), accessibilityRequired != null && (domProps["aria-required"] = accessibilityRequired, (elementType === "input" || elementType === "select" || elementType === "textarea") && (domProps.required = !0)), role != null && (domProps.role = role === "none" ? "presentation" : role), accessibilityRoleDescription != null && (domProps["aria-roledescription"] = accessibilityRoleDescription), accessibilityRowCount != null && (domProps["aria-rowcount"] = accessibilityRowCount), accessibilityRowIndex != null && (domProps["aria-rowindex"] = accessibilityRowIndex), accessibilityRowSpan != null && (domProps["aria-rowspan"] = accessibilityRowSpan), accessibilitySelected != null && (domProps["aria-selected"] = accessibilitySelected), accessibilitySetSize != null && (domProps["aria-setsize"] = accessibilitySetSize), accessibilitySort != null && (domProps["aria-sort"] = accessibilitySort), accessibilityValueMax != null && (domProps["aria-valuemax"] = accessibilityValueMax), accessibilityValueMin != null && (domProps["aria-valuemin"] = accessibilityValueMin), accessibilityValueNow != null && (domProps["aria-valuenow"] = accessibilityValueNow), accessibilityValueText != null && (domProps["aria-valuetext"] = accessibilityValueText);
118
+ const tmgCN = dataSet ? dataSet.className : void 0,
119
+ tmgID = dataSet ? dataSet.id : void 0;
120
+ if (dataSet != null) {
121
+ for (const dataProp in dataSet) if (!(dataProp === "className" || dataProp === "id") && hasOwnProperty.call(dataSet, dataProp)) {
122
+ const dataName = hyphenateString(dataProp),
123
+ dataValue = dataSet[dataProp];
124
+ dataValue != null && (domProps[`data-${dataName}`] = dataValue);
125
+ }
126
+ }
127
+ focusable === !1 && (domProps.tabIndex = "-1"),
128
+ // These native elements are keyboard focusable by default
129
+ elementType === "a" || elementType === "button" || elementType === "input" || elementType === "select" || elementType === "textarea" ? (focusable === !1 || accessibilityDisabled === !0) && (domProps.tabIndex = "-1") : /* These roles are made keyboard focusable by default */role === "button" || role === "checkbox" || role === "link" || role === "radio" || role === "textbox" || role === "switch" ? focusable !== !1 && (domProps.tabIndex = "0") : focusable === !0 && (domProps.tabIndex = "0");
130
+ const flat = [].concat(style).flat().flat().flat().flat().reduce((acc, cur) => (cur && Object.assign(acc, cur), acc), {});
131
+ let className = tmgCN || "";
132
+ props.className && (className += ` ${props.className}`);
133
+ const stylesAtomic = (0, import_web.getStylesAtomic)(flat);
134
+ stylesFromProps.set(domProps, stylesAtomic), domProps.style = stylesAtomic.reduce((acc, [key, value]) => key[0] === "_" || key.startsWith("is_") || key.startsWith("font_") ? (className += ` ${key}`, acc) : (key === "$$css" || key === "" || (acc[key] = value), acc), {}), className && (domProps.className = className);
135
+ const _id = tmgID || id || nativeID;
136
+ return _id && (domProps.id = _id), testID != null && (domProps["data-testid"] = testID), domProps;
137
+ };
138
+ var createDOMProps_default = createDOMProps;