@testing-library/react-native 14.0.0-alpha.0 → 14.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (193) hide show
  1. package/README.md +1 -1
  2. package/build/act.js +2 -2
  3. package/build/act.js.map +1 -1
  4. package/build/event-handler.d.ts +7 -0
  5. package/build/event-handler.js +30 -0
  6. package/build/event-handler.js.map +1 -0
  7. package/build/fire-event.d.ts +3 -3
  8. package/build/fire-event.js +6 -16
  9. package/build/fire-event.js.map +1 -1
  10. package/build/helpers/accessibility.d.ts +2 -2
  11. package/build/helpers/accessibility.js.map +1 -1
  12. package/build/helpers/component-tree.d.ts +1 -1
  13. package/build/helpers/component-tree.js.map +1 -1
  14. package/build/helpers/debug.d.ts +3 -3
  15. package/build/helpers/debug.js +7 -9
  16. package/build/helpers/debug.js.map +1 -1
  17. package/build/helpers/errors.js +4 -4
  18. package/build/helpers/errors.js.map +1 -1
  19. package/build/helpers/find-all.d.ts +1 -1
  20. package/build/helpers/find-all.js.map +1 -1
  21. package/build/helpers/format-element.d.ts +18 -0
  22. package/build/helpers/format-element.js +80 -0
  23. package/build/helpers/format-element.js.map +1 -0
  24. package/build/helpers/host-component-names.d.ts +2 -1
  25. package/build/helpers/host-component-names.js +2 -1
  26. package/build/helpers/host-component-names.js.map +1 -1
  27. package/build/helpers/logger.d.ts +6 -0
  28. package/build/helpers/logger.js +37 -0
  29. package/build/helpers/logger.js.map +1 -0
  30. package/build/helpers/{format-default.d.ts → map-props.d.ts} +1 -0
  31. package/build/helpers/{format-default.js → map-props.js} +2 -2
  32. package/build/helpers/map-props.js.map +1 -0
  33. package/build/helpers/matchers/match-accessibility-state.d.ts +1 -1
  34. package/build/helpers/matchers/match-accessibility-state.js.map +1 -1
  35. package/build/helpers/matchers/match-accessibility-value.d.ts +2 -2
  36. package/build/helpers/matchers/match-accessibility-value.js.map +1 -1
  37. package/build/helpers/matchers/match-label-text.d.ts +2 -2
  38. package/build/helpers/matchers/match-label-text.js.map +1 -1
  39. package/build/helpers/matchers/match-string-prop.d.ts +1 -1
  40. package/build/helpers/matchers/match-string-prop.js.map +1 -1
  41. package/build/helpers/matchers/match-text-content.d.ts +2 -2
  42. package/build/helpers/matchers/match-text-content.js.map +1 -1
  43. package/build/helpers/object.d.ts +1 -1
  44. package/build/helpers/object.js.map +1 -1
  45. package/build/helpers/pointer-events.d.ts +1 -1
  46. package/build/helpers/pointer-events.js.map +1 -1
  47. package/build/helpers/text-content.d.ts +1 -1
  48. package/build/helpers/text-content.js.map +1 -1
  49. package/build/helpers/text-input.d.ts +1 -1
  50. package/build/helpers/text-input.js.map +1 -1
  51. package/build/helpers/timers.d.ts +1 -1
  52. package/build/helpers/timers.js.map +1 -1
  53. package/build/index.d.ts +1 -1
  54. package/build/index.flow.js +28 -32
  55. package/build/index.js +3 -4
  56. package/build/index.js.map +1 -1
  57. package/build/matchers/extend-expect.js +2 -2
  58. package/build/matchers/extend-expect.js.map +1 -1
  59. package/build/matchers/index.d.ts +1 -1
  60. package/build/matchers/index.js.map +1 -1
  61. package/build/matchers/to-be-busy.d.ts +1 -1
  62. package/build/matchers/to-be-busy.js +4 -1
  63. package/build/matchers/to-be-busy.js.map +1 -1
  64. package/build/matchers/to-be-checked.d.ts +1 -1
  65. package/build/matchers/to-be-checked.js +4 -1
  66. package/build/matchers/to-be-checked.js.map +1 -1
  67. package/build/matchers/to-be-disabled.d.ts +1 -1
  68. package/build/matchers/to-be-disabled.js +5 -2
  69. package/build/matchers/to-be-disabled.js.map +1 -1
  70. package/build/matchers/to-be-empty-element.d.ts +1 -1
  71. package/build/matchers/to-be-empty-element.js +6 -3
  72. package/build/matchers/to-be-empty-element.js.map +1 -1
  73. package/build/matchers/to-be-expanded.d.ts +1 -1
  74. package/build/matchers/to-be-expanded.js +5 -2
  75. package/build/matchers/to-be-expanded.js.map +1 -1
  76. package/build/matchers/to-be-on-the-screen.d.ts +1 -1
  77. package/build/matchers/to-be-on-the-screen.js +4 -1
  78. package/build/matchers/to-be-on-the-screen.js.map +1 -1
  79. package/build/matchers/to-be-partially-checked.d.ts +1 -1
  80. package/build/matchers/to-be-partially-checked.js +4 -1
  81. package/build/matchers/to-be-partially-checked.js.map +1 -1
  82. package/build/matchers/to-be-selected.d.ts +1 -1
  83. package/build/matchers/to-be-selected.js +4 -1
  84. package/build/matchers/to-be-selected.js.map +1 -1
  85. package/build/matchers/to-be-visible.d.ts +1 -1
  86. package/build/matchers/to-be-visible.js +5 -2
  87. package/build/matchers/to-be-visible.js.map +1 -1
  88. package/build/matchers/to-contain-element.d.ts +1 -1
  89. package/build/matchers/to-contain-element.js +4 -1
  90. package/build/matchers/to-contain-element.js.map +1 -1
  91. package/build/matchers/to-have-accessibility-value.d.ts +2 -2
  92. package/build/matchers/to-have-accessibility-value.js.map +1 -1
  93. package/build/matchers/to-have-accessible-name.d.ts +2 -2
  94. package/build/matchers/to-have-accessible-name.js.map +1 -1
  95. package/build/matchers/to-have-display-value.d.ts +2 -2
  96. package/build/matchers/to-have-display-value.js +1 -1
  97. package/build/matchers/to-have-display-value.js.map +1 -1
  98. package/build/matchers/to-have-prop.d.ts +1 -1
  99. package/build/matchers/to-have-prop.js.map +1 -1
  100. package/build/matchers/to-have-style.d.ts +2 -2
  101. package/build/matchers/to-have-style.js.map +1 -1
  102. package/build/matchers/to-have-text-content.d.ts +2 -2
  103. package/build/matchers/to-have-text-content.js.map +1 -1
  104. package/build/matchers/types.d.ts +4 -4
  105. package/build/matchers/types.js.map +1 -1
  106. package/build/matchers/utils.d.ts +1 -8
  107. package/build/matchers/utils.js +0 -46
  108. package/build/matchers/utils.js.map +1 -1
  109. package/build/native-state.d.ts +3 -3
  110. package/build/native-state.js +1 -1
  111. package/build/native-state.js.map +1 -1
  112. package/build/pure.d.ts +1 -1
  113. package/build/pure.js +2 -2
  114. package/build/pure.js.map +1 -1
  115. package/build/queries/display-value.d.ts +2 -2
  116. package/build/queries/display-value.js.map +1 -1
  117. package/build/queries/hint-text.d.ts +3 -3
  118. package/build/queries/hint-text.js.map +1 -1
  119. package/build/queries/label-text.d.ts +3 -3
  120. package/build/queries/label-text.js.map +1 -1
  121. package/build/queries/make-queries.d.ts +1 -1
  122. package/build/queries/make-queries.js +4 -7
  123. package/build/queries/make-queries.js.map +1 -1
  124. package/build/queries/options.d.ts +1 -1
  125. package/build/queries/options.js.map +1 -1
  126. package/build/queries/placeholder-text.d.ts +2 -2
  127. package/build/queries/placeholder-text.js +1 -1
  128. package/build/queries/placeholder-text.js.map +1 -1
  129. package/build/queries/role.d.ts +5 -5
  130. package/build/queries/role.js.map +1 -1
  131. package/build/queries/test-id.d.ts +2 -2
  132. package/build/queries/test-id.js.map +1 -1
  133. package/build/queries/text.d.ts +2 -2
  134. package/build/queries/text.js.map +1 -1
  135. package/build/render-hook.d.ts +16 -6
  136. package/build/render-hook.js +22 -22
  137. package/build/render-hook.js.map +1 -1
  138. package/build/render.d.ts +5 -68
  139. package/build/render.js +10 -15
  140. package/build/render.js.map +1 -1
  141. package/build/screen.d.ts +1 -1
  142. package/build/screen.js.map +1 -1
  143. package/build/tsconfig.release.tsbuildinfo +1 -1
  144. package/build/user-event/clear.d.ts +2 -2
  145. package/build/user-event/clear.js +2 -2
  146. package/build/user-event/clear.js.map +1 -1
  147. package/build/user-event/event-builder/base.d.ts +2 -2
  148. package/build/user-event/event-builder/base.js.map +1 -1
  149. package/build/user-event/event-builder/scroll-view.d.ts +1 -1
  150. package/build/user-event/event-builder/scroll-view.js.map +1 -1
  151. package/build/user-event/event-builder/text-input.d.ts +2 -2
  152. package/build/user-event/event-builder/text-input.js.map +1 -1
  153. package/build/user-event/index.d.ts +4 -4
  154. package/build/user-event/index.js.map +1 -1
  155. package/build/user-event/paste.d.ts +2 -2
  156. package/build/user-event/paste.js.map +1 -1
  157. package/build/user-event/press/index.d.ts +1 -1
  158. package/build/user-event/press/index.js.map +1 -1
  159. package/build/user-event/press/press.d.ts +2 -2
  160. package/build/user-event/press/press.js +34 -42
  161. package/build/user-event/press/press.js.map +1 -1
  162. package/build/user-event/scroll/index.d.ts +1 -1
  163. package/build/user-event/scroll/index.js.map +1 -1
  164. package/build/user-event/scroll/scroll-to.d.ts +3 -3
  165. package/build/user-event/scroll/scroll-to.js +1 -1
  166. package/build/user-event/scroll/scroll-to.js.map +1 -1
  167. package/build/user-event/scroll/utils.d.ts +1 -1
  168. package/build/user-event/scroll/utils.js.map +1 -1
  169. package/build/user-event/setup/setup.d.ts +4 -4
  170. package/build/user-event/setup/setup.js.map +1 -1
  171. package/build/user-event/type/type.d.ts +3 -2
  172. package/build/user-event/type/type.js +7 -5
  173. package/build/user-event/type/type.js.map +1 -1
  174. package/build/user-event/utils/content-size.d.ts +1 -1
  175. package/build/user-event/utils/content-size.js.map +1 -1
  176. package/build/user-event/utils/dispatch-event.d.ts +1 -1
  177. package/build/user-event/utils/dispatch-event.js +2 -12
  178. package/build/user-event/utils/dispatch-event.js.map +1 -1
  179. package/build/user-event/utils/wait.d.ts +6 -2
  180. package/build/user-event/utils/wait.js +1 -1
  181. package/build/user-event/utils/wait.js.map +1 -1
  182. package/build/wait-for-element-to-be-removed.js +1 -1
  183. package/build/wait-for-element-to-be-removed.js.map +1 -1
  184. package/build/wait-for.js +1 -4
  185. package/build/wait-for.js.map +1 -1
  186. package/build/within.d.ts +1 -1
  187. package/build/within.js.map +1 -1
  188. package/package.json +17 -13
  189. package/typings/index.flow.js +28 -32
  190. package/build/helpers/format-default.js.map +0 -1
  191. package/build/helpers/format.d.ts +0 -7
  192. package/build/helpers/format.js +0 -31
  193. package/build/helpers/format.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format-element.js","names":["_prettyFormat","_interopRequireWildcard","require","_mapProps","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","formatElement","element","compact","highlight","mapProps","defaultMapProps","childrenToDisplay","children","filter","child","prettyFormat","$$typeof","Symbol","for","type","props","plugins","ReactTestComponent","printFunctionName","printBasicPrototype","min","formatElementList","elements","options","length","map","join","formatJson","json","getElementJsonPlugin","ReactElement","test","val","serialize","config","indentation","depth","refs","printer","newVal"],"sources":["../../src/helpers/format-element.ts"],"sourcesContent":["import type { NewPlugin } from 'pretty-format';\nimport prettyFormat, { plugins } from 'pretty-format';\nimport type { HostNode, JsonNode } from 'universal-test-renderer';\n\nimport type { MapPropsFunction } from './map-props';\nimport { defaultMapProps } from './map-props';\n\nexport type FormatElementOptions = {\n /** Minimize used space. */\n compact?: boolean;\n\n /** Highlight the output. */\n highlight?: boolean;\n\n /** Filter or map props to display. */\n mapProps?: MapPropsFunction | null;\n};\n\n/***\n * Format given element as a pretty-printed string.\n *\n * @param element Element to format.\n */\nexport function formatElement(\n element: HostNode | null,\n { compact, highlight = true, mapProps = defaultMapProps }: FormatElementOptions = {},\n) {\n if (element == null) {\n return '(null)';\n }\n\n if (typeof element === 'string') {\n return element;\n }\n\n const childrenToDisplay = element.children.filter((child) => typeof child === 'string');\n\n return prettyFormat(\n {\n // This prop is needed persuade the prettyFormat that the element is\n // a ReactTestRendererJSON instance, so it is formatted as JSX.\n $$typeof: Symbol.for('react.test.json'),\n type: `${element.type}`,\n props: mapProps ? mapProps(element.props) : element.props,\n children: childrenToDisplay,\n },\n // See: https://www.npmjs.com/package/pretty-format#usage-with-options\n {\n plugins: [plugins.ReactTestComponent],\n printFunctionName: false,\n printBasicPrototype: false,\n highlight: highlight,\n min: compact,\n },\n );\n}\n\nexport function formatElementList(elements: HostNode[], options?: FormatElementOptions) {\n if (elements.length === 0) {\n return '(no elements)';\n }\n\n return elements.map((element) => formatElement(element, options)).join('\\n');\n}\n\nexport function formatJson(\n json: JsonNode | JsonNode[],\n { compact, highlight = true, mapProps = defaultMapProps }: FormatElementOptions = {},\n) {\n return prettyFormat(json, {\n plugins: [getElementJsonPlugin(mapProps), plugins.ReactElement],\n highlight: highlight,\n printBasicPrototype: false,\n min: compact,\n });\n}\n\nfunction getElementJsonPlugin(mapProps?: MapPropsFunction | null): NewPlugin {\n return {\n test: (val) => plugins.ReactTestComponent.test(val),\n serialize: (val, config, indentation, depth, refs, printer) => {\n let newVal = val;\n if (mapProps && val.props) {\n newVal = { ...val, props: mapProps(val.props) };\n }\n return plugins.ReactTestComponent.serialize(\n newVal,\n config,\n indentation,\n depth,\n refs,\n printer,\n );\n },\n };\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,5 @@
1
- import { HostElement } from 'universal-test-renderer';
1
+ import type { HostElement } from 'universal-test-renderer';
2
+ export declare const HOST_TEXT_NAMES: string[];
2
3
  /**
3
4
  * Checks if the given element is a host Text element.
4
5
  * @param element The element to check.
@@ -3,6 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
+ exports.HOST_TEXT_NAMES = void 0;
6
7
  exports.isHostImage = isHostImage;
7
8
  exports.isHostModal = isHostModal;
8
9
  exports.isHostScrollView = isHostScrollView;
@@ -10,7 +11,7 @@ exports.isHostSwitch = isHostSwitch;
10
11
  exports.isHostText = isHostText;
11
12
  exports.isHostTextInput = isHostTextInput;
12
13
  var _componentTree = require("./component-tree");
13
- const HOST_TEXT_NAMES = ['Text', 'RCTText'];
14
+ const HOST_TEXT_NAMES = exports.HOST_TEXT_NAMES = ['Text', 'RCTText'];
14
15
  const HOST_TEXT_INPUT_NAMES = ['TextInput'];
15
16
  const HOST_IMAGE_NAMES = ['Image'];
16
17
  const HOST_SWITCH_NAMES = ['RCTSwitch'];
@@ -1 +1 @@
1
- {"version":3,"file":"host-component-names.js","names":["_componentTree","require","HOST_TEXT_NAMES","HOST_TEXT_INPUT_NAMES","HOST_IMAGE_NAMES","HOST_SWITCH_NAMES","HOST_SCROLL_VIEW_NAMES","HOST_MODAL_NAMES","isHostText","element","isValidElement","includes","type","isHostTextInput","isHostImage","isHostSwitch","isHostScrollView","isHostModal"],"sources":["../../src/helpers/host-component-names.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\nimport { isValidElement } from './component-tree';\n\nconst HOST_TEXT_NAMES = ['Text', 'RCTText'];\nconst HOST_TEXT_INPUT_NAMES = ['TextInput'];\nconst HOST_IMAGE_NAMES = ['Image'];\nconst HOST_SWITCH_NAMES = ['RCTSwitch'];\nconst HOST_SCROLL_VIEW_NAMES = ['RCTScrollView'];\nconst HOST_MODAL_NAMES = ['Modal'];\n\n/**\n * Checks if the given element is a host Text element.\n * @param element The element to check.\n */\nexport function isHostText(element: HostElement | null) {\n return isValidElement(element) && HOST_TEXT_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host TextInput element.\n * @param element The element to check.\n */\nexport function isHostTextInput(element: HostElement | null) {\n return isValidElement(element) && HOST_TEXT_INPUT_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host Image element.\n * @param element The element to check.\n */\nexport function isHostImage(element: HostElement | null) {\n return isValidElement(element) && HOST_IMAGE_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host Switch element.\n * @param element The element to check.\n */\nexport function isHostSwitch(element: HostElement | null) {\n return isValidElement(element) && HOST_SWITCH_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host ScrollView element.\n * @param element The element to check.\n */\nexport function isHostScrollView(element: HostElement | null) {\n return isValidElement(element) && HOST_SCROLL_VIEW_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host Modal element.\n * @param element The element to check.\n */\nexport function isHostModal(element: HostElement | null) {\n return isValidElement(element) && HOST_MODAL_NAMES.includes(element.type);\n}\n"],"mappings":";;;;;;;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAEA,MAAMC,eAAe,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;AAC3C,MAAMC,qBAAqB,GAAG,CAAC,WAAW,CAAC;AAC3C,MAAMC,gBAAgB,GAAG,CAAC,OAAO,CAAC;AAClC,MAAMC,iBAAiB,GAAG,CAAC,WAAW,CAAC;AACvC,MAAMC,sBAAsB,GAAG,CAAC,eAAe,CAAC;AAChD,MAAMC,gBAAgB,GAAG,CAAC,OAAO,CAAC;;AAElC;AACA;AACA;AACA;AACO,SAASC,UAAUA,CAACC,OAA2B,EAAE;EACtD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIP,eAAe,CAACS,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC1E;;AAEA;AACA;AACA;AACA;AACO,SAASC,eAAeA,CAACJ,OAA2B,EAAE;EAC3D,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIN,qBAAqB,CAACQ,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAChF;;AAEA;AACA;AACA;AACA;AACO,SAASE,WAAWA,CAACL,OAA2B,EAAE;EACvD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIL,gBAAgB,CAACO,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC3E;;AAEA;AACA;AACA;AACA;AACO,SAASG,YAAYA,CAACN,OAA2B,EAAE;EACxD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIJ,iBAAiB,CAACM,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC5E;;AAEA;AACA;AACA;AACA;AACO,SAASI,gBAAgBA,CAACP,OAA2B,EAAE;EAC5D,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIH,sBAAsB,CAACK,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AACjF;;AAEA;AACA;AACA;AACA;AACO,SAASK,WAAWA,CAACR,OAA2B,EAAE;EACvD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIF,gBAAgB,CAACI,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC3E","ignoreList":[]}
1
+ {"version":3,"file":"host-component-names.js","names":["_componentTree","require","HOST_TEXT_NAMES","exports","HOST_TEXT_INPUT_NAMES","HOST_IMAGE_NAMES","HOST_SWITCH_NAMES","HOST_SCROLL_VIEW_NAMES","HOST_MODAL_NAMES","isHostText","element","isValidElement","includes","type","isHostTextInput","isHostImage","isHostSwitch","isHostScrollView","isHostModal"],"sources":["../../src/helpers/host-component-names.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nimport { isValidElement } from './component-tree';\n\nexport const HOST_TEXT_NAMES = ['Text', 'RCTText'];\nconst HOST_TEXT_INPUT_NAMES = ['TextInput'];\nconst HOST_IMAGE_NAMES = ['Image'];\nconst HOST_SWITCH_NAMES = ['RCTSwitch'];\nconst HOST_SCROLL_VIEW_NAMES = ['RCTScrollView'];\nconst HOST_MODAL_NAMES = ['Modal'];\n\n/**\n * Checks if the given element is a host Text element.\n * @param element The element to check.\n */\nexport function isHostText(element: HostElement | null) {\n return isValidElement(element) && HOST_TEXT_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host TextInput element.\n * @param element The element to check.\n */\nexport function isHostTextInput(element: HostElement | null) {\n return isValidElement(element) && HOST_TEXT_INPUT_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host Image element.\n * @param element The element to check.\n */\nexport function isHostImage(element: HostElement | null) {\n return isValidElement(element) && HOST_IMAGE_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host Switch element.\n * @param element The element to check.\n */\nexport function isHostSwitch(element: HostElement | null) {\n return isValidElement(element) && HOST_SWITCH_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host ScrollView element.\n * @param element The element to check.\n */\nexport function isHostScrollView(element: HostElement | null) {\n return isValidElement(element) && HOST_SCROLL_VIEW_NAMES.includes(element.type);\n}\n\n/**\n * Checks if the given element is a host Modal element.\n * @param element The element to check.\n */\nexport function isHostModal(element: HostElement | null) {\n return isValidElement(element) && HOST_MODAL_NAMES.includes(element.type);\n}\n"],"mappings":";;;;;;;;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AAEO,MAAMC,eAAe,GAAAC,OAAA,CAAAD,eAAA,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;AAClD,MAAME,qBAAqB,GAAG,CAAC,WAAW,CAAC;AAC3C,MAAMC,gBAAgB,GAAG,CAAC,OAAO,CAAC;AAClC,MAAMC,iBAAiB,GAAG,CAAC,WAAW,CAAC;AACvC,MAAMC,sBAAsB,GAAG,CAAC,eAAe,CAAC;AAChD,MAAMC,gBAAgB,GAAG,CAAC,OAAO,CAAC;;AAElC;AACA;AACA;AACA;AACO,SAASC,UAAUA,CAACC,OAA2B,EAAE;EACtD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIR,eAAe,CAACU,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC1E;;AAEA;AACA;AACA;AACA;AACO,SAASC,eAAeA,CAACJ,OAA2B,EAAE;EAC3D,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIN,qBAAqB,CAACQ,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAChF;;AAEA;AACA;AACA;AACA;AACO,SAASE,WAAWA,CAACL,OAA2B,EAAE;EACvD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIL,gBAAgB,CAACO,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC3E;;AAEA;AACA;AACA;AACA;AACO,SAASG,YAAYA,CAACN,OAA2B,EAAE;EACxD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIJ,iBAAiB,CAACM,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC5E;;AAEA;AACA;AACA;AACA;AACO,SAASI,gBAAgBA,CAACP,OAA2B,EAAE;EAC5D,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIH,sBAAsB,CAACK,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AACjF;;AAEA;AACA;AACA;AACA;AACO,SAASK,WAAWA,CAACR,OAA2B,EAAE;EACvD,OAAO,IAAAC,6BAAc,EAACD,OAAO,CAAC,IAAIF,gBAAgB,CAACI,QAAQ,CAACF,OAAO,CAACG,IAAI,CAAC;AAC3E","ignoreList":[]}
@@ -0,0 +1,6 @@
1
+ export declare const logger: {
2
+ debug(message: unknown, ...args: unknown[]): void;
3
+ info(message: unknown, ...args: unknown[]): void;
4
+ warn(message: unknown, ...args: unknown[]): void;
5
+ error(message: unknown, ...args: unknown[]): void;
6
+ };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.logger = void 0;
7
+ var _chalk = _interopRequireDefault(require("chalk"));
8
+ var nodeConsole = _interopRequireWildcard(require("console"));
9
+ var _redent = _interopRequireDefault(require("redent"));
10
+ var nodeUtil = _interopRequireWildcard(require("util"));
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ const logger = exports.logger = {
15
+ debug(message, ...args) {
16
+ const output = formatMessage('●', message, ...args);
17
+ nodeConsole.debug(_chalk.default.dim(output));
18
+ },
19
+ info(message, ...args) {
20
+ const output = formatMessage('●', message, ...args);
21
+ nodeConsole.info(output);
22
+ },
23
+ warn(message, ...args) {
24
+ const output = formatMessage('▲', message, ...args);
25
+ nodeConsole.warn(_chalk.default.yellow(output));
26
+ },
27
+ error(message, ...args) {
28
+ const output = formatMessage('■', message, ...args);
29
+ nodeConsole.error(_chalk.default.red(output));
30
+ }
31
+ };
32
+ function formatMessage(symbol, message, ...args) {
33
+ const formatted = nodeUtil.format(message, ...args);
34
+ const indented = (0, _redent.default)(formatted, 4);
35
+ return ` ${symbol} ${indented.trimStart()}\n`;
36
+ }
37
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","names":["_chalk","_interopRequireDefault","require","nodeConsole","_interopRequireWildcard","_redent","nodeUtil","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","logger","exports","debug","message","args","output","formatMessage","chalk","dim","info","warn","yellow","error","red","symbol","formatted","format","indented","redent","trimStart"],"sources":["../../src/helpers/logger.ts"],"sourcesContent":["import chalk from 'chalk';\nimport * as nodeConsole from 'console';\nimport redent from 'redent';\nimport * as nodeUtil from 'util';\n\nexport const logger = {\n debug(message: unknown, ...args: unknown[]) {\n const output = formatMessage('●', message, ...args);\n nodeConsole.debug(chalk.dim(output));\n },\n\n info(message: unknown, ...args: unknown[]) {\n const output = formatMessage('●', message, ...args);\n nodeConsole.info(output);\n },\n\n warn(message: unknown, ...args: unknown[]) {\n const output = formatMessage('▲', message, ...args);\n nodeConsole.warn(chalk.yellow(output));\n },\n\n error(message: unknown, ...args: unknown[]) {\n const output = formatMessage('■', message, ...args);\n nodeConsole.error(chalk.red(output));\n },\n};\n\nfunction formatMessage(symbol: string, message: unknown, ...args: unknown[]) {\n const formatted = nodeUtil.format(message, ...args);\n const indented = redent(formatted, 4);\n return ` ${symbol} ${indented.trimStart()}\\n`;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,4 @@
1
+ export type MapPropsFunction = (props: Record<string, unknown>) => Record<string, unknown>;
1
2
  /**
2
3
  * Preserve props that are helpful in diagnosing test failures, while stripping rest
3
4
  */
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.defaultMapProps = defaultMapProps;
7
7
  var _reactNative = require("react-native");
8
8
  var _object = require("./object");
9
- const propsToDisplay = ['accessible', 'accessibilityElementsHidden', 'accessibilityHint', 'accessibilityLabel', 'accessibilityLabelledBy', 'accessibilityRole', 'accessibilityViewIsModal', 'alt', 'aria-busy', 'aria-checked', 'aria-disabled', 'aria-expanded', 'aria-hidden', 'aria-label', 'aria-labelledby', 'aria-modal', 'aria-selected', 'aria-valuemax', 'aria-valuemin', 'aria-valuenow', 'aria-valuetext', 'defaultValue', 'importantForAccessibility', 'nativeID', 'placeholder', 'role', 'testID', 'title', 'value'];
9
+ const propsToDisplay = ['accessible', 'accessibilityElementsHidden', 'accessibilityHint', 'accessibilityLabel', 'accessibilityLabelledBy', 'accessibilityRole', 'accessibilityViewIsModal', 'alt', 'aria-busy', 'aria-checked', 'aria-disabled', 'aria-expanded', 'aria-hidden', 'aria-label', 'aria-labelledby', 'aria-modal', 'aria-selected', 'aria-valuemax', 'aria-valuemin', 'aria-valuenow', 'aria-valuetext', 'defaultValue', 'editable', 'importantForAccessibility', 'nativeID', 'placeholder', 'pointerEvents', 'role', 'testID', 'title', 'value'];
10
10
 
11
11
  /**
12
12
  * Preserve props that are helpful in diagnosing test failures, while stripping rest
@@ -47,4 +47,4 @@ function extractStyle(style) {
47
47
  const hasAnyKeys = Object.keys(result).length > 0;
48
48
  return hasAnyKeys ? result : undefined;
49
49
  }
50
- //# sourceMappingURL=format-default.js.map
50
+ //# sourceMappingURL=map-props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map-props.js","names":["_reactNative","require","_object","propsToDisplay","defaultMapProps","props","result","styles","StyleSheet","flatten","style","styleToDisplay","extractStyle","undefined","accessibilityState","removeUndefinedKeys","accessibilityValue","forEach","propName","display","opacity","hasAnyKeys","Object","keys","length"],"sources":["../../src/helpers/map-props.ts"],"sourcesContent":["import type { ViewStyle } from 'react-native';\nimport { StyleSheet } from 'react-native';\n\nimport { removeUndefinedKeys } from './object';\n\nexport type MapPropsFunction = (props: Record<string, unknown>) => Record<string, unknown>;\n\nconst propsToDisplay = [\n 'accessible',\n 'accessibilityElementsHidden',\n 'accessibilityHint',\n 'accessibilityLabel',\n 'accessibilityLabelledBy',\n 'accessibilityRole',\n 'accessibilityViewIsModal',\n 'alt',\n 'aria-busy',\n 'aria-checked',\n 'aria-disabled',\n 'aria-expanded',\n 'aria-hidden',\n 'aria-label',\n 'aria-labelledby',\n 'aria-modal',\n 'aria-selected',\n 'aria-valuemax',\n 'aria-valuemin',\n 'aria-valuenow',\n 'aria-valuetext',\n 'defaultValue',\n 'editable',\n 'importantForAccessibility',\n 'nativeID',\n 'placeholder',\n 'pointerEvents',\n 'role',\n 'testID',\n 'title',\n 'value',\n] as const;\n\n/**\n * Preserve props that are helpful in diagnosing test failures, while stripping rest\n */\nexport function defaultMapProps(props: Record<string, unknown>): Record<string, unknown> {\n const result: Record<string, unknown> = {};\n\n const styles = StyleSheet.flatten(props.style as ViewStyle);\n const styleToDisplay = extractStyle(styles);\n if (styleToDisplay !== undefined) {\n result.style = styleToDisplay;\n }\n\n const accessibilityState = removeUndefinedKeys(props.accessibilityState);\n if (accessibilityState !== undefined) {\n result.accessibilityState = accessibilityState;\n }\n\n const accessibilityValue = removeUndefinedKeys(props.accessibilityValue);\n if (accessibilityValue !== undefined) {\n result.accessibilityValue = accessibilityValue;\n }\n\n propsToDisplay.forEach((propName) => {\n if (propName in props) {\n result[propName] = props[propName];\n }\n });\n\n return result;\n}\n\nfunction extractStyle(style: ViewStyle | undefined) {\n if (style == null) {\n return undefined;\n }\n\n const result: Record<string, unknown> = {};\n if (style.display === 'none') {\n result.display = 'none';\n }\n\n if (style.opacity === 0) {\n result.opacity = 0;\n }\n\n const hasAnyKeys = Object.keys(result).length > 0;\n return hasAnyKeys ? result : undefined;\n}\n"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAIA,MAAME,cAAc,GAAG,CACrB,YAAY,EACZ,6BAA6B,EAC7B,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,mBAAmB,EACnB,0BAA0B,EAC1B,KAAK,EACL,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,eAAe,EACf,eAAe,EACf,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,2BAA2B,EAC3B,UAAU,EACV,aAAa,EACb,eAAe,EACf,MAAM,EACN,QAAQ,EACR,OAAO,EACP,OAAO,CACC;;AAEV;AACA;AACA;AACO,SAASC,eAAeA,CAACC,KAA8B,EAA2B;EACvF,MAAMC,MAA+B,GAAG,CAAC,CAAC;EAE1C,MAAMC,MAAM,GAAGC,uBAAU,CAACC,OAAO,CAACJ,KAAK,CAACK,KAAkB,CAAC;EAC3D,MAAMC,cAAc,GAAGC,YAAY,CAACL,MAAM,CAAC;EAC3C,IAAII,cAAc,KAAKE,SAAS,EAAE;IAChCP,MAAM,CAACI,KAAK,GAAGC,cAAc;EAC/B;EAEA,MAAMG,kBAAkB,GAAG,IAAAC,2BAAmB,EAACV,KAAK,CAACS,kBAAkB,CAAC;EACxE,IAAIA,kBAAkB,KAAKD,SAAS,EAAE;IACpCP,MAAM,CAACQ,kBAAkB,GAAGA,kBAAkB;EAChD;EAEA,MAAME,kBAAkB,GAAG,IAAAD,2BAAmB,EAACV,KAAK,CAACW,kBAAkB,CAAC;EACxE,IAAIA,kBAAkB,KAAKH,SAAS,EAAE;IACpCP,MAAM,CAACU,kBAAkB,GAAGA,kBAAkB;EAChD;EAEAb,cAAc,CAACc,OAAO,CAAEC,QAAQ,IAAK;IACnC,IAAIA,QAAQ,IAAIb,KAAK,EAAE;MACrBC,MAAM,CAACY,QAAQ,CAAC,GAAGb,KAAK,CAACa,QAAQ,CAAC;IACpC;EACF,CAAC,CAAC;EAEF,OAAOZ,MAAM;AACf;AAEA,SAASM,YAAYA,CAACF,KAA4B,EAAE;EAClD,IAAIA,KAAK,IAAI,IAAI,EAAE;IACjB,OAAOG,SAAS;EAClB;EAEA,MAAMP,MAA+B,GAAG,CAAC,CAAC;EAC1C,IAAII,KAAK,CAACS,OAAO,KAAK,MAAM,EAAE;IAC5Bb,MAAM,CAACa,OAAO,GAAG,MAAM;EACzB;EAEA,IAAIT,KAAK,CAACU,OAAO,KAAK,CAAC,EAAE;IACvBd,MAAM,CAACc,OAAO,GAAG,CAAC;EACpB;EAEA,MAAMC,UAAU,GAAGC,MAAM,CAACC,IAAI,CAACjB,MAAM,CAAC,CAACkB,MAAM,GAAG,CAAC;EACjD,OAAOH,UAAU,GAAGf,MAAM,GAAGO,SAAS;AACxC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { HostElement } from 'universal-test-renderer';
1
+ import type { HostElement } from 'universal-test-renderer';
2
2
  export interface AccessibilityStateMatcher {
3
3
  disabled?: boolean;
4
4
  selected?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"match-accessibility-state.js","names":["_accessibility","require","matchAccessibilityState","node","matcher","busy","undefined","computeAriaBusy","checked","computeAriaChecked","disabled","computeAriaDisabled","expanded","computeAriaExpanded","selected","computeAriaSelected"],"sources":["../../../src/helpers/matchers/match-accessibility-state.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\nimport {\n computeAriaBusy,\n computeAriaChecked,\n computeAriaDisabled,\n computeAriaExpanded,\n computeAriaSelected,\n} from '../accessibility';\n\n// This type is the same as AccessibilityState from `react-native` package\n// It is re-declared here due to issues with migration from `@types/react-native` to\n// built in `react-native` types.\n// See: https://github.com/callstack/react-native-testing-library/issues/1351\nexport interface AccessibilityStateMatcher {\n disabled?: boolean;\n selected?: boolean;\n checked?: boolean | 'mixed';\n busy?: boolean;\n expanded?: boolean;\n}\n\nexport function matchAccessibilityState(node: HostElement, matcher: AccessibilityStateMatcher) {\n if (matcher.busy !== undefined && matcher.busy !== computeAriaBusy(node)) {\n return false;\n }\n if (matcher.checked !== undefined && matcher.checked !== computeAriaChecked(node)) {\n return false;\n }\n if (matcher.disabled !== undefined && matcher.disabled !== computeAriaDisabled(node)) {\n return false;\n }\n if (matcher.expanded !== undefined && matcher.expanded !== computeAriaExpanded(node)) {\n return false;\n }\n if (matcher.selected !== undefined && matcher.selected !== computeAriaSelected(node)) {\n return false;\n }\n\n return true;\n}\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAQA;AACA;AACA;AACA;;AASO,SAASC,uBAAuBA,CAACC,IAAiB,EAAEC,OAAkC,EAAE;EAC7F,IAAIA,OAAO,CAACC,IAAI,KAAKC,SAAS,IAAIF,OAAO,CAACC,IAAI,KAAK,IAAAE,8BAAe,EAACJ,IAAI,CAAC,EAAE;IACxE,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACI,OAAO,KAAKF,SAAS,IAAIF,OAAO,CAACI,OAAO,KAAK,IAAAC,iCAAkB,EAACN,IAAI,CAAC,EAAE;IACjF,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACM,QAAQ,KAAKJ,SAAS,IAAIF,OAAO,CAACM,QAAQ,KAAK,IAAAC,kCAAmB,EAACR,IAAI,CAAC,EAAE;IACpF,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACQ,QAAQ,KAAKN,SAAS,IAAIF,OAAO,CAACQ,QAAQ,KAAK,IAAAC,kCAAmB,EAACV,IAAI,CAAC,EAAE;IACpF,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACU,QAAQ,KAAKR,SAAS,IAAIF,OAAO,CAACU,QAAQ,KAAK,IAAAC,kCAAmB,EAACZ,IAAI,CAAC,EAAE;IACpF,OAAO,KAAK;EACd;EAEA,OAAO,IAAI;AACb","ignoreList":[]}
1
+ {"version":3,"file":"match-accessibility-state.js","names":["_accessibility","require","matchAccessibilityState","node","matcher","busy","undefined","computeAriaBusy","checked","computeAriaChecked","disabled","computeAriaDisabled","expanded","computeAriaExpanded","selected","computeAriaSelected"],"sources":["../../../src/helpers/matchers/match-accessibility-state.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nimport {\n computeAriaBusy,\n computeAriaChecked,\n computeAriaDisabled,\n computeAriaExpanded,\n computeAriaSelected,\n} from '../accessibility';\n\n// This type is the same as AccessibilityState from `react-native` package\n// It is re-declared here due to issues with migration from `@types/react-native` to\n// built in `react-native` types.\n// See: https://github.com/callstack/react-native-testing-library/issues/1351\nexport interface AccessibilityStateMatcher {\n disabled?: boolean;\n selected?: boolean;\n checked?: boolean | 'mixed';\n busy?: boolean;\n expanded?: boolean;\n}\n\nexport function matchAccessibilityState(node: HostElement, matcher: AccessibilityStateMatcher) {\n if (matcher.busy !== undefined && matcher.busy !== computeAriaBusy(node)) {\n return false;\n }\n if (matcher.checked !== undefined && matcher.checked !== computeAriaChecked(node)) {\n return false;\n }\n if (matcher.disabled !== undefined && matcher.disabled !== computeAriaDisabled(node)) {\n return false;\n }\n if (matcher.expanded !== undefined && matcher.expanded !== computeAriaExpanded(node)) {\n return false;\n }\n if (matcher.selected !== undefined && matcher.selected !== computeAriaSelected(node)) {\n return false;\n }\n\n return true;\n}\n"],"mappings":";;;;;;AAEA,IAAAA,cAAA,GAAAC,OAAA;AAQA;AACA;AACA;AACA;;AASO,SAASC,uBAAuBA,CAACC,IAAiB,EAAEC,OAAkC,EAAE;EAC7F,IAAIA,OAAO,CAACC,IAAI,KAAKC,SAAS,IAAIF,OAAO,CAACC,IAAI,KAAK,IAAAE,8BAAe,EAACJ,IAAI,CAAC,EAAE;IACxE,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACI,OAAO,KAAKF,SAAS,IAAIF,OAAO,CAACI,OAAO,KAAK,IAAAC,iCAAkB,EAACN,IAAI,CAAC,EAAE;IACjF,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACM,QAAQ,KAAKJ,SAAS,IAAIF,OAAO,CAACM,QAAQ,KAAK,IAAAC,kCAAmB,EAACR,IAAI,CAAC,EAAE;IACpF,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACQ,QAAQ,KAAKN,SAAS,IAAIF,OAAO,CAACQ,QAAQ,KAAK,IAAAC,kCAAmB,EAACV,IAAI,CAAC,EAAE;IACpF,OAAO,KAAK;EACd;EACA,IAAIC,OAAO,CAACU,QAAQ,KAAKR,SAAS,IAAIF,OAAO,CAACU,QAAQ,KAAK,IAAAC,kCAAmB,EAACZ,IAAI,CAAC,EAAE;IACpF,OAAO,KAAK;EACd;EAEA,OAAO,IAAI;AACb","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { HostElement } from 'universal-test-renderer';
2
- import { TextMatch } from '../../matches';
1
+ import type { HostElement } from 'universal-test-renderer';
2
+ import type { TextMatch } from '../../matches';
3
3
  export interface AccessibilityValueMatcher {
4
4
  min?: number;
5
5
  max?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"match-accessibility-value.js","names":["_accessibility","require","_matchStringProp","matchAccessibilityValue","node","matcher","value","computeAriaValue","min","undefined","max","now","text","matchStringProp"],"sources":["../../../src/helpers/matchers/match-accessibility-value.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\nimport { computeAriaValue } from '../accessibility';\nimport { TextMatch } from '../../matches';\nimport { matchStringProp } from './match-string-prop';\n\nexport interface AccessibilityValueMatcher {\n min?: number;\n max?: number;\n now?: number;\n text?: TextMatch;\n}\n\nexport function matchAccessibilityValue(\n node: HostElement,\n matcher: AccessibilityValueMatcher,\n): boolean {\n const value = computeAriaValue(node);\n return (\n (matcher.min === undefined || matcher.min === value?.min) &&\n (matcher.max === undefined || matcher.max === value?.max) &&\n (matcher.now === undefined || matcher.now === value?.now) &&\n (matcher.text === undefined || matchStringProp(value?.text, matcher.text))\n );\n}\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AAEA,IAAAC,gBAAA,GAAAD,OAAA;AASO,SAASE,uBAAuBA,CACrCC,IAAiB,EACjBC,OAAkC,EACzB;EACT,MAAMC,KAAK,GAAG,IAAAC,+BAAgB,EAACH,IAAI,CAAC;EACpC,OACE,CAACC,OAAO,CAACG,GAAG,KAAKC,SAAS,IAAIJ,OAAO,CAACG,GAAG,KAAKF,KAAK,EAAEE,GAAG,MACvDH,OAAO,CAACK,GAAG,KAAKD,SAAS,IAAIJ,OAAO,CAACK,GAAG,KAAKJ,KAAK,EAAEI,GAAG,CAAC,KACxDL,OAAO,CAACM,GAAG,KAAKF,SAAS,IAAIJ,OAAO,CAACM,GAAG,KAAKL,KAAK,EAAEK,GAAG,CAAC,KACxDN,OAAO,CAACO,IAAI,KAAKH,SAAS,IAAI,IAAAI,gCAAe,EAACP,KAAK,EAAEM,IAAI,EAAEP,OAAO,CAACO,IAAI,CAAC,CAAC;AAE9E","ignoreList":[]}
1
+ {"version":3,"file":"match-accessibility-value.js","names":["_accessibility","require","_matchStringProp","matchAccessibilityValue","node","matcher","value","computeAriaValue","min","undefined","max","now","text","matchStringProp"],"sources":["../../../src/helpers/matchers/match-accessibility-value.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nimport type { TextMatch } from '../../matches';\nimport { computeAriaValue } from '../accessibility';\nimport { matchStringProp } from './match-string-prop';\n\nexport interface AccessibilityValueMatcher {\n min?: number;\n max?: number;\n now?: number;\n text?: TextMatch;\n}\n\nexport function matchAccessibilityValue(\n node: HostElement,\n matcher: AccessibilityValueMatcher,\n): boolean {\n const value = computeAriaValue(node);\n return (\n (matcher.min === undefined || matcher.min === value?.min) &&\n (matcher.max === undefined || matcher.max === value?.max) &&\n (matcher.now === undefined || matcher.now === value?.now) &&\n (matcher.text === undefined || matchStringProp(value?.text, matcher.text))\n );\n}\n"],"mappings":";;;;;;AAGA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,gBAAA,GAAAD,OAAA;AASO,SAASE,uBAAuBA,CACrCC,IAAiB,EACjBC,OAAkC,EACzB;EACT,MAAMC,KAAK,GAAG,IAAAC,+BAAgB,EAACH,IAAI,CAAC;EACpC,OACE,CAACC,OAAO,CAACG,GAAG,KAAKC,SAAS,IAAIJ,OAAO,CAACG,GAAG,KAAKF,KAAK,EAAEE,GAAG,MACvDH,OAAO,CAACK,GAAG,KAAKD,SAAS,IAAIJ,OAAO,CAACK,GAAG,KAAKJ,KAAK,EAAEI,GAAG,CAAC,KACxDL,OAAO,CAACM,GAAG,KAAKF,SAAS,IAAIJ,OAAO,CAACM,GAAG,KAAKL,KAAK,EAAEK,GAAG,CAAC,KACxDN,OAAO,CAACO,IAAI,KAAKH,SAAS,IAAI,IAAAI,gCAAe,EAACP,KAAK,EAAEM,IAAI,EAAEP,OAAO,CAACO,IAAI,CAAC,CAAC;AAE9E","ignoreList":[]}
@@ -1,3 +1,3 @@
1
- import { HostElement } from 'universal-test-renderer';
2
- import { TextMatch, TextMatchOptions } from '../../matches';
1
+ import type { HostElement } from 'universal-test-renderer';
2
+ import type { TextMatch, TextMatchOptions } from '../../matches';
3
3
  export declare function matchAccessibilityLabel(element: HostElement, expectedLabel: TextMatch, options?: TextMatchOptions): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"match-label-text.js","names":["_matches","require","_accessibility","matchAccessibilityLabel","element","expectedLabel","options","matches","computeAriaLabel","normalizer","exact"],"sources":["../../../src/helpers/matchers/match-label-text.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\nimport { matches, TextMatch, TextMatchOptions } from '../../matches';\nimport { computeAriaLabel } from '../accessibility';\n\nexport function matchAccessibilityLabel(\n element: HostElement,\n expectedLabel: TextMatch,\n options?: TextMatchOptions,\n) {\n return matches(expectedLabel, computeAriaLabel(element), options?.normalizer, options?.exact);\n}\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEO,SAASE,uBAAuBA,CACrCC,OAAoB,EACpBC,aAAwB,EACxBC,OAA0B,EAC1B;EACA,OAAO,IAAAC,gBAAO,EAACF,aAAa,EAAE,IAAAG,+BAAgB,EAACJ,OAAO,CAAC,EAAEE,OAAO,EAAEG,UAAU,EAAEH,OAAO,EAAEI,KAAK,CAAC;AAC/F","ignoreList":[]}
1
+ {"version":3,"file":"match-label-text.js","names":["_matches","require","_accessibility","matchAccessibilityLabel","element","expectedLabel","options","matches","computeAriaLabel","normalizer","exact"],"sources":["../../../src/helpers/matchers/match-label-text.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nimport type { TextMatch, TextMatchOptions } from '../../matches';\nimport { matches } from '../../matches';\nimport { computeAriaLabel } from '../accessibility';\n\nexport function matchAccessibilityLabel(\n element: HostElement,\n expectedLabel: TextMatch,\n options?: TextMatchOptions,\n) {\n return matches(expectedLabel, computeAriaLabel(element), options?.normalizer, options?.exact);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAEO,SAASE,uBAAuBA,CACrCC,OAAoB,EACpBC,aAAwB,EACxBC,OAA0B,EAC1B;EACA,OAAO,IAAAC,gBAAO,EAACF,aAAa,EAAE,IAAAG,+BAAgB,EAACJ,OAAO,CAAC,EAAEE,OAAO,EAAEG,UAAU,EAAEH,OAAO,EAAEI,KAAK,CAAC;AAC/F","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { TextMatch } from '../../matches';
1
+ import type { TextMatch } from '../../matches';
2
2
  /**
3
3
  * Matches the given string property again string or regex matcher.
4
4
  *
@@ -1 +1 @@
1
- {"version":3,"file":"match-string-prop.js","names":["matchStringProp","prop","matcher","match"],"sources":["../../../src/helpers/matchers/match-string-prop.ts"],"sourcesContent":["import { TextMatch } from '../../matches';\n\n/**\n * Matches the given string property again string or regex matcher.\n *\n * @param prop - The string prop to match.\n * @param matcher - The string or regex to match.\n * @returns - Whether the string prop matches the given string or regex.\n */\nexport function matchStringProp(prop: string | undefined, matcher: TextMatch): boolean {\n if (!prop) {\n return false;\n }\n\n if (typeof matcher === 'string') {\n return prop === matcher;\n }\n\n return prop.match(matcher) != null;\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,eAAeA,CAACC,IAAwB,EAAEC,OAAkB,EAAW;EACrF,IAAI,CAACD,IAAI,EAAE;IACT,OAAO,KAAK;EACd;EAEA,IAAI,OAAOC,OAAO,KAAK,QAAQ,EAAE;IAC/B,OAAOD,IAAI,KAAKC,OAAO;EACzB;EAEA,OAAOD,IAAI,CAACE,KAAK,CAACD,OAAO,CAAC,IAAI,IAAI;AACpC","ignoreList":[]}
1
+ {"version":3,"file":"match-string-prop.js","names":["matchStringProp","prop","matcher","match"],"sources":["../../../src/helpers/matchers/match-string-prop.ts"],"sourcesContent":["import type { TextMatch } from '../../matches';\n\n/**\n * Matches the given string property again string or regex matcher.\n *\n * @param prop - The string prop to match.\n * @param matcher - The string or regex to match.\n * @returns - Whether the string prop matches the given string or regex.\n */\nexport function matchStringProp(prop: string | undefined, matcher: TextMatch): boolean {\n if (!prop) {\n return false;\n }\n\n if (typeof matcher === 'string') {\n return prop === matcher;\n }\n\n return prop.match(matcher) != null;\n}\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,eAAeA,CAACC,IAAwB,EAAEC,OAAkB,EAAW;EACrF,IAAI,CAACD,IAAI,EAAE;IACT,OAAO,KAAK;EACd;EAEA,IAAI,OAAOC,OAAO,KAAK,QAAQ,EAAE;IAC/B,OAAOD,IAAI,KAAKC,OAAO;EACzB;EAEA,OAAOD,IAAI,CAACE,KAAK,CAACD,OAAO,CAAC,IAAI,IAAI;AACpC","ignoreList":[]}
@@ -1,5 +1,5 @@
1
- import { HostElement } from 'universal-test-renderer';
2
- import { TextMatch, TextMatchOptions } from '../../matches';
1
+ import type { HostElement } from 'universal-test-renderer';
2
+ import type { TextMatch, TextMatchOptions } from '../../matches';
3
3
  /**
4
4
  * Matches the given node's text content against string or regex matcher.
5
5
  *
@@ -1 +1 @@
1
- {"version":3,"file":"match-text-content.js","names":["_matches","require","_textContent","matchTextContent","node","text","options","textContent","getTextContent","exact","normalizer","matches"],"sources":["../../../src/helpers/matchers/match-text-content.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\nimport { matches, TextMatch, TextMatchOptions } from '../../matches';\nimport { getTextContent } from '../text-content';\n\n/**\n * Matches the given node's text content against string or regex matcher.\n *\n * @param node - Node which text content will be matched\n * @param text - The string or regex to match.\n * @returns - Whether the node's text content matches the given string or regex.\n */\nexport function matchTextContent(\n node: HostElement,\n text: TextMatch,\n options: TextMatchOptions = {},\n) {\n const textContent = getTextContent(node);\n const { exact, normalizer } = options;\n return matches(text, textContent, normalizer, exact);\n}\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,gBAAgBA,CAC9BC,IAAiB,EACjBC,IAAe,EACfC,OAAyB,GAAG,CAAC,CAAC,EAC9B;EACA,MAAMC,WAAW,GAAG,IAAAC,2BAAc,EAACJ,IAAI,CAAC;EACxC,MAAM;IAAEK,KAAK;IAAEC;EAAW,CAAC,GAAGJ,OAAO;EACrC,OAAO,IAAAK,gBAAO,EAACN,IAAI,EAAEE,WAAW,EAAEG,UAAU,EAAED,KAAK,CAAC;AACtD","ignoreList":[]}
1
+ {"version":3,"file":"match-text-content.js","names":["_matches","require","_textContent","matchTextContent","node","text","options","textContent","getTextContent","exact","normalizer","matches"],"sources":["../../../src/helpers/matchers/match-text-content.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nimport type { TextMatch, TextMatchOptions } from '../../matches';\nimport { matches } from '../../matches';\nimport { getTextContent } from '../text-content';\n\n/**\n * Matches the given node's text content against string or regex matcher.\n *\n * @param node - Node which text content will be matched\n * @param text - The string or regex to match.\n * @returns - Whether the node's text content matches the given string or regex.\n */\nexport function matchTextContent(\n node: HostElement,\n text: TextMatch,\n options: TextMatchOptions = {},\n) {\n const textContent = getTextContent(node);\n const { exact, normalizer } = options;\n return matches(text, textContent, normalizer, exact);\n}\n"],"mappings":";;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,gBAAgBA,CAC9BC,IAAiB,EACjBC,IAAe,EACfC,OAAyB,GAAG,CAAC,CAAC,EAC9B;EACA,MAAMC,WAAW,GAAG,IAAAC,2BAAc,EAACJ,IAAI,CAAC;EACxC,MAAM;IAAEK,KAAK;IAAEC;EAAW,CAAC,GAAGJ,OAAO;EACrC,OAAO,IAAAK,gBAAO,EAACN,IAAI,EAAEE,WAAW,EAAEG,UAAU,EAAED,KAAK,CAAC;AACtD","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- export declare function pick<T extends {}>(object: T, keys: (keyof T)[]): Partial<T>;
1
+ export declare function pick<T extends object>(object: T, keys: (keyof T)[]): Partial<T>;
2
2
  export declare function removeUndefinedKeys(prop: unknown): unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"object.js","names":["pick","object","keys","result","forEach","key","undefined","isObject","value","Array","isArray","removeUndefinedKeys","prop","hasKeys","Object","entries"],"sources":["../../src/helpers/object.ts"],"sourcesContent":["export function pick<T extends {}>(object: T, keys: (keyof T)[]): Partial<T> {\n const result: Partial<T> = {};\n keys.forEach((key) => {\n if (object[key] !== undefined) {\n result[key] = object[key];\n }\n });\n\n return result;\n}\n\nfunction isObject(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nexport function removeUndefinedKeys(prop: unknown) {\n if (!isObject(prop)) {\n return prop;\n }\n\n let hasKeys = false;\n const result: Record<string, unknown> = {};\n Object.entries(prop).forEach(([key, value]) => {\n if (value !== undefined) {\n result[key] = value;\n hasKeys = true;\n }\n });\n\n return hasKeys ? result : undefined;\n}\n"],"mappings":";;;;;;;AAAO,SAASA,IAAIA,CAAeC,MAAS,EAAEC,IAAiB,EAAc;EAC3E,MAAMC,MAAkB,GAAG,CAAC,CAAC;EAC7BD,IAAI,CAACE,OAAO,CAAEC,GAAG,IAAK;IACpB,IAAIJ,MAAM,CAACI,GAAG,CAAC,KAAKC,SAAS,EAAE;MAC7BH,MAAM,CAACE,GAAG,CAAC,GAAGJ,MAAM,CAACI,GAAG,CAAC;IAC3B;EACF,CAAC,CAAC;EAEF,OAAOF,MAAM;AACf;AAEA,SAASI,QAAQA,CAACC,KAAc,EAAoC;EAClE,OAAOA,KAAK,KAAK,IAAI,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC;AAC7E;AAEO,SAASG,mBAAmBA,CAACC,IAAa,EAAE;EACjD,IAAI,CAACL,QAAQ,CAACK,IAAI,CAAC,EAAE;IACnB,OAAOA,IAAI;EACb;EAEA,IAAIC,OAAO,GAAG,KAAK;EACnB,MAAMV,MAA+B,GAAG,CAAC,CAAC;EAC1CW,MAAM,CAACC,OAAO,CAACH,IAAI,CAAC,CAACR,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEG,KAAK,CAAC,KAAK;IAC7C,IAAIA,KAAK,KAAKF,SAAS,EAAE;MACvBH,MAAM,CAACE,GAAG,CAAC,GAAGG,KAAK;MACnBK,OAAO,GAAG,IAAI;IAChB;EACF,CAAC,CAAC;EAEF,OAAOA,OAAO,GAAGV,MAAM,GAAGG,SAAS;AACrC","ignoreList":[]}
1
+ {"version":3,"file":"object.js","names":["pick","object","keys","result","forEach","key","undefined","isObject","value","Array","isArray","removeUndefinedKeys","prop","hasKeys","Object","entries"],"sources":["../../src/helpers/object.ts"],"sourcesContent":["export function pick<T extends object>(object: T, keys: (keyof T)[]): Partial<T> {\n const result: Partial<T> = {};\n keys.forEach((key) => {\n if (object[key] !== undefined) {\n result[key] = object[key];\n }\n });\n\n return result;\n}\n\nfunction isObject(value: unknown): value is Record<string, unknown> {\n return value !== null && typeof value === 'object' && !Array.isArray(value);\n}\n\nexport function removeUndefinedKeys(prop: unknown) {\n if (!isObject(prop)) {\n return prop;\n }\n\n let hasKeys = false;\n const result: Record<string, unknown> = {};\n Object.entries(prop).forEach(([key, value]) => {\n if (value !== undefined) {\n result[key] = value;\n hasKeys = true;\n }\n });\n\n return hasKeys ? result : undefined;\n}\n"],"mappings":";;;;;;;AAAO,SAASA,IAAIA,CAAmBC,MAAS,EAAEC,IAAiB,EAAc;EAC/E,MAAMC,MAAkB,GAAG,CAAC,CAAC;EAC7BD,IAAI,CAACE,OAAO,CAAEC,GAAG,IAAK;IACpB,IAAIJ,MAAM,CAACI,GAAG,CAAC,KAAKC,SAAS,EAAE;MAC7BH,MAAM,CAACE,GAAG,CAAC,GAAGJ,MAAM,CAACI,GAAG,CAAC;IAC3B;EACF,CAAC,CAAC;EAEF,OAAOF,MAAM;AACf;AAEA,SAASI,QAAQA,CAACC,KAAc,EAAoC;EAClE,OAAOA,KAAK,KAAK,IAAI,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,CAACC,KAAK,CAACC,OAAO,CAACF,KAAK,CAAC;AAC7E;AAEO,SAASG,mBAAmBA,CAACC,IAAa,EAAE;EACjD,IAAI,CAACL,QAAQ,CAACK,IAAI,CAAC,EAAE;IACnB,OAAOA,IAAI;EACb;EAEA,IAAIC,OAAO,GAAG,KAAK;EACnB,MAAMV,MAA+B,GAAG,CAAC,CAAC;EAC1CW,MAAM,CAACC,OAAO,CAACH,IAAI,CAAC,CAACR,OAAO,CAAC,CAAC,CAACC,GAAG,EAAEG,KAAK,CAAC,KAAK;IAC7C,IAAIA,KAAK,KAAKF,SAAS,EAAE;MACvBH,MAAM,CAACE,GAAG,CAAC,GAAGG,KAAK;MACnBK,OAAO,GAAG,IAAI;IAChB;EACF,CAAC,CAAC;EAEF,OAAOA,OAAO,GAAGV,MAAM,GAAGG,SAAS;AACrC","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import { HostElement } from 'universal-test-renderer';
1
+ import type { HostElement } from 'universal-test-renderer';
2
2
  /**
3
3
  * pointerEvents controls whether the View can be the target of touch events.
4
4
  * 'auto': The View and its children can be the target of touch events.
@@ -1 +1 @@
1
- {"version":3,"file":"pointer-events.js","names":["isPointerEventEnabled","element","isParent","parentCondition","props","pointerEvents","hostParent","parent","exports"],"sources":["../../src/helpers/pointer-events.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\n\n/**\n * pointerEvents controls whether the View can be the target of touch events.\n * 'auto': The View and its children can be the target of touch events.\n * 'none': The View is never the target of touch events.\n * 'box-none': The View is never the target of touch events but its subviews can be\n * 'box-only': The view can be the target of touch events but its subviews cannot be\n * see the official react native doc https://reactnative.dev/docs/view#pointerevents */\nexport const isPointerEventEnabled = (element: HostElement, isParent?: boolean): boolean => {\n const parentCondition = isParent\n ? element?.props.pointerEvents === 'box-only'\n : element?.props.pointerEvents === 'box-none';\n\n if (element?.props.pointerEvents === 'none' || parentCondition) {\n return false;\n }\n\n const hostParent = element.parent;\n if (!hostParent) return true;\n\n return isPointerEventEnabled(hostParent, true);\n};\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,qBAAqB,GAAGA,CAACC,OAAoB,EAAEC,QAAkB,KAAc;EAC1F,MAAMC,eAAe,GAAGD,QAAQ,GAC5BD,OAAO,EAAEG,KAAK,CAACC,aAAa,KAAK,UAAU,GAC3CJ,OAAO,EAAEG,KAAK,CAACC,aAAa,KAAK,UAAU;EAE/C,IAAIJ,OAAO,EAAEG,KAAK,CAACC,aAAa,KAAK,MAAM,IAAIF,eAAe,EAAE;IAC9D,OAAO,KAAK;EACd;EAEA,MAAMG,UAAU,GAAGL,OAAO,CAACM,MAAM;EACjC,IAAI,CAACD,UAAU,EAAE,OAAO,IAAI;EAE5B,OAAON,qBAAqB,CAACM,UAAU,EAAE,IAAI,CAAC;AAChD,CAAC;AAACE,OAAA,CAAAR,qBAAA,GAAAA,qBAAA","ignoreList":[]}
1
+ {"version":3,"file":"pointer-events.js","names":["isPointerEventEnabled","element","isParent","parentCondition","props","pointerEvents","hostParent","parent","exports"],"sources":["../../src/helpers/pointer-events.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\n/**\n * pointerEvents controls whether the View can be the target of touch events.\n * 'auto': The View and its children can be the target of touch events.\n * 'none': The View is never the target of touch events.\n * 'box-none': The View is never the target of touch events but its subviews can be\n * 'box-only': The view can be the target of touch events but its subviews cannot be\n * see the official react native doc https://reactnative.dev/docs/view#pointerevents */\nexport const isPointerEventEnabled = (element: HostElement, isParent?: boolean): boolean => {\n const parentCondition = isParent\n ? element?.props.pointerEvents === 'box-only'\n : element?.props.pointerEvents === 'box-none';\n\n if (element?.props.pointerEvents === 'none' || parentCondition) {\n return false;\n }\n\n const hostParent = element.parent;\n if (!hostParent) return true;\n\n return isPointerEventEnabled(hostParent, true);\n};\n"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMA,qBAAqB,GAAGA,CAACC,OAAoB,EAAEC,QAAkB,KAAc;EAC1F,MAAMC,eAAe,GAAGD,QAAQ,GAC5BD,OAAO,EAAEG,KAAK,CAACC,aAAa,KAAK,UAAU,GAC3CJ,OAAO,EAAEG,KAAK,CAACC,aAAa,KAAK,UAAU;EAE/C,IAAIJ,OAAO,EAAEG,KAAK,CAACC,aAAa,KAAK,MAAM,IAAIF,eAAe,EAAE;IAC9D,OAAO,KAAK;EACd;EAEA,MAAMG,UAAU,GAAGL,OAAO,CAACM,MAAM;EACjC,IAAI,CAACD,UAAU,EAAE,OAAO,IAAI;EAE5B,OAAON,qBAAqB,CAACM,UAAU,EAAE,IAAI,CAAC;AAChD,CAAC;AAACE,OAAA,CAAAR,qBAAA,GAAAA,qBAAA","ignoreList":[]}
@@ -1,2 +1,2 @@
1
- import { HostElement } from 'universal-test-renderer';
1
+ import type { HostElement } from 'universal-test-renderer';
2
2
  export declare function getTextContent(element: HostElement | string | null): string;
@@ -1 +1 @@
1
- {"version":3,"file":"text-content.js","names":["getTextContent","element","result","children","forEach","child","push","join"],"sources":["../../src/helpers/text-content.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\n\nexport function getTextContent(element: HostElement | string | null): string {\n if (!element) {\n return '';\n }\n\n if (typeof element === 'string') {\n return element;\n }\n\n const result: string[] = [];\n element.children?.forEach((child) => {\n result.push(getTextContent(child));\n });\n\n return result.join('');\n}\n"],"mappings":";;;;;;AAEO,SAASA,cAAcA,CAACC,OAAoC,EAAU;EAC3E,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,EAAE;EACX;EAEA,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;IAC/B,OAAOA,OAAO;EAChB;EAEA,MAAMC,MAAgB,GAAG,EAAE;EAC3BD,OAAO,CAACE,QAAQ,EAAEC,OAAO,CAAEC,KAAK,IAAK;IACnCH,MAAM,CAACI,IAAI,CAACN,cAAc,CAACK,KAAK,CAAC,CAAC;EACpC,CAAC,CAAC;EAEF,OAAOH,MAAM,CAACK,IAAI,CAAC,EAAE,CAAC;AACxB","ignoreList":[]}
1
+ {"version":3,"file":"text-content.js","names":["getTextContent","element","result","children","forEach","child","push","join"],"sources":["../../src/helpers/text-content.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nexport function getTextContent(element: HostElement | string | null): string {\n if (!element) {\n return '';\n }\n\n if (typeof element === 'string') {\n return element;\n }\n\n const result: string[] = [];\n element.children?.forEach((child) => {\n result.push(getTextContent(child));\n });\n\n return result.join('');\n}\n"],"mappings":";;;;;;AAEO,SAASA,cAAcA,CAACC,OAAoC,EAAU;EAC3E,IAAI,CAACA,OAAO,EAAE;IACZ,OAAO,EAAE;EACX;EAEA,IAAI,OAAOA,OAAO,KAAK,QAAQ,EAAE;IAC/B,OAAOA,OAAO;EAChB;EAEA,MAAMC,MAAgB,GAAG,EAAE;EAC3BD,OAAO,CAACE,QAAQ,EAAEC,OAAO,CAAEC,KAAK,IAAK;IACnCH,MAAM,CAACI,IAAI,CAACN,cAAc,CAACK,KAAK,CAAC,CAAC;EACpC,CAAC,CAAC;EAEF,OAAOH,MAAM,CAACK,IAAI,CAAC,EAAE,CAAC;AACxB","ignoreList":[]}
@@ -1,3 +1,3 @@
1
- import { HostElement } from 'universal-test-renderer';
1
+ import type { HostElement } from 'universal-test-renderer';
2
2
  export declare function isEditableTextInput(element: HostElement): boolean;
3
3
  export declare function getTextInputValue(element: HostElement): any;
@@ -1 +1 @@
1
- {"version":3,"file":"text-input.js","names":["_nativeState","require","_hostComponentNames","isEditableTextInput","element","isHostTextInput","props","editable","getTextInputValue","Error","type","value","nativeState","valueForElement","get","defaultValue"],"sources":["../../src/helpers/text-input.ts"],"sourcesContent":["import { HostElement } from 'universal-test-renderer';\nimport { nativeState } from '../native-state';\nimport { isHostTextInput } from './host-component-names';\n\nexport function isEditableTextInput(element: HostElement) {\n return isHostTextInput(element) && element.props.editable !== false;\n}\n\nexport function getTextInputValue(element: HostElement) {\n if (!isHostTextInput(element)) {\n throw new Error(`Element is not a \"TextInput\", but it has type \"${element.type}\".`);\n }\n\n return (\n element.props.value ??\n nativeState.valueForElement.get(element) ??\n element.props.defaultValue ??\n ''\n );\n}\n"],"mappings":";;;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AAEO,SAASE,mBAAmBA,CAACC,OAAoB,EAAE;EACxD,OAAO,IAAAC,mCAAe,EAACD,OAAO,CAAC,IAAIA,OAAO,CAACE,KAAK,CAACC,QAAQ,KAAK,KAAK;AACrE;AAEO,SAASC,iBAAiBA,CAACJ,OAAoB,EAAE;EACtD,IAAI,CAAC,IAAAC,mCAAe,EAACD,OAAO,CAAC,EAAE;IAC7B,MAAM,IAAIK,KAAK,CAAC,kDAAkDL,OAAO,CAACM,IAAI,IAAI,CAAC;EACrF;EAEA,OACEN,OAAO,CAACE,KAAK,CAACK,KAAK,IACnBC,wBAAW,CAACC,eAAe,CAACC,GAAG,CAACV,OAAO,CAAC,IACxCA,OAAO,CAACE,KAAK,CAACS,YAAY,IAC1B,EAAE;AAEN","ignoreList":[]}
1
+ {"version":3,"file":"text-input.js","names":["_nativeState","require","_hostComponentNames","isEditableTextInput","element","isHostTextInput","props","editable","getTextInputValue","Error","type","value","nativeState","valueForElement","get","defaultValue"],"sources":["../../src/helpers/text-input.ts"],"sourcesContent":["import type { HostElement } from 'universal-test-renderer';\n\nimport { nativeState } from '../native-state';\nimport { isHostTextInput } from './host-component-names';\n\nexport function isEditableTextInput(element: HostElement) {\n return isHostTextInput(element) && element.props.editable !== false;\n}\n\nexport function getTextInputValue(element: HostElement) {\n if (!isHostTextInput(element)) {\n throw new Error(`Element is not a \"TextInput\", but it has type \"${element.type}\".`);\n }\n\n return (\n element.props.value ??\n nativeState.valueForElement.get(element) ??\n element.props.defaultValue ??\n ''\n );\n}\n"],"mappings":";;;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AAEO,SAASE,mBAAmBA,CAACC,OAAoB,EAAE;EACxD,OAAO,IAAAC,mCAAe,EAACD,OAAO,CAAC,IAAIA,OAAO,CAACE,KAAK,CAACC,QAAQ,KAAK,KAAK;AACrE;AAEO,SAASC,iBAAiBA,CAACJ,OAAoB,EAAE;EACtD,IAAI,CAAC,IAAAC,mCAAe,EAACD,OAAO,CAAC,EAAE;IAC7B,MAAM,IAAIK,KAAK,CAAC,kDAAkDL,OAAO,CAACM,IAAI,IAAI,CAAC;EACrF;EAEA,OACEN,OAAO,CAACE,KAAK,CAACK,KAAK,IACnBC,wBAAW,CAACC,eAAe,CAACC,GAAG,CAACV,OAAO,CAAC,IACxCA,OAAO,CAACE,KAAK,CAACS,YAAY,IAC1B,EAAE;AAEN","ignoreList":[]}
@@ -1,4 +1,4 @@
1
1
  declare function runWithRealTimers<T>(callback: () => T): T;
2
2
  declare const jestFakeTimersAreEnabled: () => boolean;
3
3
  declare const clearTimeoutFn: typeof clearTimeout, setImmediateFn: typeof setImmediate, setTimeoutFn: typeof setTimeout;
4
- export { runWithRealTimers, jestFakeTimersAreEnabled, clearTimeoutFn as clearTimeout, setImmediateFn as setImmediate, setTimeoutFn as setTimeout, };
4
+ export { clearTimeoutFn as clearTimeout, jestFakeTimersAreEnabled, runWithRealTimers, setImmediateFn as setImmediate, setTimeoutFn as setTimeout, };
@@ -1 +1 @@
1
- {"version":3,"file":"timers.js","names":["globalObj","window","global","runWithRealTimers","callback","fakeTimersType","getJestFakeTimersType","jest","useRealTimers","callbackReturnValue","fakeTimersConfig","getFakeTimersConfigFromType","useFakeTimers","setTimeout","process","env","RNTL_SKIP_AUTO_DETECT_FAKE_TIMERS","_isMockFunction","clock","getRealSystemTime","type","legacyFakeTimers","jestFakeTimersAreEnabled","Boolean","exports","setImmediatePolyfill","fn","bindTimeFunctions","clearTimeoutFn","clearTimeout","setImmediateFn","setImmediate","setTimeoutFn"],"sources":["../../src/helpers/timers.ts"],"sourcesContent":["// Most content of this file sourced directly from https://github.com/testing-library/dom-testing-library/blob/main/src/helpers.js\n/* globals jest */\nconst globalObj = typeof window === 'undefined' ? global : window;\n\ntype FakeTimersTypes = 'modern' | 'legacy';\n\n// Currently this fn only supports jest timers, but it could support other test runners in the future.\nfunction runWithRealTimers<T>(callback: () => T): T {\n const fakeTimersType = getJestFakeTimersType();\n if (fakeTimersType) {\n jest.useRealTimers();\n }\n\n const callbackReturnValue = callback();\n\n if (fakeTimersType) {\n const fakeTimersConfig = getFakeTimersConfigFromType(fakeTimersType);\n jest.useFakeTimers(fakeTimersConfig);\n }\n\n return callbackReturnValue;\n}\n\nfunction getJestFakeTimersType(): FakeTimersTypes | null {\n // istanbul ignore if\n if (\n typeof jest === 'undefined' ||\n typeof globalObj.setTimeout === 'undefined' ||\n process.env.RNTL_SKIP_AUTO_DETECT_FAKE_TIMERS\n ) {\n return null;\n }\n\n if (\n // @ts-expect-error jest mutates setTimeout\n typeof globalObj.setTimeout._isMockFunction !== 'undefined' &&\n // @ts-expect-error jest mutates setTimeout\n globalObj.setTimeout._isMockFunction\n ) {\n return 'legacy';\n }\n\n if (\n // @ts-expect-error jest mutates setTimeout\n typeof globalObj.setTimeout.clock !== 'undefined' &&\n typeof jest.getRealSystemTime !== 'undefined'\n ) {\n try {\n // jest.getRealSystemTime is only supported for Jest's `modern` fake timers and otherwise throws\n jest.getRealSystemTime();\n return 'modern';\n } catch {\n // not using Jest's modern fake timers\n }\n }\n\n return null;\n}\n\nfunction getFakeTimersConfigFromType(type: FakeTimersTypes) {\n return type === 'legacy' ? { legacyFakeTimers: true } : { legacyFakeTimers: false };\n}\n\nconst jestFakeTimersAreEnabled = (): boolean => Boolean(getJestFakeTimersType());\n\n// we only run our tests in node, and setImmediate is supported in node.\nfunction setImmediatePolyfill(fn: Function) {\n return globalObj.setTimeout(fn, 0);\n}\n\ntype BindTimeFunctions = {\n clearTimeoutFn: typeof clearTimeout;\n setImmediateFn: typeof setImmediate;\n setTimeoutFn: typeof setTimeout;\n};\n\nfunction bindTimeFunctions(): BindTimeFunctions {\n return {\n clearTimeoutFn: globalObj.clearTimeout,\n setImmediateFn: globalObj.setImmediate || setImmediatePolyfill,\n setTimeoutFn: globalObj.setTimeout,\n };\n}\n\nconst { clearTimeoutFn, setImmediateFn, setTimeoutFn } = runWithRealTimers(\n bindTimeFunctions,\n) as BindTimeFunctions;\n\nexport {\n runWithRealTimers,\n jestFakeTimersAreEnabled,\n clearTimeoutFn as clearTimeout,\n setImmediateFn as setImmediate,\n setTimeoutFn as setTimeout,\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AACA,MAAMA,SAAS,GAAG,OAAOC,MAAM,KAAK,WAAW,GAAGC,MAAM,GAAGD,MAAM;AAIjE;AACA,SAASE,iBAAiBA,CAAIC,QAAiB,EAAK;EAClD,MAAMC,cAAc,GAAGC,qBAAqB,CAAC,CAAC;EAC9C,IAAID,cAAc,EAAE;IAClBE,IAAI,CAACC,aAAa,CAAC,CAAC;EACtB;EAEA,MAAMC,mBAAmB,GAAGL,QAAQ,CAAC,CAAC;EAEtC,IAAIC,cAAc,EAAE;IAClB,MAAMK,gBAAgB,GAAGC,2BAA2B,CAACN,cAAc,CAAC;IACpEE,IAAI,CAACK,aAAa,CAACF,gBAAgB,CAAC;EACtC;EAEA,OAAOD,mBAAmB;AAC5B;AAEA,SAASH,qBAAqBA,CAAA,EAA2B;EACvD;EACA,IACE,OAAOC,IAAI,KAAK,WAAW,IAC3B,OAAOP,SAAS,CAACa,UAAU,KAAK,WAAW,IAC3CC,OAAO,CAACC,GAAG,CAACC,iCAAiC,EAC7C;IACA,OAAO,IAAI;EACb;EAEA;EACE;EACA,OAAOhB,SAAS,CAACa,UAAU,CAACI,eAAe,KAAK,WAAW;EAC3D;EACAjB,SAAS,CAACa,UAAU,CAACI,eAAe,EACpC;IACA,OAAO,QAAQ;EACjB;EAEA;EACE;EACA,OAAOjB,SAAS,CAACa,UAAU,CAACK,KAAK,KAAK,WAAW,IACjD,OAAOX,IAAI,CAACY,iBAAiB,KAAK,WAAW,EAC7C;IACA,IAAI;MACF;MACAZ,IAAI,CAACY,iBAAiB,CAAC,CAAC;MACxB,OAAO,QAAQ;IACjB,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAO,IAAI;AACb;AAEA,SAASR,2BAA2BA,CAACS,IAAqB,EAAE;EAC1D,OAAOA,IAAI,KAAK,QAAQ,GAAG;IAAEC,gBAAgB,EAAE;EAAK,CAAC,GAAG;IAAEA,gBAAgB,EAAE;EAAM,CAAC;AACrF;AAEA,MAAMC,wBAAwB,GAAGA,CAAA,KAAeC,OAAO,CAACjB,qBAAqB,CAAC,CAAC,CAAC;;AAEhF;AAAAkB,OAAA,CAAAF,wBAAA,GAAAA,wBAAA;AACA,SAASG,oBAAoBA,CAACC,EAAY,EAAE;EAC1C,OAAO1B,SAAS,CAACa,UAAU,CAACa,EAAE,EAAE,CAAC,CAAC;AACpC;AAQA,SAASC,iBAAiBA,CAAA,EAAsB;EAC9C,OAAO;IACLC,cAAc,EAAE5B,SAAS,CAAC6B,YAAY;IACtCC,cAAc,EAAE9B,SAAS,CAAC+B,YAAY,IAAIN,oBAAoB;IAC9DO,YAAY,EAAEhC,SAAS,CAACa;EAC1B,CAAC;AACH;AAEA,MAAM;EAAEe,cAAc;EAAEE,cAAc;EAAEE;AAAa,CAAC,GAAG7B,iBAAiB,CACxEwB,iBACF,CAAsB;AAACH,OAAA,CAAAX,UAAA,GAAAmB,YAAA;AAAAR,OAAA,CAAAO,YAAA,GAAAD,cAAA;AAAAN,OAAA,CAAAK,YAAA,GAAAD,cAAA","ignoreList":[]}
1
+ {"version":3,"file":"timers.js","names":["globalObj","window","global","runWithRealTimers","callback","fakeTimersType","getJestFakeTimersType","jest","useRealTimers","callbackReturnValue","fakeTimersConfig","getFakeTimersConfigFromType","useFakeTimers","setTimeout","process","env","RNTL_SKIP_AUTO_DETECT_FAKE_TIMERS","_isMockFunction","clock","getRealSystemTime","type","legacyFakeTimers","jestFakeTimersAreEnabled","Boolean","exports","setImmediatePolyfill","fn","bindTimeFunctions","clearTimeoutFn","clearTimeout","setImmediateFn","setImmediate","setTimeoutFn"],"sources":["../../src/helpers/timers.ts"],"sourcesContent":["// Most content of this file sourced directly from https://github.com/testing-library/dom-testing-library/blob/main/src/helpers.js\n/* globals jest */\nconst globalObj = typeof window === 'undefined' ? global : window;\n\ntype FakeTimersTypes = 'modern' | 'legacy';\n\n// Currently this fn only supports jest timers, but it could support other test runners in the future.\nfunction runWithRealTimers<T>(callback: () => T): T {\n const fakeTimersType = getJestFakeTimersType();\n if (fakeTimersType) {\n jest.useRealTimers();\n }\n\n const callbackReturnValue = callback();\n\n if (fakeTimersType) {\n const fakeTimersConfig = getFakeTimersConfigFromType(fakeTimersType);\n jest.useFakeTimers(fakeTimersConfig);\n }\n\n return callbackReturnValue;\n}\n\nfunction getJestFakeTimersType(): FakeTimersTypes | null {\n // istanbul ignore if\n if (\n typeof jest === 'undefined' ||\n typeof globalObj.setTimeout === 'undefined' ||\n process.env.RNTL_SKIP_AUTO_DETECT_FAKE_TIMERS\n ) {\n return null;\n }\n\n if (\n // @ts-expect-error jest mutates setTimeout\n typeof globalObj.setTimeout._isMockFunction !== 'undefined' &&\n // @ts-expect-error jest mutates setTimeout\n globalObj.setTimeout._isMockFunction\n ) {\n return 'legacy';\n }\n\n if (\n // @ts-expect-error jest mutates setTimeout\n typeof globalObj.setTimeout.clock !== 'undefined' &&\n typeof jest.getRealSystemTime !== 'undefined'\n ) {\n try {\n // jest.getRealSystemTime is only supported for Jest's `modern` fake timers and otherwise throws\n jest.getRealSystemTime();\n return 'modern';\n } catch {\n // not using Jest's modern fake timers\n }\n }\n\n return null;\n}\n\nfunction getFakeTimersConfigFromType(type: FakeTimersTypes) {\n return type === 'legacy' ? { legacyFakeTimers: true } : { legacyFakeTimers: false };\n}\n\nconst jestFakeTimersAreEnabled = (): boolean => Boolean(getJestFakeTimersType());\n\n// we only run our tests in node, and setImmediate is supported in node.\nfunction setImmediatePolyfill(fn: () => void) {\n return globalObj.setTimeout(fn, 0);\n}\n\ntype BindTimeFunctions = {\n clearTimeoutFn: typeof clearTimeout;\n setImmediateFn: typeof setImmediate;\n setTimeoutFn: typeof setTimeout;\n};\n\nfunction bindTimeFunctions(): BindTimeFunctions {\n return {\n clearTimeoutFn: globalObj.clearTimeout,\n setImmediateFn: globalObj.setImmediate || setImmediatePolyfill,\n setTimeoutFn: globalObj.setTimeout,\n };\n}\n\nconst { clearTimeoutFn, setImmediateFn, setTimeoutFn } = runWithRealTimers(\n bindTimeFunctions,\n) as BindTimeFunctions;\n\nexport {\n clearTimeoutFn as clearTimeout,\n jestFakeTimersAreEnabled,\n runWithRealTimers,\n setImmediateFn as setImmediate,\n setTimeoutFn as setTimeout,\n};\n"],"mappings":";;;;;;;;AAAA;AACA;AACA,MAAMA,SAAS,GAAG,OAAOC,MAAM,KAAK,WAAW,GAAGC,MAAM,GAAGD,MAAM;AAIjE;AACA,SAASE,iBAAiBA,CAAIC,QAAiB,EAAK;EAClD,MAAMC,cAAc,GAAGC,qBAAqB,CAAC,CAAC;EAC9C,IAAID,cAAc,EAAE;IAClBE,IAAI,CAACC,aAAa,CAAC,CAAC;EACtB;EAEA,MAAMC,mBAAmB,GAAGL,QAAQ,CAAC,CAAC;EAEtC,IAAIC,cAAc,EAAE;IAClB,MAAMK,gBAAgB,GAAGC,2BAA2B,CAACN,cAAc,CAAC;IACpEE,IAAI,CAACK,aAAa,CAACF,gBAAgB,CAAC;EACtC;EAEA,OAAOD,mBAAmB;AAC5B;AAEA,SAASH,qBAAqBA,CAAA,EAA2B;EACvD;EACA,IACE,OAAOC,IAAI,KAAK,WAAW,IAC3B,OAAOP,SAAS,CAACa,UAAU,KAAK,WAAW,IAC3CC,OAAO,CAACC,GAAG,CAACC,iCAAiC,EAC7C;IACA,OAAO,IAAI;EACb;EAEA;EACE;EACA,OAAOhB,SAAS,CAACa,UAAU,CAACI,eAAe,KAAK,WAAW;EAC3D;EACAjB,SAAS,CAACa,UAAU,CAACI,eAAe,EACpC;IACA,OAAO,QAAQ;EACjB;EAEA;EACE;EACA,OAAOjB,SAAS,CAACa,UAAU,CAACK,KAAK,KAAK,WAAW,IACjD,OAAOX,IAAI,CAACY,iBAAiB,KAAK,WAAW,EAC7C;IACA,IAAI;MACF;MACAZ,IAAI,CAACY,iBAAiB,CAAC,CAAC;MACxB,OAAO,QAAQ;IACjB,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;EAEA,OAAO,IAAI;AACb;AAEA,SAASR,2BAA2BA,CAACS,IAAqB,EAAE;EAC1D,OAAOA,IAAI,KAAK,QAAQ,GAAG;IAAEC,gBAAgB,EAAE;EAAK,CAAC,GAAG;IAAEA,gBAAgB,EAAE;EAAM,CAAC;AACrF;AAEA,MAAMC,wBAAwB,GAAGA,CAAA,KAAeC,OAAO,CAACjB,qBAAqB,CAAC,CAAC,CAAC;;AAEhF;AAAAkB,OAAA,CAAAF,wBAAA,GAAAA,wBAAA;AACA,SAASG,oBAAoBA,CAACC,EAAc,EAAE;EAC5C,OAAO1B,SAAS,CAACa,UAAU,CAACa,EAAE,EAAE,CAAC,CAAC;AACpC;AAQA,SAASC,iBAAiBA,CAAA,EAAsB;EAC9C,OAAO;IACLC,cAAc,EAAE5B,SAAS,CAAC6B,YAAY;IACtCC,cAAc,EAAE9B,SAAS,CAAC+B,YAAY,IAAIN,oBAAoB;IAC9DO,YAAY,EAAEhC,SAAS,CAACa;EAC1B,CAAC;AACH;AAEA,MAAM;EAAEe,cAAc;EAAEE,cAAc;EAAEE;AAAa,CAAC,GAAG7B,iBAAiB,CACxEwB,iBACF,CAAsB;AAACH,OAAA,CAAAX,UAAA,GAAAmB,YAAA;AAAAR,OAAA,CAAAO,YAAA,GAAAD,cAAA;AAAAN,OAAA,CAAAK,YAAA,GAAAD,cAAA","ignoreList":[]}
package/build/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { HostElement } from 'universal-test-renderer';
2
1
  import './matchers/extend-expect';
2
+ export { HostElement } from 'universal-test-renderer';
3
3
  export * from './pure';
@@ -86,12 +86,12 @@ interface ByTextQueries {
86
86
  findByText: (
87
87
  text: TextMatch,
88
88
  queryOptions?: ByTextOptions,
89
- waitForOptions?: WaitForOptions
89
+ waitForOptions?: WaitForOptions,
90
90
  ) => FindReturn;
91
91
  findAllByText: (
92
92
  text: TextMatch,
93
93
  queryOptions?: ByTextOptions,
94
- waitForOptions?: WaitForOptions
94
+ waitForOptions?: WaitForOptions,
95
95
  ) => FindAllReturn;
96
96
  }
97
97
 
@@ -105,12 +105,12 @@ interface ByTestIdQueries {
105
105
  findByTestId: (
106
106
  testID: TextMatch,
107
107
  queryOptions?: ByTestIdOptions,
108
- waitForOptions?: WaitForOptions
108
+ waitForOptions?: WaitForOptions,
109
109
  ) => FindReturn;
110
110
  findAllByTestId: (
111
111
  testID: TextMatch,
112
112
  queryOptions?: ByTestIdOptions,
113
- waitForOptions?: WaitForOptions
113
+ waitForOptions?: WaitForOptions,
114
114
  ) => FindAllReturn;
115
115
  }
116
116
 
@@ -120,25 +120,25 @@ interface ByDisplayValueQueries {
120
120
  getByDisplayValue: (value: TextMatch, options?: ByDisplayValueOptions) => ReactTestInstance;
121
121
  getAllByDisplayValue: (
122
122
  value: TextMatch,
123
- options?: ByDisplayValueOptions
123
+ options?: ByDisplayValueOptions,
124
124
  ) => Array<ReactTestInstance>;
125
125
  queryByDisplayValue: (
126
126
  value: TextMatch,
127
- options?: ByDisplayValueOptions
127
+ options?: ByDisplayValueOptions,
128
128
  ) => ReactTestInstance | null;
129
129
  queryAllByDisplayValue: (
130
130
  value: TextMatch,
131
- options?: ByDisplayValueOptions
131
+ options?: ByDisplayValueOptions,
132
132
  ) => Array<ReactTestInstance> | [];
133
133
  findByDisplayValue: (
134
134
  value: TextMatch,
135
135
  queryOptions?: ByDisplayValueOptions,
136
- waitForOptions?: WaitForOptions
136
+ waitForOptions?: WaitForOptions,
137
137
  ) => FindReturn;
138
138
  findAllByDisplayValue: (
139
139
  value: TextMatch,
140
140
  queryOptions?: ByDisplayValueOptions,
141
- waitForOptions?: WaitForOptions
141
+ waitForOptions?: WaitForOptions,
142
142
  ) => FindAllReturn;
143
143
  }
144
144
 
@@ -147,29 +147,29 @@ type ByPlaceholderTextOptions = CommonQueryOptions & TextMatchOptions;
147
147
  interface ByPlaceholderTextQueries {
148
148
  getByPlaceholderText: (
149
149
  placeholder: TextMatch,
150
- options?: ByPlaceholderTextOptions
150
+ options?: ByPlaceholderTextOptions,
151
151
  ) => ReactTestInstance;
152
152
  getAllByPlaceholderText: (
153
153
  placeholder: TextMatch,
154
- options?: ByPlaceholderTextOptions
154
+ options?: ByPlaceholderTextOptions,
155
155
  ) => Array<ReactTestInstance>;
156
156
  queryByPlaceholderText: (
157
157
  placeholder: TextMatch,
158
- options?: ByPlaceholderTextOptions
158
+ options?: ByPlaceholderTextOptions,
159
159
  ) => ReactTestInstance | null;
160
160
  queryAllByPlaceholderText: (
161
161
  placeholder: TextMatch,
162
- options?: ByPlaceholderTextOptions
162
+ options?: ByPlaceholderTextOptions,
163
163
  ) => Array<ReactTestInstance> | [];
164
164
  findByPlaceholderText: (
165
165
  placeholder: TextMatch,
166
166
  queryOptions?: ByPlaceholderTextOptions,
167
- waitForOptions?: WaitForOptions
167
+ waitForOptions?: WaitForOptions,
168
168
  ) => FindReturn;
169
169
  findAllByPlaceholderText: (
170
170
  placeholder: TextMatch,
171
171
  queryOptions?: ByPlaceholderTextOptions,
172
- waitForOptions?: WaitForOptions
172
+ waitForOptions?: WaitForOptions,
173
173
  ) => FindAllReturn;
174
174
  }
175
175
 
@@ -205,12 +205,12 @@ interface A11yAPI {
205
205
  findByLabelText: (
206
206
  matcher: TextMatch,
207
207
  queryOptions?: ByLabelTextOptions,
208
- waitForOptions?: WaitForOptions
208
+ waitForOptions?: WaitForOptions,
209
209
  ) => FindReturn;
210
210
  findAllByLabelText: (
211
211
  matcher: TextMatch,
212
212
  queryOptions?: ByLabelTextOptions,
213
- waitForOptions?: WaitForOptions
213
+ waitForOptions?: WaitForOptions,
214
214
  ) => FindAllReturn;
215
215
 
216
216
  // Hint
@@ -225,22 +225,22 @@ interface A11yAPI {
225
225
  findByA11yHint: (
226
226
  matcher: TextMatch,
227
227
  queryOptions?: ByHintTextOptions,
228
- waitForOptions?: WaitForOptions
228
+ waitForOptions?: WaitForOptions,
229
229
  ) => FindReturn;
230
230
  findByHintText: (
231
231
  matcher: TextMatch,
232
232
  queryOptions?: ByHintTextOptions,
233
- waitForOptions?: WaitForOptions
233
+ waitForOptions?: WaitForOptions,
234
234
  ) => FindReturn;
235
235
  findAllByA11yHint: (
236
236
  matcher: TextMatch,
237
237
  queryOptions?: ByHintTextOptions,
238
- waitForOptions?: WaitForOptions
238
+ waitForOptions?: WaitForOptions,
239
239
  ) => FindAllReturn;
240
240
  findAllByHintText: (
241
241
  matcher: TextMatch,
242
242
  queryOptions?: ByHintTextOptions,
243
- waitForOptions?: WaitForOptions
243
+ waitForOptions?: WaitForOptions,
244
244
  ) => FindAllReturn;
245
245
 
246
246
  // Role
@@ -251,12 +251,12 @@ interface A11yAPI {
251
251
  findByRole: (
252
252
  matcher: A11yRole | RegExp,
253
253
  queryOptions?: ByRoleOptions,
254
- waitForOptions?: WaitForOptions
254
+ waitForOptions?: WaitForOptions,
255
255
  ) => FindReturn;
256
256
  findAllByRole: (
257
257
  matcher: A11yRole | RegExp,
258
258
  queryOptions?: ByRoleOptions,
259
- waitForOptions?: WaitForOptions
259
+ waitForOptions?: WaitForOptions,
260
260
  ) => FindAllReturn;
261
261
  }
262
262
 
@@ -266,7 +266,7 @@ interface Thenable {
266
266
 
267
267
  type MapPropsFunction = (
268
268
  props: { [string]: mixed },
269
- node: ReactTestRendererJSON
269
+ node: ReactTestRendererJSON,
270
270
  ) => { [string]: mixed };
271
271
 
272
272
  type DebugOptions = {
@@ -274,10 +274,6 @@ type DebugOptions = {
274
274
  mapProps?: MapPropsFunction,
275
275
  };
276
276
 
277
- type Debug = {
278
- (options?: DebugOptions | string): void,
279
- };
280
-
281
277
  type Queries = ByTextQueries &
282
278
  ByTestIdQueries &
283
279
  ByDisplayValueQueries &
@@ -304,7 +300,7 @@ declare module '@testing-library/react-native' {
304
300
  rerender(nextElement: React.Element<any>): void;
305
301
  unmount(nextElement?: React.Element<any>): void;
306
302
  toJSON(): ReactTestRendererJSON[] | ReactTestRendererJSON | null;
307
- debug: Debug;
303
+ debug(options?: DebugOptions): void;
308
304
  root: ReactTestInstance;
309
305
  UNSAFE_root: ReactTestInstance;
310
306
  }
@@ -321,7 +317,7 @@ declare module '@testing-library/react-native' {
321
317
 
322
318
  declare export var render: (
323
319
  component: React.Element<any>,
324
- options?: RenderOptions
320
+ options?: RenderOptions,
325
321
  ) => RenderResult;
326
322
 
327
323
  declare export var screen: RenderResult;
@@ -333,7 +329,7 @@ declare module '@testing-library/react-native' {
333
329
 
334
330
  declare type WaitForElementToBeRemovedFunction = <T = any>(
335
331
  expectation: () => T,
336
- options?: WaitForOptions
332
+ options?: WaitForOptions,
337
333
  ) => Promise<T>;
338
334
 
339
335
  declare export var waitForElementToBeRemoved: WaitForElementToBeRemovedFunction;
@@ -374,7 +370,7 @@ declare module '@testing-library/react-native' {
374
370
 
375
371
  declare type RenderHookFunction = <Result, Props>(
376
372
  renderCallback: (props: Props) => Result,
377
- options?: RenderHookOptions<Props>
373
+ options?: RenderHookOptions<Props>,
378
374
  ) => RenderHookResult<Result, Props>;
379
375
 
380
376
  declare export var renderHook: RenderHookFunction;
package/build/index.js CHANGED
@@ -12,7 +12,10 @@ Object.defineProperty(exports, "HostElement", {
12
12
  return _universalTestRenderer.HostElement;
13
13
  }
14
14
  });
15
+ require("./matchers/extend-expect");
15
16
  var _universalTestRenderer = require("universal-test-renderer");
17
+ var _act = require("./act");
18
+ var _flushMicroTasks = require("./flush-micro-tasks");
16
19
  var _pure = require("./pure");
17
20
  Object.keys(_pure).forEach(function (key) {
18
21
  if (key === "default" || key === "__esModule") return;
@@ -25,9 +28,6 @@ Object.keys(_pure).forEach(function (key) {
25
28
  }
26
29
  });
27
30
  });
28
- var _flushMicroTasks = require("./flush-micro-tasks");
29
- var _act = require("./act");
30
- require("./matchers/extend-expect");
31
31
  if (!process?.env?.RNTL_SKIP_AUTO_CLEANUP) {
32
32
  // If we're running in a test runner that supports afterEach
33
33
  // then we'll automatically run cleanup afterEach test
@@ -35,7 +35,6 @@ if (!process?.env?.RNTL_SKIP_AUTO_CLEANUP) {
35
35
  // if you don't like this then either import the `pure` module
36
36
  // or set the RNTL_SKIP_AUTO_CLEANUP env variable to 'true'.
37
37
  if (typeof afterEach === 'function') {
38
- // eslint-disable-next-line no-undef
39
38
  afterEach(async () => {
40
39
  await (0, _flushMicroTasks.flushMicroTasks)();
41
40
  (0, _pure.cleanup)();