@testing-library/react-native 12.3.0 → 12.3.2

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 (212) hide show
  1. package/build/act.js +1 -2
  2. package/build/act.js.map +1 -1
  3. package/build/config.d.ts +2 -1
  4. package/build/config.js.map +1 -1
  5. package/build/{fireEvent.js → fire-event.js} +2 -3
  6. package/build/fire-event.js.map +1 -0
  7. package/build/helpers/accessiblity.d.ts +4 -0
  8. package/build/helpers/accessiblity.js +35 -6
  9. package/build/helpers/accessiblity.js.map +1 -1
  10. package/build/helpers/{debugDeep.js → debug-deep.js} +1 -1
  11. package/build/helpers/debug-deep.js.map +1 -0
  12. package/build/helpers/{debugShallow.js → debug-shallow.js} +1 -1
  13. package/build/helpers/debug-shallow.js.map +1 -0
  14. package/build/helpers/{findAll.js → find-all.js} +1 -1
  15. package/build/helpers/find-all.js.map +1 -0
  16. package/build/helpers/format-default.js +3 -19
  17. package/build/helpers/format-default.js.map +1 -1
  18. package/build/helpers/format.js +3 -4
  19. package/build/helpers/format.js.map +1 -1
  20. package/build/helpers/host-component-names.d.ts +5 -0
  21. package/build/helpers/host-component-names.js +14 -2
  22. package/build/helpers/host-component-names.js.map +1 -1
  23. package/build/helpers/matchers/{accessibilityState.js → match-accessibility-state.js} +1 -1
  24. package/build/helpers/matchers/match-accessibility-state.js.map +1 -0
  25. package/build/helpers/matchers/{accessibilityValue.js → match-accessibility-value.js} +2 -2
  26. package/build/helpers/matchers/match-accessibility-value.js.map +1 -0
  27. package/build/helpers/matchers/{matchArrayProp.js → match-array-prop.js} +1 -1
  28. package/build/helpers/matchers/match-array-prop.js.map +1 -0
  29. package/build/helpers/matchers/{matchLabelText.js → match-label-text.js} +3 -3
  30. package/build/helpers/matchers/match-label-text.js.map +1 -0
  31. package/build/helpers/matchers/{matchObjectProp.js → match-object-prop.js} +1 -1
  32. package/build/helpers/matchers/match-object-prop.js.map +1 -0
  33. package/build/helpers/matchers/{matchStringProp.js → match-string-prop.js} +1 -1
  34. package/build/helpers/matchers/match-string-prop.js.map +1 -0
  35. package/build/helpers/matchers/{matchTextContent.js → match-text-content.js} +1 -1
  36. package/build/helpers/matchers/match-text-content.js.map +1 -0
  37. package/build/helpers/object.d.ts +2 -0
  38. package/build/helpers/object.js +34 -0
  39. package/build/helpers/object.js.map +1 -0
  40. package/build/helpers/{stringValidation.js → string-validation.js} +1 -1
  41. package/build/helpers/string-validation.js.map +1 -0
  42. package/build/helpers/wrap-async.d.ts +7 -0
  43. package/build/helpers/wrap-async.js +45 -0
  44. package/build/helpers/wrap-async.js.map +1 -0
  45. package/build/matchers/extend-expect.d.js.map +1 -1
  46. package/build/matchers/extend-expect.js +14 -0
  47. package/build/matchers/extend-expect.js.map +1 -1
  48. package/build/matchers/index.d.ts +8 -1
  49. package/build/matchers/index.js +50 -1
  50. package/build/matchers/index.js.map +1 -1
  51. package/build/matchers/to-be-busy.d.ts +6 -0
  52. package/build/matchers/to-be-busy.js +20 -0
  53. package/build/matchers/to-be-busy.js.map +1 -0
  54. package/build/matchers/to-be-collapsed.d.ts +6 -0
  55. package/build/matchers/to-be-collapsed.js +20 -0
  56. package/build/matchers/to-be-collapsed.js.map +1 -0
  57. package/build/matchers/to-be-expanded.d.ts +6 -0
  58. package/build/matchers/to-be-expanded.js +20 -0
  59. package/build/matchers/to-be-expanded.js.map +1 -0
  60. package/build/matchers/to-be-selected.d.ts +6 -0
  61. package/build/matchers/to-be-selected.js +20 -0
  62. package/build/matchers/to-be-selected.js.map +1 -0
  63. package/build/matchers/to-contain-element.d.ts +6 -0
  64. package/build/matchers/to-contain-element.js +26 -0
  65. package/build/matchers/to-contain-element.js.map +1 -0
  66. package/build/matchers/to-have-accessibility-value.d.ts +7 -0
  67. package/build/matchers/to-have-accessibility-value.js +23 -0
  68. package/build/matchers/to-have-accessibility-value.js.map +1 -0
  69. package/build/matchers/to-have-style.d.ts +8 -0
  70. package/build/matchers/to-have-style.js +52 -0
  71. package/build/matchers/to-have-style.js.map +1 -0
  72. package/build/matchers/utils.js +2 -2
  73. package/build/matchers/utils.js.map +1 -1
  74. package/build/pure.d.ts +5 -5
  75. package/build/pure.js +4 -4
  76. package/build/pure.js.map +1 -1
  77. package/build/queries/{a11yState.d.ts → accessibility-state.d.ts} +2 -2
  78. package/build/queries/{a11yState.js → accessibility-state.js} +5 -5
  79. package/build/queries/accessibility-state.js.map +1 -0
  80. package/build/queries/{a11yValue.d.ts → accessibility-value.d.ts} +2 -2
  81. package/build/queries/{a11yValue.js → accessibility-value.js} +5 -5
  82. package/build/queries/accessibility-value.js.map +1 -0
  83. package/build/queries/{displayValue.d.ts → display-value.d.ts} +1 -1
  84. package/build/queries/{displayValue.js → display-value.js} +3 -3
  85. package/build/queries/display-value.js.map +1 -0
  86. package/build/queries/{hintText.d.ts → hint-text.d.ts} +1 -1
  87. package/build/queries/{hintText.js → hint-text.js} +3 -3
  88. package/build/queries/hint-text.js.map +1 -0
  89. package/build/queries/{labelText.d.ts → label-text.d.ts} +1 -1
  90. package/build/queries/{labelText.js → label-text.js} +4 -4
  91. package/build/queries/label-text.js.map +1 -0
  92. package/build/queries/{makeQueries.d.ts → make-queries.d.ts} +1 -1
  93. package/build/queries/{makeQueries.js → make-queries.js} +2 -2
  94. package/build/queries/make-queries.js.map +1 -0
  95. package/build/queries/{placeholderText.d.ts → placeholder-text.d.ts} +1 -1
  96. package/build/queries/{placeholderText.js → placeholder-text.js} +3 -3
  97. package/build/queries/placeholder-text.js.map +1 -0
  98. package/build/queries/role.d.ts +3 -3
  99. package/build/queries/role.js +7 -7
  100. package/build/queries/role.js.map +1 -1
  101. package/build/queries/{testId.d.ts → test-id.d.ts} +1 -1
  102. package/build/queries/{testId.js → test-id.js} +3 -3
  103. package/build/queries/test-id.js.map +1 -0
  104. package/build/queries/text.d.ts +1 -1
  105. package/build/queries/text.js +3 -3
  106. package/build/queries/text.js.map +1 -1
  107. package/build/queries/{unsafeProps.js → unsafe-props.js} +1 -1
  108. package/build/queries/unsafe-props.js.map +1 -0
  109. package/build/queries/{unsafeType.js → unsafe-type.js} +1 -1
  110. package/build/queries/unsafe-type.js.map +1 -0
  111. package/build/react-versions.js +2 -2
  112. package/build/react-versions.js.map +1 -1
  113. package/build/{renderHook.js → render-hook.js} +1 -1
  114. package/build/render-hook.js.map +1 -0
  115. package/build/render.d.ts +169 -169
  116. package/build/render.js +8 -7
  117. package/build/render.js.map +1 -1
  118. package/build/screen.js +1 -2
  119. package/build/screen.js.map +1 -1
  120. package/build/shallow.js +2 -2
  121. package/build/shallow.js.map +1 -1
  122. package/build/test-utils/events.d.ts +1 -2
  123. package/build/test-utils/events.js.map +1 -1
  124. package/build/user-event/event-builder/common.js +1 -2
  125. package/build/user-event/event-builder/common.js.map +1 -1
  126. package/build/user-event/event-builder/index.d.ts +30 -0
  127. package/build/user-event/event-builder/index.js +3 -2
  128. package/build/user-event/event-builder/index.js.map +1 -1
  129. package/build/user-event/event-builder/scroll-view.d.ts +42 -0
  130. package/build/user-event/event-builder/scroll-view.js +52 -0
  131. package/build/user-event/event-builder/scroll-view.js.map +1 -0
  132. package/build/user-event/event-builder/text-input.js +1 -2
  133. package/build/user-event/event-builder/text-input.js.map +1 -1
  134. package/build/user-event/index.d.ts +2 -0
  135. package/build/user-event/index.js +3 -3
  136. package/build/user-event/index.js.map +1 -1
  137. package/build/user-event/press/constants.js +2 -4
  138. package/build/user-event/press/constants.js.map +1 -1
  139. package/build/user-event/press/press.js +9 -13
  140. package/build/user-event/press/press.js.map +1 -1
  141. package/build/user-event/scroll/index.d.ts +1 -0
  142. package/build/user-event/scroll/index.js +19 -0
  143. package/build/user-event/scroll/index.js.map +1 -0
  144. package/build/user-event/scroll/scroll-to.d.ts +16 -0
  145. package/build/user-event/scroll/scroll-to.js +82 -0
  146. package/build/user-event/scroll/scroll-to.js.map +1 -0
  147. package/build/user-event/scroll/state.d.ts +4 -0
  148. package/build/user-event/scroll/state.js +18 -0
  149. package/build/user-event/scroll/state.js.map +1 -0
  150. package/build/user-event/scroll/utils.d.ts +20 -0
  151. package/build/user-event/scroll/utils.js +68 -0
  152. package/build/user-event/scroll/utils.js.map +1 -0
  153. package/build/user-event/setup/setup.d.ts +8 -0
  154. package/build/user-event/setup/setup.js +34 -6
  155. package/build/user-event/setup/setup.js.map +1 -1
  156. package/build/user-event/type/{parseKeys.js → parse-keys.js} +1 -1
  157. package/build/user-event/type/parse-keys.js.map +1 -0
  158. package/build/user-event/type/type.js +1 -1
  159. package/build/user-event/type/type.js.map +1 -1
  160. package/build/{waitForElementToBeRemoved.d.ts → wait-for-element-to-be-removed.d.ts} +1 -1
  161. package/build/{waitForElementToBeRemoved.js → wait-for-element-to-be-removed.js} +2 -2
  162. package/build/wait-for-element-to-be-removed.js.map +1 -0
  163. package/build/{waitFor.js → wait-for.js} +3 -27
  164. package/build/wait-for.js.map +1 -0
  165. package/build/within.d.ts +84 -84
  166. package/build/within.js +12 -13
  167. package/build/within.js.map +1 -1
  168. package/package.json +22 -19
  169. package/pure.d.ts +1 -0
  170. package/build/fireEvent.js.map +0 -1
  171. package/build/helpers/debugDeep.js.map +0 -1
  172. package/build/helpers/debugShallow.js.map +0 -1
  173. package/build/helpers/findAll.js.map +0 -1
  174. package/build/helpers/matchers/accessibilityState.js.map +0 -1
  175. package/build/helpers/matchers/accessibilityValue.js.map +0 -1
  176. package/build/helpers/matchers/matchArrayProp.js.map +0 -1
  177. package/build/helpers/matchers/matchLabelText.js.map +0 -1
  178. package/build/helpers/matchers/matchObjectProp.js.map +0 -1
  179. package/build/helpers/matchers/matchStringProp.js.map +0 -1
  180. package/build/helpers/matchers/matchTextContent.js.map +0 -1
  181. package/build/helpers/stringValidation.js.map +0 -1
  182. package/build/queries/a11yState.js.map +0 -1
  183. package/build/queries/a11yValue.js.map +0 -1
  184. package/build/queries/displayValue.js.map +0 -1
  185. package/build/queries/hintText.js.map +0 -1
  186. package/build/queries/labelText.js.map +0 -1
  187. package/build/queries/makeQueries.js.map +0 -1
  188. package/build/queries/placeholderText.js.map +0 -1
  189. package/build/queries/testId.js.map +0 -1
  190. package/build/queries/unsafeProps.js.map +0 -1
  191. package/build/queries/unsafeType.js.map +0 -1
  192. package/build/renderHook.js.map +0 -1
  193. package/build/user-event/type/parseKeys.js.map +0 -1
  194. package/build/waitFor.js.map +0 -1
  195. package/build/waitForElementToBeRemoved.js.map +0 -1
  196. /package/build/{fireEvent.d.ts → fire-event.d.ts} +0 -0
  197. /package/build/helpers/{debugDeep.d.ts → debug-deep.d.ts} +0 -0
  198. /package/build/helpers/{debugShallow.d.ts → debug-shallow.d.ts} +0 -0
  199. /package/build/helpers/{findAll.d.ts → find-all.d.ts} +0 -0
  200. /package/build/helpers/matchers/{accessibilityState.d.ts → match-accessibility-state.d.ts} +0 -0
  201. /package/build/helpers/matchers/{accessibilityValue.d.ts → match-accessibility-value.d.ts} +0 -0
  202. /package/build/helpers/matchers/{matchArrayProp.d.ts → match-array-prop.d.ts} +0 -0
  203. /package/build/helpers/matchers/{matchLabelText.d.ts → match-label-text.d.ts} +0 -0
  204. /package/build/helpers/matchers/{matchObjectProp.d.ts → match-object-prop.d.ts} +0 -0
  205. /package/build/helpers/matchers/{matchStringProp.d.ts → match-string-prop.d.ts} +0 -0
  206. /package/build/helpers/matchers/{matchTextContent.d.ts → match-text-content.d.ts} +0 -0
  207. /package/build/helpers/{stringValidation.d.ts → string-validation.d.ts} +0 -0
  208. /package/build/queries/{unsafeProps.d.ts → unsafe-props.d.ts} +0 -0
  209. /package/build/queries/{unsafeType.d.ts → unsafe-type.d.ts} +0 -0
  210. /package/build/{renderHook.d.ts → render-hook.d.ts} +0 -0
  211. /package/build/user-event/type/{parseKeys.d.ts → parse-keys.d.ts} +0 -0
  212. /package/build/{waitFor.d.ts → wait-for.d.ts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"labelText.js","names":["_findAll","require","_matchLabelText","_makeQueries","queryAllByLabelText","instance","text","queryOptions","findAll","node","matchLabelText","getMultipleError","labelText","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","makeQueries","bindByLabelTextQueries","getByLabelText","getAllByLabelText","queryByLabelText","findByLabelText","findAllByLabelText","exports"],"sources":["../../src/queries/labelText.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { findAll } from '../helpers/findAll';\nimport { TextMatch, TextMatchOptions } from '../matches';\nimport { matchLabelText } from '../helpers/matchers/matchLabelText';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\nimport { CommonQueryOptions } from './options';\n\ntype ByLabelTextOptions = CommonQueryOptions & TextMatchOptions;\n\nfunction queryAllByLabelText(instance: ReactTestInstance) {\n return (text: TextMatch, queryOptions?: ByLabelTextOptions) => {\n return findAll(\n instance,\n (node) => matchLabelText(instance, node, text, queryOptions),\n queryOptions\n );\n };\n}\n\nconst getMultipleError = (labelText: TextMatch) =>\n `Found multiple elements with accessibility label: ${String(labelText)} `;\nconst getMissingError = (labelText: TextMatch) =>\n `Unable to find an element with accessibility label: ${String(labelText)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByLabelText,\n getMissingError,\n getMultipleError\n);\n\nexport type ByLabelTextQueries = {\n getByLabelText: GetByQuery<TextMatch, ByLabelTextOptions>;\n getAllByLabelText: GetAllByQuery<TextMatch, ByLabelTextOptions>;\n queryByLabelText: QueryByQuery<TextMatch, ByLabelTextOptions>;\n queryAllByLabelText: QueryAllByQuery<TextMatch, ByLabelTextOptions>;\n findByLabelText: FindByQuery<TextMatch, ByLabelTextOptions>;\n findAllByLabelText: FindAllByQuery<TextMatch, ByLabelTextOptions>;\n};\n\nexport const bindByLabelTextQueries = (\n instance: ReactTestInstance\n): ByLabelTextQueries => ({\n getByLabelText: getBy(instance),\n getAllByLabelText: getAllBy(instance),\n queryByLabelText: queryBy(instance),\n queryAllByLabelText: queryAllBy(instance),\n findByLabelText: findBy(instance),\n findAllByLabelText: findAllBy(instance),\n});\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAEA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAaA,SAASG,mBAAmBA,CAACC,QAA2B,EAAE;EACxD,OAAO,CAACC,IAAe,EAAEC,YAAiC,KAAK;IAC7D,OAAO,IAAAC,gBAAO,EACZH,QAAQ,EACPI,IAAI,IAAK,IAAAC,8BAAc,EAACL,QAAQ,EAAEI,IAAI,EAAEH,IAAI,EAAEC,YAAY,CAAC,EAC5DA,YACF,CAAC;EACH,CAAC;AACH;AAEA,MAAMI,gBAAgB,GAAIC,SAAoB,IAC3C,qDAAoDC,MAAM,CAACD,SAAS,CAAE,GAAE;AAC3E,MAAME,eAAe,GAAIF,SAAoB,IAC1C,uDAAsDC,MAAM,CAACD,SAAS,CAAE,EAAC;AAE5E,MAAM;EAAEG,KAAK;EAAEC,QAAQ;EAAEC,OAAO;EAAEC,UAAU;EAAEC,MAAM;EAAEC;AAAU,CAAC,GAAG,IAAAC,wBAAW,EAC7EjB,mBAAmB,EACnBU,eAAe,EACfH,gBACF,CAAC;AAWM,MAAMW,sBAAsB,GACjCjB,QAA2B,KACH;EACxBkB,cAAc,EAAER,KAAK,CAACV,QAAQ,CAAC;EAC/BmB,iBAAiB,EAAER,QAAQ,CAACX,QAAQ,CAAC;EACrCoB,gBAAgB,EAAER,OAAO,CAACZ,QAAQ,CAAC;EACnCD,mBAAmB,EAAEc,UAAU,CAACb,QAAQ,CAAC;EACzCqB,eAAe,EAAEP,MAAM,CAACd,QAAQ,CAAC;EACjCsB,kBAAkB,EAAEP,SAAS,CAACf,QAAQ;AACxC,CAAC,CAAC;AAACuB,OAAA,CAAAN,sBAAA,GAAAA,sBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"makeQueries.js","names":["_errors","require","_waitFor","_interopRequireDefault","_format","_screen","_formatDefault","obj","__esModule","default","deprecatedKeys","extractDeprecatedWaitForOptions","options","undefined","waitForOptions","timeout","interval","stackTraceError","forEach","key","option","console","warn","toString","formatErrorMessage","message","printElementTree","json","screen","toJSON","format","mapProps","defaultMapProps","appendElementTreeToError","error","oldMessage","stack","replace","makeQueries","queryAllByQuery","getMissingError","getMultipleError","getAllByQuery","instance","getAllFn","predicate","results","length","errorMessage","ErrorWithStack","queryByQuery","singleQueryFn","getByQuery","getFn","findAllByQuery","findAllFn","queryOptions","onTimeout","deprecatedWaitForOptions","waitFor","findByQuery","findFn","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy"],"sources":["../../src/queries/makeQueries.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { ErrorWithStack } from '../helpers/errors';\nimport waitFor from '../waitFor';\nimport type { WaitForOptions } from '../waitFor';\nimport format from '../helpers/format';\nimport { screen } from '../screen';\nimport { defaultMapProps } from '../helpers/format-default';\n\nexport type GetByQuery<Predicate, Options = void> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance;\n\nexport type GetAllByQuery<Predicate, Options = void> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance[];\n\nexport type QueryByQuery<Predicate, Options = void> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance | null;\n\nexport type QueryAllByQuery<Predicate, Options = void> = (\n predicate: Predicate,\n options?: Options\n) => ReactTestInstance[];\n\nexport type FindByQuery<Predicate, Options = void> = (\n predicate: Predicate,\n // Remove `& WaitForOptions` when all queries have been migrated to support 2nd arg query options.\n options?: Options & WaitForOptions,\n waitForOptions?: WaitForOptions\n) => Promise<ReactTestInstance>;\n\nexport type FindAllByQuery<Predicate, Options = void> = (\n predicate: Predicate,\n // Remove `& WaitForOptions` when all queries have been migrated to support 2nd arg query options.\n options?: Options & WaitForOptions,\n waitForOptions?: WaitForOptions\n) => Promise<ReactTestInstance[]>;\n\ntype UnboundQuery<Query> = (instance: ReactTestInstance) => Query;\n\nexport type UnboundQueries<Predicate, Options> = {\n getBy: UnboundQuery<GetByQuery<Predicate, Options>>;\n getAllBy: UnboundQuery<GetAllByQuery<Predicate, Options>>;\n queryBy: UnboundQuery<QueryByQuery<Predicate, Options>>;\n queryAllBy: UnboundQuery<QueryAllByQuery<Predicate, Options>>;\n findBy: UnboundQuery<FindByQuery<Predicate, Options>>;\n findAllBy: UnboundQuery<FindAllByQuery<Predicate, Options>>;\n};\n\nconst deprecatedKeys: (keyof WaitForOptions)[] = [\n 'timeout',\n 'interval',\n 'stackTraceError',\n];\n\n// The WaitForOptions has been moved to the second option param of findBy* methods with the adding of TextMatchOptions\n// To make the migration easier and avoid a breaking change, keep reading this options from the first param but warn\nfunction extractDeprecatedWaitForOptions(options?: WaitForOptions) {\n if (!options) {\n return undefined;\n }\n\n const waitForOptions: WaitForOptions = {\n timeout: options.timeout,\n interval: options.interval,\n stackTraceError: options.stackTraceError,\n };\n\n deprecatedKeys.forEach((key) => {\n const option = options[key];\n if (option) {\n // eslint-disable-next-line no-console\n console.warn(\n `Use of option \"${key}\" in a findBy* query options (2nd parameter) is deprecated. Please pass this option in the waitForOptions (3rd parameter).\nExample:\n\n findByText(text, {}, { ${key}: ${option.toString()} })`\n );\n }\n });\n\n return waitForOptions;\n}\n\nfunction formatErrorMessage(message: string, printElementTree: boolean) {\n if (!printElementTree) {\n return message;\n }\n\n const json = screen.toJSON();\n if (!json) {\n return message;\n }\n\n return `${message}\\n\\n${format(json, {\n mapProps: defaultMapProps,\n })}`;\n}\n\nfunction appendElementTreeToError(error: Error) {\n const oldMessage = error.message;\n error.message = formatErrorMessage(oldMessage, true);\n\n // Required to make Jest print the element tree on error\n error.stack = error.stack?.replace(oldMessage, error.message);\n\n return error;\n}\n\nexport function makeQueries<Predicate, Options>(\n queryAllByQuery: UnboundQuery<QueryAllByQuery<Predicate, Options>>,\n getMissingError: (predicate: Predicate, options?: Options) => string,\n getMultipleError: (predicate: Predicate, options?: Options) => string\n): UnboundQueries<Predicate, Options> {\n function getAllByQuery(\n instance: ReactTestInstance,\n { printElementTree = true } = {}\n ) {\n return function getAllFn(predicate: Predicate, options?: Options) {\n const results = queryAllByQuery(instance)(predicate, options);\n\n if (results.length === 0) {\n const errorMessage = formatErrorMessage(\n getMissingError(predicate, options),\n printElementTree\n );\n throw new ErrorWithStack(errorMessage, getAllFn);\n }\n\n return results;\n };\n }\n\n function queryByQuery(\n instance: ReactTestInstance,\n { printElementTree = true } = {}\n ) {\n return function singleQueryFn(predicate: Predicate, options?: Options) {\n const results = queryAllByQuery(instance)(predicate, options);\n\n if (results.length > 1) {\n throw new ErrorWithStack(\n formatErrorMessage(\n getMultipleError(predicate, options),\n printElementTree\n ),\n singleQueryFn\n );\n }\n\n if (results.length === 0) {\n return null;\n }\n\n return results[0];\n };\n }\n\n function getByQuery(\n instance: ReactTestInstance,\n { printElementTree = true } = {}\n ) {\n return function getFn(predicate: Predicate, options?: Options) {\n const results = queryAllByQuery(instance)(predicate, options);\n\n if (results.length > 1) {\n throw new ErrorWithStack(getMultipleError(predicate, options), getFn);\n }\n\n if (results.length === 0) {\n const errorMessage = formatErrorMessage(\n getMissingError(predicate, options),\n printElementTree\n );\n throw new ErrorWithStack(errorMessage, getFn);\n }\n\n return results[0];\n };\n }\n\n function findAllByQuery(instance: ReactTestInstance) {\n return function findAllFn(\n predicate: Predicate,\n queryOptions?: Options & WaitForOptions,\n {\n onTimeout = (error) => appendElementTreeToError(error),\n ...waitForOptions\n }: WaitForOptions = {}\n ) {\n const stackTraceError = new ErrorWithStack(\n 'STACK_TRACE_ERROR',\n findAllFn\n );\n const deprecatedWaitForOptions =\n extractDeprecatedWaitForOptions(queryOptions);\n\n return waitFor(\n () =>\n getAllByQuery(instance, { printElementTree: false })(\n predicate,\n queryOptions\n ),\n {\n ...deprecatedWaitForOptions,\n ...waitForOptions,\n stackTraceError,\n onTimeout,\n }\n );\n };\n }\n\n function findByQuery(instance: ReactTestInstance) {\n return function findFn(\n predicate: Predicate,\n queryOptions?: Options & WaitForOptions,\n {\n onTimeout = (error) => appendElementTreeToError(error),\n ...waitForOptions\n }: WaitForOptions = {}\n ) {\n const stackTraceError = new ErrorWithStack('STACK_TRACE_ERROR', findFn);\n const deprecatedWaitForOptions =\n extractDeprecatedWaitForOptions(queryOptions);\n\n return waitFor(\n () =>\n getByQuery(instance, { printElementTree: false })(\n predicate,\n queryOptions\n ),\n {\n ...deprecatedWaitForOptions,\n ...waitForOptions,\n stackTraceError,\n onTimeout,\n }\n );\n };\n }\n\n return {\n getBy: getByQuery,\n getAllBy: getAllByQuery,\n queryBy: queryByQuery,\n queryAllBy: queryAllByQuery,\n findBy: findByQuery,\n findAllBy: findAllByQuery,\n };\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"placeholderText.js","names":["_findAll","require","_matches","_hostComponentNames","_makeQueries","matchPlaceholderText","node","placeholder","options","exact","normalizer","matches","props","queryAllByPlaceholderText","instance","queryAllByPlaceholderFn","queryOptions","findAll","isHostTextInput","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","makeQueries","bindByPlaceholderTextQueries","getByPlaceholderText","getAllByPlaceholderText","queryByPlaceholderText","findByPlaceholderText","findAllByPlaceholderText","exports"],"sources":["../../src/queries/placeholderText.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { findAll } from '../helpers/findAll';\nimport { matches, TextMatch, TextMatchOptions } from '../matches';\nimport { isHostTextInput } from '../helpers/host-component-names';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\nimport type { CommonQueryOptions } from './options';\n\ntype ByPlaceholderTextOptions = CommonQueryOptions & TextMatchOptions;\n\nconst matchPlaceholderText = (\n node: ReactTestInstance,\n placeholder: TextMatch,\n options: TextMatchOptions = {}\n) => {\n const { exact, normalizer } = options;\n return matches(placeholder, node.props.placeholder, normalizer, exact);\n};\n\nconst queryAllByPlaceholderText = (\n instance: ReactTestInstance\n): QueryAllByQuery<TextMatch, ByPlaceholderTextOptions> =>\n function queryAllByPlaceholderFn(placeholder, queryOptions) {\n return findAll(\n instance,\n (node) =>\n isHostTextInput(node) &&\n matchPlaceholderText(node, placeholder, queryOptions),\n queryOptions\n );\n };\n\nconst getMultipleError = (placeholder: TextMatch) =>\n `Found multiple elements with placeholder: ${String(placeholder)} `;\nconst getMissingError = (placeholder: TextMatch) =>\n `Unable to find an element with placeholder: ${String(placeholder)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByPlaceholderText,\n getMissingError,\n getMultipleError\n);\n\nexport type ByPlaceholderTextQueries = {\n getByPlaceholderText: GetByQuery<TextMatch, ByPlaceholderTextOptions>;\n getAllByPlaceholderText: GetAllByQuery<TextMatch, ByPlaceholderTextOptions>;\n queryByPlaceholderText: QueryByQuery<TextMatch, ByPlaceholderTextOptions>;\n queryAllByPlaceholderText: QueryAllByQuery<\n TextMatch,\n ByPlaceholderTextOptions\n >;\n findByPlaceholderText: FindByQuery<TextMatch, ByPlaceholderTextOptions>;\n findAllByPlaceholderText: FindAllByQuery<TextMatch, ByPlaceholderTextOptions>;\n};\n\nexport const bindByPlaceholderTextQueries = (\n instance: ReactTestInstance\n): ByPlaceholderTextQueries => ({\n getByPlaceholderText: getBy(instance),\n getAllByPlaceholderText: getAllBy(instance),\n queryByPlaceholderText: queryBy(instance),\n queryAllByPlaceholderText: queryAllBy(instance),\n findByPlaceholderText: findBy(instance),\n findAllByPlaceholderText: findAllBy(instance),\n});\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAaA,MAAMI,oBAAoB,GAAGA,CAC3BC,IAAuB,EACvBC,WAAsB,EACtBC,OAAyB,GAAG,CAAC,CAAC,KAC3B;EACH,MAAM;IAAEC,KAAK;IAAEC;EAAW,CAAC,GAAGF,OAAO;EACrC,OAAO,IAAAG,gBAAO,EAACJ,WAAW,EAAED,IAAI,CAACM,KAAK,CAACL,WAAW,EAAEG,UAAU,EAAED,KAAK,CAAC;AACxE,CAAC;AAED,MAAMI,yBAAyB,GAC7BC,QAA2B,IAE3B,SAASC,uBAAuBA,CAACR,WAAW,EAAES,YAAY,EAAE;EAC1D,OAAO,IAAAC,gBAAO,EACZH,QAAQ,EACPR,IAAI,IACH,IAAAY,mCAAe,EAACZ,IAAI,CAAC,IACrBD,oBAAoB,CAACC,IAAI,EAAEC,WAAW,EAAES,YAAY,CAAC,EACvDA,YACF,CAAC;AACH,CAAC;AAEH,MAAMG,gBAAgB,GAAIZ,WAAsB,IAC7C,6CAA4Ca,MAAM,CAACb,WAAW,CAAE,GAAE;AACrE,MAAMc,eAAe,GAAId,WAAsB,IAC5C,+CAA8Ca,MAAM,CAACb,WAAW,CAAE,EAAC;AAEtE,MAAM;EAAEe,KAAK;EAAEC,QAAQ;EAAEC,OAAO;EAAEC,UAAU;EAAEC,MAAM;EAAEC;AAAU,CAAC,GAAG,IAAAC,wBAAW,EAC7Ef,yBAAyB,EACzBQ,eAAe,EACfF,gBACF,CAAC;AAcM,MAAMU,4BAA4B,GACvCf,QAA2B,KACG;EAC9BgB,oBAAoB,EAAER,KAAK,CAACR,QAAQ,CAAC;EACrCiB,uBAAuB,EAAER,QAAQ,CAACT,QAAQ,CAAC;EAC3CkB,sBAAsB,EAAER,OAAO,CAACV,QAAQ,CAAC;EACzCD,yBAAyB,EAAEY,UAAU,CAACX,QAAQ,CAAC;EAC/CmB,qBAAqB,EAAEP,MAAM,CAACZ,QAAQ,CAAC;EACvCoB,wBAAwB,EAAEP,SAAS,CAACb,QAAQ;AAC9C,CAAC,CAAC;AAACqB,OAAA,CAAAN,4BAAA,GAAAA,4BAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"testId.js","names":["_findAll","require","_matches","_makeQueries","matchTestId","node","testId","options","exact","normalizer","matches","props","testID","queryAllByTestId","instance","queryAllByTestIdFn","queryOptions","findAll","getMultipleError","String","getMissingError","getBy","getAllBy","queryBy","queryAllBy","findBy","findAllBy","makeQueries","bindByTestIdQueries","getByTestId","getAllByTestId","queryByTestId","findByTestId","findAllByTestId","exports"],"sources":["../../src/queries/testId.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport { findAll } from '../helpers/findAll';\nimport { matches, TextMatch, TextMatchOptions } from '../matches';\nimport { makeQueries } from './makeQueries';\nimport type {\n FindAllByQuery,\n FindByQuery,\n GetAllByQuery,\n GetByQuery,\n QueryAllByQuery,\n QueryByQuery,\n} from './makeQueries';\nimport type { CommonQueryOptions } from './options';\n\ntype ByTestIdOptions = CommonQueryOptions & TextMatchOptions;\n\nconst matchTestId = (\n node: ReactTestInstance,\n testId: TextMatch,\n options: TextMatchOptions = {}\n) => {\n const { exact, normalizer } = options;\n return matches(testId, node.props.testID, normalizer, exact);\n};\n\nconst queryAllByTestId = (\n instance: ReactTestInstance\n): QueryAllByQuery<TextMatch, ByTestIdOptions> =>\n function queryAllByTestIdFn(testId, queryOptions) {\n return findAll(\n instance,\n (node) => matchTestId(node, testId, queryOptions),\n queryOptions\n );\n };\n\nconst getMultipleError = (testId: TextMatch) =>\n `Found multiple elements with testID: ${String(testId)}`;\nconst getMissingError = (testId: TextMatch) =>\n `Unable to find an element with testID: ${String(testId)}`;\n\nconst { getBy, getAllBy, queryBy, queryAllBy, findBy, findAllBy } = makeQueries(\n queryAllByTestId,\n getMissingError,\n getMultipleError\n);\n\nexport type ByTestIdQueries = {\n getByTestId: GetByQuery<TextMatch, ByTestIdOptions>;\n getAllByTestId: GetAllByQuery<TextMatch, ByTestIdOptions>;\n queryByTestId: QueryByQuery<TextMatch, ByTestIdOptions>;\n queryAllByTestId: QueryAllByQuery<TextMatch, ByTestIdOptions>;\n findByTestId: FindByQuery<TextMatch, ByTestIdOptions>;\n findAllByTestId: FindAllByQuery<TextMatch, ByTestIdOptions>;\n};\n\nexport const bindByTestIdQueries = (\n instance: ReactTestInstance\n): ByTestIdQueries => ({\n getByTestId: getBy(instance),\n getAllByTestId: getAllBy(instance),\n queryByTestId: queryBy(instance),\n queryAllByTestId: queryAllBy(instance),\n findByTestId: findBy(instance),\n findAllByTestId: findAllBy(instance),\n});\n"],"mappings":";;;;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAaA,MAAMG,WAAW,GAAGA,CAClBC,IAAuB,EACvBC,MAAiB,EACjBC,OAAyB,GAAG,CAAC,CAAC,KAC3B;EACH,MAAM;IAAEC,KAAK;IAAEC;EAAW,CAAC,GAAGF,OAAO;EACrC,OAAO,IAAAG,gBAAO,EAACJ,MAAM,EAAED,IAAI,CAACM,KAAK,CAACC,MAAM,EAAEH,UAAU,EAAED,KAAK,CAAC;AAC9D,CAAC;AAED,MAAMK,gBAAgB,GACpBC,QAA2B,IAE3B,SAASC,kBAAkBA,CAACT,MAAM,EAAEU,YAAY,EAAE;EAChD,OAAO,IAAAC,gBAAO,EACZH,QAAQ,EACPT,IAAI,IAAKD,WAAW,CAACC,IAAI,EAAEC,MAAM,EAAEU,YAAY,CAAC,EACjDA,YACF,CAAC;AACH,CAAC;AAEH,MAAME,gBAAgB,GAAIZ,MAAiB,IACxC,wCAAuCa,MAAM,CAACb,MAAM,CAAE,EAAC;AAC1D,MAAMc,eAAe,GAAId,MAAiB,IACvC,0CAAyCa,MAAM,CAACb,MAAM,CAAE,EAAC;AAE5D,MAAM;EAAEe,KAAK;EAAEC,QAAQ;EAAEC,OAAO;EAAEC,UAAU;EAAEC,MAAM;EAAEC;AAAU,CAAC,GAAG,IAAAC,wBAAW,EAC7Ed,gBAAgB,EAChBO,eAAe,EACfF,gBACF,CAAC;AAWM,MAAMU,mBAAmB,GAC9Bd,QAA2B,KACN;EACrBe,WAAW,EAAER,KAAK,CAACP,QAAQ,CAAC;EAC5BgB,cAAc,EAAER,QAAQ,CAACR,QAAQ,CAAC;EAClCiB,aAAa,EAAER,OAAO,CAACT,QAAQ,CAAC;EAChCD,gBAAgB,EAAEW,UAAU,CAACV,QAAQ,CAAC;EACtCkB,YAAY,EAAEP,MAAM,CAACX,QAAQ,CAAC;EAC9BmB,eAAe,EAAEP,SAAS,CAACZ,QAAQ;AACrC,CAAC,CAAC;AAACoB,OAAA,CAAAN,mBAAA,GAAAA,mBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"unsafeProps.js","names":["_prettyFormat","_interopRequireDefault","require","_errors","obj","__esModule","default","UNSAFE_getByProps","instance","getByPropsFn","props","findByProps","error","ErrorWithStack","prepareErrorMessage","UNSAFE_getAllByProps","getAllByPropsFn","results","findAllByProps","length","prettyFormat","UNSAFE_queryByProps","queryByPropsFn","createQueryByError","UNSAFE_queryAllByProps","bindUnsafeByPropsQueries","exports"],"sources":["../../src/queries/unsafeProps.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport prettyFormat from 'pretty-format';\nimport { ErrorWithStack, prepareErrorMessage } from '../helpers/errors';\nimport { createQueryByError } from '../helpers/errors';\n\nconst UNSAFE_getByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => ReactTestInstance) =>\n function getByPropsFn(props: { [propName: string]: any }) {\n try {\n return instance.findByProps(props);\n } catch (error) {\n throw new ErrorWithStack(prepareErrorMessage(error), getByPropsFn);\n }\n };\n\nconst UNSAFE_getAllByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => Array<ReactTestInstance>) =>\n function getAllByPropsFn(props: { [propName: string]: any }) {\n const results = instance.findAllByProps(props);\n if (results.length === 0) {\n throw new ErrorWithStack(\n `No instances found with props:\\n${prettyFormat(props)}`,\n getAllByPropsFn\n );\n }\n return results;\n };\n\nconst UNSAFE_queryByProps = (\n instance: ReactTestInstance\n): ((props: { [propName: string]: any }) => ReactTestInstance | null) =>\n function queryByPropsFn(props: { [propName: string]: any }) {\n try {\n return UNSAFE_getByProps(instance)(props);\n } catch (error) {\n return createQueryByError(error, queryByPropsFn);\n }\n };\n\nconst UNSAFE_queryAllByProps =\n (\n instance: ReactTestInstance\n ): ((props: { [propName: string]: any }) => Array<ReactTestInstance>) =>\n (props: { [propName: string]: any }) => {\n try {\n return UNSAFE_getAllByProps(instance)(props);\n } catch (error) {\n return [];\n }\n };\n\n// Unsafe aliases\nexport type UnsafeByPropsQueries = {\n UNSAFE_getByProps: (props: { [key: string]: any }) => ReactTestInstance;\n UNSAFE_getAllByProps: (props: {\n [key: string]: any;\n }) => Array<ReactTestInstance>;\n UNSAFE_queryByProps: (props: {\n [key: string]: any;\n }) => ReactTestInstance | null;\n UNSAFE_queryAllByProps: (props: {\n [key: string]: any;\n }) => Array<ReactTestInstance>;\n};\n\n// TODO: migrate to makeQueries pattern\nexport const bindUnsafeByPropsQueries = (\n instance: ReactTestInstance\n): UnsafeByPropsQueries => ({\n UNSAFE_getByProps: UNSAFE_getByProps(instance),\n UNSAFE_getAllByProps: UNSAFE_getAllByProps(instance),\n UNSAFE_queryByProps: UNSAFE_queryByProps(instance),\n UNSAFE_queryAllByProps: UNSAFE_queryAllByProps(instance),\n});\n"],"mappings":";;;;;;AACA,IAAAA,aAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAAwE,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAGxE,MAAMG,iBAAiB,GACrBC,QAA2B,IAE3B,SAASC,YAAYA,CAACC,KAAkC,EAAE;EACxD,IAAI;IACF,OAAOF,QAAQ,CAACG,WAAW,CAACD,KAAK,CAAC;EACpC,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,MAAM,IAAIC,sBAAc,CAAC,IAAAC,2BAAmB,EAACF,KAAK,CAAC,EAAEH,YAAY,CAAC;EACpE;AACF,CAAC;AAEH,MAAMM,oBAAoB,GACxBP,QAA2B,IAE3B,SAASQ,eAAeA,CAACN,KAAkC,EAAE;EAC3D,MAAMO,OAAO,GAAGT,QAAQ,CAACU,cAAc,CAACR,KAAK,CAAC;EAC9C,IAAIO,OAAO,CAACE,MAAM,KAAK,CAAC,EAAE;IACxB,MAAM,IAAIN,sBAAc,CACrB,mCAAkC,IAAAO,qBAAY,EAACV,KAAK,CAAE,EAAC,EACxDM,eACF,CAAC;EACH;EACA,OAAOC,OAAO;AAChB,CAAC;AAEH,MAAMI,mBAAmB,GACvBb,QAA2B,IAE3B,SAASc,cAAcA,CAACZ,KAAkC,EAAE;EAC1D,IAAI;IACF,OAAOH,iBAAiB,CAACC,QAAQ,CAAC,CAACE,KAAK,CAAC;EAC3C,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,IAAAW,0BAAkB,EAACX,KAAK,EAAEU,cAAc,CAAC;EAClD;AACF,CAAC;AAEH,MAAME,sBAAsB,GAExBhB,QAA2B,IAE5BE,KAAkC,IAAK;EACtC,IAAI;IACF,OAAOK,oBAAoB,CAACP,QAAQ,CAAC,CAACE,KAAK,CAAC;EAC9C,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,EAAE;EACX;AACF,CAAC;;AAEH;;AAcA;AACO,MAAMa,wBAAwB,GACnCjB,QAA2B,KACD;EAC1BD,iBAAiB,EAAEA,iBAAiB,CAACC,QAAQ,CAAC;EAC9CO,oBAAoB,EAAEA,oBAAoB,CAACP,QAAQ,CAAC;EACpDa,mBAAmB,EAAEA,mBAAmB,CAACb,QAAQ,CAAC;EAClDgB,sBAAsB,EAAEA,sBAAsB,CAAChB,QAAQ;AACzD,CAAC,CAAC;AAACkB,OAAA,CAAAD,wBAAA,GAAAA,wBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"unsafeType.js","names":["_errors","require","UNSAFE_getByType","instance","getByTypeFn","type","findByType","error","ErrorWithStack","prepareErrorMessage","UNSAFE_getAllByType","getAllByTypeFn","results","findAllByType","length","UNSAFE_queryByType","queryByTypeFn","createQueryByError","UNSAFE_queryAllByType","bindUnsafeByTypeQueries","exports"],"sources":["../../src/queries/unsafeType.ts"],"sourcesContent":["import type { ReactTestInstance } from 'react-test-renderer';\nimport * as React from 'react';\nimport { ErrorWithStack, prepareErrorMessage } from '../helpers/errors';\nimport { createQueryByError } from '../helpers/errors';\n\nconst UNSAFE_getByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => ReactTestInstance) =>\n function getByTypeFn(type: React.ComponentType<any>) {\n try {\n return instance.findByType(type);\n } catch (error) {\n throw new ErrorWithStack(prepareErrorMessage(error), getByTypeFn);\n }\n };\n\nconst UNSAFE_getAllByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => Array<ReactTestInstance>) =>\n function getAllByTypeFn(type: React.ComponentType<any>) {\n const results = instance.findAllByType(type);\n if (results.length === 0) {\n throw new ErrorWithStack('No instances found', getAllByTypeFn);\n }\n return results;\n };\n\nconst UNSAFE_queryByType = (\n instance: ReactTestInstance\n): ((type: React.ComponentType<any>) => ReactTestInstance | null) =>\n function queryByTypeFn(type: React.ComponentType<any>) {\n try {\n return UNSAFE_getByType(instance)(type);\n } catch (error) {\n return createQueryByError(error, queryByTypeFn);\n }\n };\n\nconst UNSAFE_queryAllByType =\n (\n instance: ReactTestInstance\n ): ((type: React.ComponentType<any>) => Array<ReactTestInstance>) =>\n (type: React.ComponentType<any>) => {\n try {\n return UNSAFE_getAllByType(instance)(type);\n } catch (error) {\n return [];\n }\n };\n\n// Unsafe aliases\nexport type UnsafeByTypeQueries = {\n UNSAFE_getByType: <P>(type: React.ComponentType<P>) => ReactTestInstance;\n UNSAFE_getAllByType: <P>(\n type: React.ComponentType<P>\n ) => Array<ReactTestInstance>;\n UNSAFE_queryByType: <P>(\n type: React.ComponentType<P>\n ) => ReactTestInstance | null;\n UNSAFE_queryAllByType: <P>(\n type: React.ComponentType<P>\n ) => Array<ReactTestInstance>;\n};\n\n// TODO: migrate to makeQueries pattern\nexport const bindUnsafeByTypeQueries = (\n instance: ReactTestInstance\n): UnsafeByTypeQueries => ({\n UNSAFE_getByType: UNSAFE_getByType(instance),\n UNSAFE_getAllByType: UNSAFE_getAllByType(instance),\n UNSAFE_queryByType: UNSAFE_queryByType(instance),\n UNSAFE_queryAllByType: UNSAFE_queryAllByType(instance),\n});\n"],"mappings":";;;;;;AAEA,IAAAA,OAAA,GAAAC,OAAA;AAGA,MAAMC,gBAAgB,GACpBC,QAA2B,IAE3B,SAASC,WAAWA,CAACC,IAA8B,EAAE;EACnD,IAAI;IACF,OAAOF,QAAQ,CAACG,UAAU,CAACD,IAAI,CAAC;EAClC,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,MAAM,IAAIC,sBAAc,CAAC,IAAAC,2BAAmB,EAACF,KAAK,CAAC,EAAEH,WAAW,CAAC;EACnE;AACF,CAAC;AAEH,MAAMM,mBAAmB,GACvBP,QAA2B,IAE3B,SAASQ,cAAcA,CAACN,IAA8B,EAAE;EACtD,MAAMO,OAAO,GAAGT,QAAQ,CAACU,aAAa,CAACR,IAAI,CAAC;EAC5C,IAAIO,OAAO,CAACE,MAAM,KAAK,CAAC,EAAE;IACxB,MAAM,IAAIN,sBAAc,CAAC,oBAAoB,EAAEG,cAAc,CAAC;EAChE;EACA,OAAOC,OAAO;AAChB,CAAC;AAEH,MAAMG,kBAAkB,GACtBZ,QAA2B,IAE3B,SAASa,aAAaA,CAACX,IAA8B,EAAE;EACrD,IAAI;IACF,OAAOH,gBAAgB,CAACC,QAAQ,CAAC,CAACE,IAAI,CAAC;EACzC,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,IAAAU,0BAAkB,EAACV,KAAK,EAAES,aAAa,CAAC;EACjD;AACF,CAAC;AAEH,MAAME,qBAAqB,GAEvBf,QAA2B,IAE5BE,IAA8B,IAAK;EAClC,IAAI;IACF,OAAOK,mBAAmB,CAACP,QAAQ,CAAC,CAACE,IAAI,CAAC;EAC5C,CAAC,CAAC,OAAOE,KAAK,EAAE;IACd,OAAO,EAAE;EACX;AACF,CAAC;;AAEH;;AAcA;AACO,MAAMY,uBAAuB,GAClChB,QAA2B,KACF;EACzBD,gBAAgB,EAAEA,gBAAgB,CAACC,QAAQ,CAAC;EAC5CO,mBAAmB,EAAEA,mBAAmB,CAACP,QAAQ,CAAC;EAClDY,kBAAkB,EAAEA,kBAAkB,CAACZ,QAAQ,CAAC;EAChDe,qBAAqB,EAAEA,qBAAqB,CAACf,QAAQ;AACvD,CAAC,CAAC;AAACiB,OAAA,CAAAD,uBAAA,GAAAA,uBAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"renderHook.js","names":["_react","_interopRequireDefault","require","_render","obj","__esModule","default","renderHook","renderCallback","options","initialProps","wrapper","result","React","createRef","TestComponent","renderCallbackProps","renderResult","useEffect","current","rerender","baseRerender","unmount","renderInternal","createElement","detectHostComponentNames","rerenderCallbackProps"],"sources":["../src/renderHook.tsx"],"sourcesContent":["import React from 'react';\nimport type { ComponentType } from 'react';\nimport { renderInternal } from './render';\n\nexport type RenderHookResult<Result, Props> = {\n rerender: (props: Props) => void;\n result: { current: Result };\n unmount: () => void;\n};\n\nexport type RenderHookOptions<Props> = {\n initialProps?: Props;\n wrapper?: ComponentType<any>;\n};\n\nexport function renderHook<Result, Props>(\n renderCallback: (props: Props) => Result,\n options?: RenderHookOptions<Props>\n): RenderHookResult<Result, Props> {\n const initialProps = options?.initialProps;\n const wrapper = options?.wrapper;\n\n const result: React.MutableRefObject<Result | null> = React.createRef();\n\n function TestComponent({\n renderCallbackProps,\n }: {\n renderCallbackProps: Props;\n }) {\n const renderResult = renderCallback(renderCallbackProps);\n\n React.useEffect(() => {\n result.current = renderResult;\n });\n\n return null;\n }\n\n const { rerender: baseRerender, unmount } = renderInternal(\n // @ts-expect-error since option can be undefined, initialProps can be undefined when it should'nt\n <TestComponent renderCallbackProps={initialProps} />,\n {\n wrapper,\n detectHostComponentNames: false,\n }\n );\n\n function rerender(rerenderCallbackProps: Props) {\n return baseRerender(\n <TestComponent renderCallbackProps={rerenderCallbackProps} />\n );\n }\n\n // @ts-expect-error result is ill typed because ref is initialized to null\n return { result, rerender, unmount };\n}\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAA0C,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAanC,SAASG,UAAUA,CACxBC,cAAwC,EACxCC,OAAkC,EACD;EACjC,MAAMC,YAAY,GAAGD,OAAO,EAAEC,YAAY;EAC1C,MAAMC,OAAO,GAAGF,OAAO,EAAEE,OAAO;EAEhC,MAAMC,MAA6C,gBAAGC,cAAK,CAACC,SAAS,CAAC,CAAC;EAEvE,SAASC,aAAaA,CAAC;IACrBC;EAGF,CAAC,EAAE;IACD,MAAMC,YAAY,GAAGT,cAAc,CAACQ,mBAAmB,CAAC;IAExDH,cAAK,CAACK,SAAS,CAAC,MAAM;MACpBN,MAAM,CAACO,OAAO,GAAGF,YAAY;IAC/B,CAAC,CAAC;IAEF,OAAO,IAAI;EACb;EAEA,MAAM;IAAEG,QAAQ,EAAEC,YAAY;IAAEC;EAAQ,CAAC,GAAG,IAAAC,sBAAc;EAAA;EACxD;EACAvB,MAAA,CAAAM,OAAA,CAAAkB,aAAA,CAACT,aAAa;IAACC,mBAAmB,EAAEN;EAAa,CAAE,CAAC,EACpD;IACEC,OAAO;IACPc,wBAAwB,EAAE;EAC5B,CACF,CAAC;EAED,SAASL,QAAQA,CAACM,qBAA4B,EAAE;IAC9C,OAAOL,YAAY,eACjBrB,MAAA,CAAAM,OAAA,CAAAkB,aAAA,CAACT,aAAa;MAACC,mBAAmB,EAAEU;IAAsB,CAAE,CAC9D,CAAC;EACH;;EAEA;EACA,OAAO;IAAEd,MAAM;IAAEQ,QAAQ;IAAEE;EAAQ,CAAC;AACtC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseKeys.js","names":["knownKeys","Set","parseKeys","text","result","remainingText","token","rest","getNextToken","length","has","Error","push","slice","endIndex","indexOf"],"sources":["../../../src/user-event/type/parseKeys.ts"],"sourcesContent":["const knownKeys = new Set(['Enter', 'Backspace']);\n\nexport function parseKeys(text: string) {\n const result = [];\n\n let remainingText = text;\n while (remainingText) {\n const [token, rest] = getNextToken(remainingText);\n if (token.length > 1 && !knownKeys.has(token)) {\n throw new Error(`Unknown key \"${token}\" in \"${text}\"`);\n }\n\n result.push(token);\n remainingText = rest;\n }\n\n return result;\n}\n\nfunction getNextToken(text: string): [string, string] {\n // Detect `{{` => escaped `{`\n if (text[0] === '{' && text[1] === '{') {\n return ['{', text.slice(2)];\n }\n\n // Detect `{key}` => special key\n if (text[0] === '{') {\n const endIndex = text.indexOf('}');\n if (endIndex === -1) {\n throw new Error(`Invalid key sequence \"${text}\"`);\n }\n\n return [text.slice(1, endIndex), text.slice(endIndex + 1)];\n }\n\n if (text[0] === '\\n') {\n return ['Enter', text.slice(1)];\n }\n\n return [text[0], text.slice(1)];\n}\n"],"mappings":";;;;;;AAAA,MAAMA,SAAS,GAAG,IAAIC,GAAG,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AAE1C,SAASC,SAASA,CAACC,IAAY,EAAE;EACtC,MAAMC,MAAM,GAAG,EAAE;EAEjB,IAAIC,aAAa,GAAGF,IAAI;EACxB,OAAOE,aAAa,EAAE;IACpB,MAAM,CAACC,KAAK,EAAEC,IAAI,CAAC,GAAGC,YAAY,CAACH,aAAa,CAAC;IACjD,IAAIC,KAAK,CAACG,MAAM,GAAG,CAAC,IAAI,CAACT,SAAS,CAACU,GAAG,CAACJ,KAAK,CAAC,EAAE;MAC7C,MAAM,IAAIK,KAAK,CAAE,gBAAeL,KAAM,SAAQH,IAAK,GAAE,CAAC;IACxD;IAEAC,MAAM,CAACQ,IAAI,CAACN,KAAK,CAAC;IAClBD,aAAa,GAAGE,IAAI;EACtB;EAEA,OAAOH,MAAM;AACf;AAEA,SAASI,YAAYA,CAACL,IAAY,EAAoB;EACpD;EACA,IAAIA,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAIA,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;IACtC,OAAO,CAAC,GAAG,EAAEA,IAAI,CAACU,KAAK,CAAC,CAAC,CAAC,CAAC;EAC7B;;EAEA;EACA,IAAIV,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;IACnB,MAAMW,QAAQ,GAAGX,IAAI,CAACY,OAAO,CAAC,GAAG,CAAC;IAClC,IAAID,QAAQ,KAAK,CAAC,CAAC,EAAE;MACnB,MAAM,IAAIH,KAAK,CAAE,yBAAwBR,IAAK,GAAE,CAAC;IACnD;IAEA,OAAO,CAACA,IAAI,CAACU,KAAK,CAAC,CAAC,EAAEC,QAAQ,CAAC,EAAEX,IAAI,CAACU,KAAK,CAACC,QAAQ,GAAG,CAAC,CAAC,CAAC;EAC5D;EAEA,IAAIX,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;IACpB,OAAO,CAAC,OAAO,EAAEA,IAAI,CAACU,KAAK,CAAC,CAAC,CAAC,CAAC;EACjC;EAEA,OAAO,CAACV,IAAI,CAAC,CAAC,CAAC,EAAEA,IAAI,CAACU,KAAK,CAAC,CAAC,CAAC,CAAC;AACjC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"waitFor.js","names":["_act","_interopRequireWildcard","require","_config","_flushMicroTasks","_errors","_timers","_reactVersions","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","DEFAULT_INTERVAL","waitForInternal","expectation","timeout","getConfig","asyncUtilTimeout","interval","stackTraceError","onTimeout","TypeError","Promise","resolve","reject","lastError","intervalId","finished","promiseStatus","overallTimeoutTimer","usingFakeTimers","jestFakeTimersAreEnabled","checkExpectation","fakeTimeRemaining","error","Error","copyStackTrace","handleTimeout","jest","advanceTimersByTime","flushMicroTasks","setTimeout","setInterval","checkRealTimersCallback","onDone","done","clearTimeout","clearInterval","type","result","then","promiseResult","resolvedValue","rejectedValue","String","waitFor","options","ErrorWithStack","optionsWithStackTrace","checkReactVersionAtLeast","previousActEnvironment","getIsReactActEnvironment","setReactActEnvironment","flushMicroTasksLegacy","act"],"sources":["../src/waitFor.ts"],"sourcesContent":["/* globals jest */\nimport act, { setReactActEnvironment, getIsReactActEnvironment } from './act';\nimport { getConfig } from './config';\nimport { flushMicroTasks, flushMicroTasksLegacy } from './flush-micro-tasks';\nimport { ErrorWithStack, copyStackTrace } from './helpers/errors';\nimport {\n setTimeout,\n clearTimeout,\n jestFakeTimersAreEnabled,\n} from './helpers/timers';\nimport { checkReactVersionAtLeast } from './react-versions';\n\nconst DEFAULT_INTERVAL = 50;\n\nexport type WaitForOptions = {\n timeout?: number;\n interval?: number;\n stackTraceError?: ErrorWithStack;\n onTimeout?: (error: Error) => Error;\n};\n\nfunction waitForInternal<T>(\n expectation: () => T,\n {\n timeout = getConfig().asyncUtilTimeout,\n interval = DEFAULT_INTERVAL,\n stackTraceError,\n onTimeout,\n }: WaitForOptions\n): Promise<T> {\n if (typeof expectation !== 'function') {\n throw new TypeError('Received `expectation` arg must be a function');\n }\n\n // eslint-disable-next-line no-async-promise-executor\n return new Promise(async (resolve, reject) => {\n let lastError: unknown, intervalId: ReturnType<typeof setTimeout>;\n let finished = false;\n let promiseStatus = 'idle';\n\n let overallTimeoutTimer: NodeJS.Timeout | null = null;\n\n const usingFakeTimers = jestFakeTimersAreEnabled();\n\n if (usingFakeTimers) {\n checkExpectation();\n // this is a dangerous rule to disable because it could lead to an\n // infinite loop. However, eslint isn't smart enough to know that we're\n // setting finished inside `onDone` which will be called when we're done\n // waiting or when we've timed out.\n // eslint-disable-next-line no-unmodified-loop-condition\n let fakeTimeRemaining = timeout;\n while (!finished) {\n if (!jestFakeTimersAreEnabled()) {\n const error = new Error(\n `Changed from using fake timers to real timers while using waitFor. This is not allowed and will result in very strange behavior. Please ensure you're awaiting all async things your test is doing before changing to real timers. For more info, please go to https://github.com/testing-library/dom-testing-library/issues/830`\n );\n if (stackTraceError) {\n copyStackTrace(error, stackTraceError);\n }\n reject(error);\n return;\n }\n\n // when fake timers are used we want to simulate the interval time passing\n if (fakeTimeRemaining <= 0) {\n handleTimeout();\n return;\n } else {\n fakeTimeRemaining -= interval;\n }\n\n // we *could* (maybe should?) use `advanceTimersToNextTimer` but it's\n // possible that could make this loop go on forever if someone is using\n // third party code that's setting up recursive timers so rapidly that\n // the user's timer's don't get a chance to resolve. So we'll advance\n // by an interval instead. (We have a test for this case).\n jest.advanceTimersByTime(interval);\n\n // It's really important that checkExpectation is run *before* we flush\n // in-flight promises. To be honest, I'm not sure why, and I can't quite\n // think of a way to reproduce the problem in a test, but I spent\n // an entire day banging my head against a wall on this.\n checkExpectation();\n\n // In this rare case, we *need* to wait for in-flight promises\n // to resolve before continuing. We don't need to take advantage\n // of parallelization so we're fine.\n // https://stackoverflow.com/a/59243586/971592\n // eslint-disable-next-line no-await-in-loop\n await flushMicroTasks();\n }\n } else {\n overallTimeoutTimer = setTimeout(handleTimeout, timeout);\n intervalId = setInterval(checkRealTimersCallback, interval);\n checkExpectation();\n }\n\n function onDone(\n done: { type: 'result'; result: T } | { type: 'error'; error: unknown }\n ) {\n finished = true;\n if (overallTimeoutTimer) {\n clearTimeout(overallTimeoutTimer);\n }\n\n if (!usingFakeTimers) {\n clearInterval(intervalId);\n }\n\n if (done.type === 'error') {\n reject(done.error);\n } else {\n resolve(done.result);\n }\n }\n\n function checkRealTimersCallback() {\n if (jestFakeTimersAreEnabled()) {\n const error = new Error(\n `Changed from using real timers to fake timers while using waitFor. This is not allowed and will result in very strange behavior. Please ensure you're awaiting all async things your test is doing before changing to fake timers. For more info, please go to https://github.com/testing-library/dom-testing-library/issues/830`\n );\n if (stackTraceError) {\n copyStackTrace(error, stackTraceError);\n }\n return reject(error);\n } else {\n return checkExpectation();\n }\n }\n\n function checkExpectation() {\n if (promiseStatus === 'pending') return;\n try {\n const result = expectation();\n\n // @ts-ignore result can be a promise\n // eslint-disable-next-line promise/prefer-await-to-then\n if (typeof result?.then === 'function') {\n const promiseResult: Promise<T> = result as any;\n promiseStatus = 'pending';\n // eslint-disable-next-line promise/catch-or-return, promise/prefer-await-to-then\n promiseResult.then(\n (resolvedValue) => {\n promiseStatus = 'resolved';\n onDone({ type: 'result', result: resolvedValue });\n return;\n },\n (rejectedValue) => {\n promiseStatus = 'rejected';\n lastError = rejectedValue;\n return;\n }\n );\n } else {\n onDone({ type: 'result', result: result });\n }\n // If `callback` throws, wait for the next mutation, interval, or timeout.\n } catch (error) {\n // Save the most recent callback error to reject the promise with it in the event of a timeout\n lastError = error;\n }\n }\n\n function handleTimeout() {\n let error: Error;\n if (lastError) {\n if (lastError instanceof Error) {\n error = lastError;\n } else {\n error = new Error(String(lastError));\n }\n\n if (stackTraceError) {\n copyStackTrace(error, stackTraceError);\n }\n } else {\n error = new Error('Timed out in waitFor.');\n if (stackTraceError) {\n copyStackTrace(error, stackTraceError);\n }\n }\n if (typeof onTimeout === 'function') {\n const result = onTimeout(error);\n if (result) {\n error = result;\n }\n }\n onDone({ type: 'error', error });\n }\n });\n}\n\nexport default async function waitFor<T>(\n expectation: () => T,\n options?: WaitForOptions\n): Promise<T> {\n // Being able to display a useful stack trace requires generating it before doing anything async\n const stackTraceError = new ErrorWithStack('STACK_TRACE_ERROR', waitFor);\n const optionsWithStackTrace = { stackTraceError, ...options };\n\n if (checkReactVersionAtLeast(18, 0)) {\n const previousActEnvironment = getIsReactActEnvironment();\n setReactActEnvironment(false);\n\n try {\n const result = await waitForInternal(expectation, optionsWithStackTrace);\n // Flush the microtask queue before restoring the `act` environment\n await flushMicroTasksLegacy();\n return result;\n } finally {\n setReactActEnvironment(previousActEnvironment);\n }\n }\n\n if (!checkReactVersionAtLeast(16, 9)) {\n return waitForInternal(expectation, optionsWithStackTrace);\n }\n\n let result: T;\n\n await act(async () => {\n result = await waitForInternal(expectation, optionsWithStackTrace);\n });\n\n // Either we have result or `waitFor` threw error\n return result!;\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"waitForElementToBeRemoved.js","names":["_waitFor","_interopRequireDefault","require","_errors","obj","__esModule","default","isRemoved","result","Array","isArray","length","waitForElementToBeRemoved","expectation","options","timeoutError","ErrorWithStack","initialElements","waitFor","error"],"sources":["../src/waitForElementToBeRemoved.ts"],"sourcesContent":["import waitFor from './waitFor';\nimport type { WaitForOptions } from './waitFor';\nimport { ErrorWithStack } from './helpers/errors';\n\nfunction isRemoved<T>(result: T): boolean {\n return !result || (Array.isArray(result) && !result.length);\n}\n\nexport default async function waitForElementToBeRemoved<T>(\n expectation: () => T,\n options?: WaitForOptions\n): Promise<T> {\n // Created here so we get a nice stacktrace\n const timeoutError = new ErrorWithStack(\n 'Timed out in waitForElementToBeRemoved.',\n waitForElementToBeRemoved\n );\n\n // Elements have to be present initally and then removed.\n const initialElements = expectation();\n if (isRemoved(initialElements)) {\n throw new ErrorWithStack(\n 'The element(s) given to waitForElementToBeRemoved are already removed. waitForElementToBeRemoved requires that the element(s) exist(s) before waiting for removal.',\n waitForElementToBeRemoved\n );\n }\n\n return waitFor(() => {\n let result;\n try {\n result = expectation();\n } catch (error) {\n return initialElements;\n }\n\n if (!isRemoved(result)) {\n throw timeoutError;\n }\n\n return initialElements;\n }, options);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEA,IAAAC,OAAA,GAAAD,OAAA;AAAkD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAElD,SAASG,SAASA,CAAIC,MAAS,EAAW;EACxC,OAAO,CAACA,MAAM,IAAKC,KAAK,CAACC,OAAO,CAACF,MAAM,CAAC,IAAI,CAACA,MAAM,CAACG,MAAO;AAC7D;AAEe,eAAeC,yBAAyBA,CACrDC,WAAoB,EACpBC,OAAwB,EACZ;EACZ;EACA,MAAMC,YAAY,GAAG,IAAIC,sBAAc,CACrC,yCAAyC,EACzCJ,yBACF,CAAC;;EAED;EACA,MAAMK,eAAe,GAAGJ,WAAW,CAAC,CAAC;EACrC,IAAIN,SAAS,CAACU,eAAe,CAAC,EAAE;IAC9B,MAAM,IAAID,sBAAc,CACtB,oKAAoK,EACpKJ,yBACF,CAAC;EACH;EAEA,OAAO,IAAAM,gBAAO,EAAC,MAAM;IACnB,IAAIV,MAAM;IACV,IAAI;MACFA,MAAM,GAAGK,WAAW,CAAC,CAAC;IACxB,CAAC,CAAC,OAAOM,KAAK,EAAE;MACd,OAAOF,eAAe;IACxB;IAEA,IAAI,CAACV,SAAS,CAACC,MAAM,CAAC,EAAE;MACtB,MAAMO,YAAY;IACpB;IAEA,OAAOE,eAAe;EACxB,CAAC,EAAEH,OAAO,CAAC;AACb"}
File without changes
File without changes
File without changes
File without changes