@wordpress/components 25.14.0 → 25.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (479) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/CONTRIBUTING.md +57 -115
  3. package/LICENSE.md +1 -1
  4. package/build/base-control/index.js +17 -13
  5. package/build/base-control/index.js.map +1 -1
  6. package/build/border-box-control/border-box-control-linked-button/component.js +1 -1
  7. package/build/border-box-control/border-box-control-linked-button/component.js.map +1 -1
  8. package/build/border-control/border-control-style-picker/component.js +1 -1
  9. package/build/border-control/border-control-style-picker/component.js.map +1 -1
  10. package/build/box-control/index.js +1 -1
  11. package/build/box-control/index.js.map +1 -1
  12. package/build/box-control/linked-button.js +1 -1
  13. package/build/box-control/linked-button.js.map +1 -1
  14. package/build/button/index.js +1 -1
  15. package/build/button/index.js.map +1 -1
  16. package/build/color-picker/color-copy-button.js +1 -1
  17. package/build/color-picker/color-copy-button.js.map +1 -1
  18. package/build/context/wordpress-component.js.map +1 -1
  19. package/build/custom-select-control-v2/index.js +11 -10
  20. package/build/custom-select-control-v2/index.js.map +1 -1
  21. package/build/date-time/date/styles.js +8 -8
  22. package/build/date-time/date/styles.js.map +1 -1
  23. package/build/dropdown-menu-v2/index.js +205 -159
  24. package/build/dropdown-menu-v2/index.js.map +1 -1
  25. package/build/dropdown-menu-v2/styles.js +86 -77
  26. package/build/dropdown-menu-v2/styles.js.map +1 -1
  27. package/build/dropdown-menu-v2/types.js.map +1 -1
  28. package/build/duotone-picker/duotone-picker.js +4 -3
  29. package/build/duotone-picker/duotone-picker.js.map +1 -1
  30. package/build/font-size-picker/index.js +4 -2
  31. package/build/font-size-picker/index.js.map +1 -1
  32. package/build/font-size-picker/index.native.js +6 -3
  33. package/build/font-size-picker/index.native.js.map +1 -1
  34. package/build/form-token-field/index.js +10 -5
  35. package/build/form-token-field/index.js.map +1 -1
  36. package/build/form-token-field/token.js +1 -0
  37. package/build/form-token-field/token.js.map +1 -1
  38. package/build/gradient-picker/index.js +3 -2
  39. package/build/gradient-picker/index.js.map +1 -1
  40. package/build/index.native.js +20 -3
  41. package/build/index.native.js.map +1 -1
  42. package/build/input-control/styles/input-control-styles.js +32 -29
  43. package/build/input-control/styles/input-control-styles.js.map +1 -1
  44. package/build/input-control/types.js.map +1 -1
  45. package/build/lock-unlock.js +18 -0
  46. package/build/lock-unlock.js.map +1 -0
  47. package/build/mobile/bottom-sheet/index.native.js +8 -0
  48. package/build/mobile/bottom-sheet/index.native.js.map +1 -1
  49. package/build/mobile/global-styles-context/utils.native.js +26 -13
  50. package/build/mobile/global-styles-context/utils.native.js.map +1 -1
  51. package/build/mobile/image/constants.js +12 -0
  52. package/build/mobile/image/constants.js.map +1 -0
  53. package/build/mobile/image/index.native.js +26 -18
  54. package/build/mobile/image/index.native.js.map +1 -1
  55. package/build/mobile/keyboard-aware-flat-list/index.android.js +40 -8
  56. package/build/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
  57. package/build/mobile/keyboard-aware-flat-list/index.ios.js +44 -68
  58. package/build/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  59. package/build/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +39 -0
  60. package/build/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js.map +1 -0
  61. package/build/mobile/keyboard-aware-flat-list/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +22 -29
  62. package/build/mobile/keyboard-aware-flat-list/use-scroll-to-section.native.js.map +1 -0
  63. package/build/mobile/keyboard-aware-flat-list/use-scroll.native.js +93 -0
  64. package/build/mobile/keyboard-aware-flat-list/use-scroll.native.js.map +1 -0
  65. package/build/mobile/utils/get-px-from-css-unit.native.js +302 -0
  66. package/build/mobile/utils/get-px-from-css-unit.native.js.map +1 -0
  67. package/build/modal/index.js +18 -13
  68. package/build/modal/index.js.map +1 -1
  69. package/build/navigation/menu/menu-title.js +1 -1
  70. package/build/navigation/menu/menu-title.js.map +1 -1
  71. package/build/navigator/navigator-provider/component.js +13 -15
  72. package/build/navigator/navigator-provider/component.js.map +1 -1
  73. package/build/navigator/navigator-screen/component.js +23 -63
  74. package/build/navigator/navigator-screen/component.js.map +1 -1
  75. package/build/navigator/styles.js +52 -0
  76. package/build/navigator/styles.js.map +1 -0
  77. package/build/number-control/index.js +4 -8
  78. package/build/number-control/index.js.map +1 -1
  79. package/build/number-control/types.js.map +1 -1
  80. package/build/palette-edit/index.js +15 -54
  81. package/build/palette-edit/index.js.map +1 -1
  82. package/build/private-apis.js +11 -26
  83. package/build/private-apis.js.map +1 -1
  84. package/build/private-apis.native.js +21 -0
  85. package/build/private-apis.native.js.map +1 -0
  86. package/build/radio-control/index.js +1 -0
  87. package/build/radio-control/index.js.map +1 -1
  88. package/build/range-control/index.js +1 -1
  89. package/build/range-control/index.js.map +1 -1
  90. package/build/select-control/styles/select-control-styles.js +15 -25
  91. package/build/select-control/styles/select-control-styles.js.map +1 -1
  92. package/build/slot-fill/index.js +3 -2
  93. package/build/slot-fill/index.js.map +1 -1
  94. package/build/slot-fill/types.js.map +1 -1
  95. package/build/snackbar/types.js.map +1 -1
  96. package/build/tabs/styles.js +3 -3
  97. package/build/tabs/styles.js.map +1 -1
  98. package/build/tabs/tabpanel.js +9 -7
  99. package/build/tabs/tabpanel.js.map +1 -1
  100. package/build/toggle-group-control/toggle-group-control/component.js +4 -4
  101. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  102. package/build/toggle-group-control/toggle-group-control/styles.js +29 -15
  103. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  104. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +9 -9
  105. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  106. package/build/tools-panel/tools-panel/component.js +3 -1
  107. package/build/tools-panel/tools-panel/component.js.map +1 -1
  108. package/build/tools-panel/tools-panel-header/component.js +9 -8
  109. package/build/tools-panel/tools-panel-header/component.js.map +1 -1
  110. package/build/tools-panel/types.js.map +1 -1
  111. package/build/tooltip/index.js +1 -1
  112. package/build/tooltip/index.js.map +1 -1
  113. package/build/truncate/hook.js +10 -4
  114. package/build/truncate/hook.js.map +1 -1
  115. package/build/truncate/types.js.map +1 -1
  116. package/build/unit-control/index.js +1 -1
  117. package/build/unit-control/index.js.map +1 -1
  118. package/build/utils/strings.js +34 -3
  119. package/build/utils/strings.js.map +1 -1
  120. package/build-module/base-control/index.js +16 -12
  121. package/build-module/base-control/index.js.map +1 -1
  122. package/build-module/border-box-control/border-box-control-linked-button/component.js +1 -1
  123. package/build-module/border-box-control/border-box-control-linked-button/component.js.map +1 -1
  124. package/build-module/border-control/border-control-style-picker/component.js +1 -1
  125. package/build-module/border-control/border-control-style-picker/component.js.map +1 -1
  126. package/build-module/box-control/index.js +1 -1
  127. package/build-module/box-control/index.js.map +1 -1
  128. package/build-module/box-control/linked-button.js +1 -1
  129. package/build-module/box-control/linked-button.js.map +1 -1
  130. package/build-module/button/index.js +1 -1
  131. package/build-module/button/index.js.map +1 -1
  132. package/build-module/color-picker/color-copy-button.js +1 -1
  133. package/build-module/color-picker/color-copy-button.js.map +1 -1
  134. package/build-module/context/wordpress-component.js.map +1 -1
  135. package/build-module/custom-select-control-v2/index.js +11 -10
  136. package/build-module/custom-select-control-v2/index.js.map +1 -1
  137. package/build-module/date-time/date/styles.js +8 -8
  138. package/build-module/date-time/date/styles.js.map +1 -1
  139. package/build-module/dropdown-menu-v2/index.js +201 -154
  140. package/build-module/dropdown-menu-v2/index.js.map +1 -1
  141. package/build-module/dropdown-menu-v2/styles.js +68 -61
  142. package/build-module/dropdown-menu-v2/styles.js.map +1 -1
  143. package/build-module/dropdown-menu-v2/types.js.map +1 -1
  144. package/build-module/duotone-picker/duotone-picker.js +4 -3
  145. package/build-module/duotone-picker/duotone-picker.js.map +1 -1
  146. package/build-module/font-size-picker/index.js +4 -2
  147. package/build-module/font-size-picker/index.js.map +1 -1
  148. package/build-module/font-size-picker/index.native.js +5 -2
  149. package/build-module/font-size-picker/index.native.js.map +1 -1
  150. package/build-module/form-token-field/index.js +10 -5
  151. package/build-module/form-token-field/index.js.map +1 -1
  152. package/build-module/form-token-field/token.js +1 -0
  153. package/build-module/form-token-field/token.js.map +1 -1
  154. package/build-module/gradient-picker/index.js +3 -2
  155. package/build-module/gradient-picker/index.js.map +1 -1
  156. package/build-module/index.native.js +6 -1
  157. package/build-module/index.native.js.map +1 -1
  158. package/build-module/input-control/styles/input-control-styles.js +31 -29
  159. package/build-module/input-control/styles/input-control-styles.js.map +1 -1
  160. package/build-module/input-control/types.js.map +1 -1
  161. package/build-module/lock-unlock.js +9 -0
  162. package/build-module/lock-unlock.js.map +1 -0
  163. package/build-module/mobile/bottom-sheet/index.native.js +9 -1
  164. package/build-module/mobile/bottom-sheet/index.native.js.map +1 -1
  165. package/build-module/mobile/global-styles-context/utils.native.js +25 -13
  166. package/build-module/mobile/global-styles-context/utils.native.js.map +1 -1
  167. package/build-module/mobile/image/constants.js +5 -0
  168. package/build-module/mobile/image/constants.js.map +1 -0
  169. package/build-module/mobile/image/index.native.js +25 -16
  170. package/build-module/mobile/image/index.native.js.map +1 -1
  171. package/build-module/mobile/keyboard-aware-flat-list/index.android.js +40 -6
  172. package/build-module/mobile/keyboard-aware-flat-list/index.android.js.map +1 -1
  173. package/build-module/mobile/keyboard-aware-flat-list/index.ios.js +46 -68
  174. package/build-module/mobile/keyboard-aware-flat-list/index.ios.js.map +1 -1
  175. package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +33 -0
  176. package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js.map +1 -0
  177. package/build-module/mobile/keyboard-aware-flat-list/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +21 -27
  178. package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-section.native.js.map +1 -0
  179. package/build-module/mobile/keyboard-aware-flat-list/use-scroll.native.js +86 -0
  180. package/build-module/mobile/keyboard-aware-flat-list/use-scroll.native.js.map +1 -0
  181. package/build-module/mobile/utils/get-px-from-css-unit.native.js +294 -0
  182. package/build-module/mobile/utils/get-px-from-css-unit.native.js.map +1 -0
  183. package/build-module/modal/index.js +18 -13
  184. package/build-module/modal/index.js.map +1 -1
  185. package/build-module/navigation/menu/menu-title.js +1 -1
  186. package/build-module/navigation/menu/menu-title.js.map +1 -1
  187. package/build-module/navigator/navigator-provider/component.js +3 -16
  188. package/build-module/navigator/navigator-provider/component.js.map +1 -1
  189. package/build-module/navigator/navigator-screen/component.js +16 -70
  190. package/build-module/navigator/navigator-screen/component.js.map +1 -1
  191. package/build-module/navigator/styles.js +47 -0
  192. package/build-module/navigator/styles.js.map +1 -0
  193. package/build-module/number-control/index.js +4 -8
  194. package/build-module/number-control/index.js.map +1 -1
  195. package/build-module/number-control/types.js.map +1 -1
  196. package/build-module/palette-edit/index.js +15 -51
  197. package/build-module/palette-edit/index.js.map +1 -1
  198. package/build-module/private-apis.js +10 -23
  199. package/build-module/private-apis.js.map +1 -1
  200. package/build-module/private-apis.native.js +14 -0
  201. package/build-module/private-apis.native.js.map +1 -0
  202. package/build-module/radio-control/index.js +1 -0
  203. package/build-module/radio-control/index.js.map +1 -1
  204. package/build-module/range-control/index.js +1 -1
  205. package/build-module/range-control/index.js.map +1 -1
  206. package/build-module/select-control/styles/select-control-styles.js +15 -25
  207. package/build-module/select-control/styles/select-control-styles.js.map +1 -1
  208. package/build-module/slot-fill/index.js +3 -2
  209. package/build-module/slot-fill/index.js.map +1 -1
  210. package/build-module/slot-fill/types.js.map +1 -1
  211. package/build-module/snackbar/types.js.map +1 -1
  212. package/build-module/tabs/styles.js +3 -3
  213. package/build-module/tabs/styles.js.map +1 -1
  214. package/build-module/tabs/tabpanel.js +9 -7
  215. package/build-module/tabs/tabpanel.js.map +1 -1
  216. package/build-module/toggle-group-control/toggle-group-control/component.js +4 -4
  217. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  218. package/build-module/toggle-group-control/toggle-group-control/styles.js +29 -15
  219. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  220. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +9 -9
  221. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  222. package/build-module/tools-panel/tools-panel/component.js +3 -1
  223. package/build-module/tools-panel/tools-panel/component.js.map +1 -1
  224. package/build-module/tools-panel/tools-panel-header/component.js +9 -8
  225. package/build-module/tools-panel/tools-panel-header/component.js.map +1 -1
  226. package/build-module/tools-panel/types.js.map +1 -1
  227. package/build-module/tooltip/index.js +1 -1
  228. package/build-module/tooltip/index.js.map +1 -1
  229. package/build-module/truncate/hook.js +10 -4
  230. package/build-module/truncate/hook.js.map +1 -1
  231. package/build-module/truncate/types.js.map +1 -1
  232. package/build-module/unit-control/index.js +1 -1
  233. package/build-module/unit-control/index.js.map +1 -1
  234. package/build-module/utils/strings.js +32 -2
  235. package/build-module/utils/strings.js.map +1 -1
  236. package/build-style/style-rtl.css +29 -5
  237. package/build-style/style.css +29 -5
  238. package/build-types/base-control/index.d.ts +3 -27
  239. package/build-types/base-control/index.d.ts.map +1 -1
  240. package/build-types/base-control/stories/index.story.d.ts +4 -1
  241. package/build-types/base-control/stories/index.story.d.ts.map +1 -1
  242. package/build-types/color-picker/component.d.ts +1 -1
  243. package/build-types/color-picker/stories/index.story.d.ts +1 -1
  244. package/build-types/color-picker/stories/index.story.d.ts.map +1 -1
  245. package/build-types/composite/test/index.d.ts.map +1 -0
  246. package/build-types/context/wordpress-component.d.ts +3 -3
  247. package/build-types/context/wordpress-component.d.ts.map +1 -1
  248. package/build-types/custom-select-control-v2/index.d.ts +3 -2
  249. package/build-types/custom-select-control-v2/index.d.ts.map +1 -1
  250. package/build-types/custom-select-control-v2/stories/index.story.d.ts +4 -3
  251. package/build-types/custom-select-control-v2/stories/index.story.d.ts.map +1 -1
  252. package/build-types/dropdown/index.d.ts +1 -1
  253. package/build-types/dropdown/index.d.ts.map +1 -1
  254. package/build-types/dropdown/stories/index.story.d.ts +3 -3
  255. package/build-types/dropdown/stories/index.story.d.ts.map +1 -1
  256. package/build-types/dropdown-menu/index.d.ts +1 -1
  257. package/build-types/dropdown-menu/index.d.ts.map +1 -1
  258. package/build-types/dropdown-menu/stories/index.story.d.ts +2 -2
  259. package/build-types/dropdown-menu/stories/index.story.d.ts.map +1 -1
  260. package/build-types/dropdown-menu-v2/index.d.ts +18 -15
  261. package/build-types/dropdown-menu-v2/index.d.ts.map +1 -1
  262. package/build-types/dropdown-menu-v2/stories/index.story.d.ts +7 -2
  263. package/build-types/dropdown-menu-v2/stories/index.story.d.ts.map +1 -1
  264. package/build-types/dropdown-menu-v2/styles.d.ts +77 -23
  265. package/build-types/dropdown-menu-v2/styles.d.ts.map +1 -1
  266. package/build-types/dropdown-menu-v2/types.d.ts +89 -173
  267. package/build-types/dropdown-menu-v2/types.d.ts.map +1 -1
  268. package/build-types/duotone-picker/duotone-picker.d.ts.map +1 -1
  269. package/build-types/font-size-picker/index.d.ts.map +1 -1
  270. package/build-types/form-token-field/index.d.ts.map +1 -1
  271. package/build-types/form-token-field/token.d.ts.map +1 -1
  272. package/build-types/input-control/styles/input-control-styles.d.ts +11 -0
  273. package/build-types/input-control/styles/input-control-styles.d.ts.map +1 -1
  274. package/build-types/input-control/types.d.ts +1 -1
  275. package/build-types/input-control/types.d.ts.map +1 -1
  276. package/build-types/lock-unlock.d.ts +3 -0
  277. package/build-types/lock-unlock.d.ts.map +1 -0
  278. package/build-types/mobile/image/constants.d.ts +5 -0
  279. package/build-types/mobile/image/constants.d.ts.map +1 -0
  280. package/build-types/modal/index.d.ts.map +1 -1
  281. package/build-types/navigator/navigator-provider/component.d.ts.map +1 -1
  282. package/build-types/navigator/navigator-screen/component.d.ts +1 -7
  283. package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
  284. package/build-types/navigator/styles.d.ts +9 -0
  285. package/build-types/navigator/styles.d.ts.map +1 -0
  286. package/build-types/number-control/index.d.ts.map +1 -1
  287. package/build-types/number-control/types.d.ts +1 -1
  288. package/build-types/palette-edit/index.d.ts +3 -8
  289. package/build-types/palette-edit/index.d.ts.map +1 -1
  290. package/build-types/popover/index.d.ts +1 -1
  291. package/build-types/popover/index.d.ts.map +1 -1
  292. package/build-types/popover/stories/e2e/index.story.d.ts +1 -1
  293. package/build-types/private-apis.d.ts +0 -1
  294. package/build-types/private-apis.d.ts.map +1 -1
  295. package/build-types/radio-control/index.d.ts.map +1 -1
  296. package/build-types/select-control/styles/select-control-styles.d.ts.map +1 -1
  297. package/build-types/slot-fill/index.d.ts +1 -1
  298. package/build-types/slot-fill/index.d.ts.map +1 -1
  299. package/build-types/slot-fill/types.d.ts +4 -0
  300. package/build-types/slot-fill/types.d.ts.map +1 -1
  301. package/build-types/snackbar/index.d.ts +2 -2
  302. package/build-types/snackbar/stories/index.story.d.ts +0 -3
  303. package/build-types/snackbar/stories/index.story.d.ts.map +1 -1
  304. package/build-types/snackbar/types.d.ts +1 -1
  305. package/build-types/snackbar/types.d.ts.map +1 -1
  306. package/build-types/tabs/styles.d.ts.map +1 -1
  307. package/build-types/tabs/tabpanel.d.ts +1 -1
  308. package/build-types/tabs/tabpanel.d.ts.map +1 -1
  309. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  310. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts +2 -2
  311. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  312. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts +1 -1
  313. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  314. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  315. package/build-types/tools-panel/tools-panel/component.d.ts.map +1 -1
  316. package/build-types/tools-panel/tools-panel/hook.d.ts +1 -0
  317. package/build-types/tools-panel/tools-panel/hook.d.ts.map +1 -1
  318. package/build-types/tools-panel/tools-panel-header/component.d.ts.map +1 -1
  319. package/build-types/tools-panel/tools-panel-header/hook.d.ts +1 -0
  320. package/build-types/tools-panel/tools-panel-header/hook.d.ts.map +1 -1
  321. package/build-types/tools-panel/types.d.ts +9 -0
  322. package/build-types/tools-panel/types.d.ts.map +1 -1
  323. package/build-types/truncate/hook.d.ts +1 -1
  324. package/build-types/truncate/hook.d.ts.map +1 -1
  325. package/build-types/truncate/types.d.ts +4 -0
  326. package/build-types/truncate/types.d.ts.map +1 -1
  327. package/build-types/utils/strings.d.ts +14 -2
  328. package/build-types/utils/strings.d.ts.map +1 -1
  329. package/package.json +20 -21
  330. package/src/alignment-matrix-control/test/index.tsx +10 -16
  331. package/src/base-control/index.tsx +21 -16
  332. package/src/border-box-control/border-box-control-linked-button/component.tsx +1 -1
  333. package/src/border-control/border-control-style-picker/component.tsx +1 -1
  334. package/src/box-control/index.tsx +1 -1
  335. package/src/box-control/linked-button.tsx +1 -1
  336. package/src/button/README.md +32 -6
  337. package/src/button/index.tsx +1 -1
  338. package/src/button-group/README.md +0 -6
  339. package/src/card/card/README.md +1 -1
  340. package/src/checkbox-control/README.md +1 -9
  341. package/src/color-picker/color-copy-button.tsx +1 -1
  342. package/src/combobox-control/README.md +0 -6
  343. package/src/composite/test/index.tsx +576 -0
  344. package/src/context/wordpress-component.ts +11 -6
  345. package/src/custom-select-control/README.md +0 -6
  346. package/src/custom-select-control-v2/index.tsx +13 -12
  347. package/src/date-time/date/styles.ts +3 -3
  348. package/src/dropdown-menu/README.md +0 -5
  349. package/src/dropdown-menu-v2/README.md +75 -136
  350. package/src/dropdown-menu-v2/index.tsx +321 -231
  351. package/src/dropdown-menu-v2/stories/index.story.tsx +522 -126
  352. package/src/dropdown-menu-v2/styles.ts +226 -151
  353. package/src/dropdown-menu-v2/test/index.tsx +480 -188
  354. package/src/dropdown-menu-v2/types.ts +98 -184
  355. package/src/duotone-picker/duotone-picker.tsx +7 -3
  356. package/src/font-size-picker/index.native.js +8 -2
  357. package/src/font-size-picker/index.tsx +4 -2
  358. package/src/form-toggle/README.md +0 -6
  359. package/src/form-token-field/index.tsx +11 -7
  360. package/src/form-token-field/test/index.tsx +97 -0
  361. package/src/form-token-field/token.tsx +1 -0
  362. package/src/gradient-picker/index.tsx +2 -2
  363. package/src/index.native.js +6 -1
  364. package/src/input-control/styles/input-control-styles.tsx +10 -8
  365. package/src/input-control/types.ts +1 -1
  366. package/src/lock-unlock.js +10 -0
  367. package/src/menu-group/README.md +0 -8
  368. package/src/menu-items-choice/README.md +0 -7
  369. package/src/mobile/bottom-sheet/index.native.js +15 -1
  370. package/src/mobile/global-styles-context/test/fixtures/theme.native.js +0 -20
  371. package/src/mobile/global-styles-context/utils.native.js +28 -19
  372. package/src/mobile/image/constants.js +1 -0
  373. package/src/mobile/image/index.native.js +55 -18
  374. package/src/mobile/image/style.native.scss +35 -9
  375. package/src/mobile/keyboard-aware-flat-list/index.android.js +50 -5
  376. package/src/mobile/keyboard-aware-flat-list/index.ios.js +65 -91
  377. package/src/mobile/keyboard-aware-flat-list/test/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +27 -25
  378. package/src/mobile/keyboard-aware-flat-list/test/use-scroll.native.js +71 -0
  379. package/src/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +41 -0
  380. package/src/mobile/keyboard-aware-flat-list/{use-scroll-to-text-input.native.js → use-scroll-to-section.native.js} +22 -27
  381. package/src/mobile/keyboard-aware-flat-list/use-scroll.native.js +100 -0
  382. package/src/mobile/utils/get-px-from-css-unit.native.js +329 -0
  383. package/src/mobile/utils/test/get-px-from-css-unit.native.js +172 -0
  384. package/src/modal/README.md +0 -6
  385. package/src/modal/index.tsx +18 -16
  386. package/src/modal/test/index.tsx +90 -1
  387. package/src/navigation/menu/menu-title.tsx +1 -1
  388. package/src/navigator/navigator-provider/component.tsx +3 -4
  389. package/src/navigator/navigator-screen/component.tsx +15 -93
  390. package/src/navigator/styles.ts +71 -0
  391. package/src/navigator/test/index.tsx +0 -64
  392. package/src/notice/README.md +0 -6
  393. package/src/number-control/README.md +2 -2
  394. package/src/number-control/index.tsx +4 -8
  395. package/src/number-control/types.ts +1 -1
  396. package/src/palette-edit/index.tsx +15 -58
  397. package/src/palette-edit/test/index.tsx +1 -75
  398. package/src/panel/README.md +0 -6
  399. package/src/private-apis.native.js +13 -0
  400. package/src/private-apis.ts +12 -37
  401. package/src/radio-control/README.md +0 -6
  402. package/src/radio-control/index.tsx +4 -1
  403. package/src/radio-control/style.scss +29 -2
  404. package/src/radio-group/README.md +0 -6
  405. package/src/range-control/README.md +1 -9
  406. package/src/range-control/index.tsx +1 -1
  407. package/src/search-control/README.md +0 -6
  408. package/src/select-control/README.md +0 -6
  409. package/src/select-control/styles/select-control-styles.ts +10 -28
  410. package/src/slot-fill/index.tsx +5 -2
  411. package/src/slot-fill/types.ts +5 -0
  412. package/src/snackbar/README.md +0 -6
  413. package/src/snackbar/stories/index.story.tsx +7 -5
  414. package/src/snackbar/style.scss +4 -3
  415. package/src/snackbar/types.ts +2 -1
  416. package/src/spacer/README.md +0 -2
  417. package/src/tab-panel/README.md +0 -5
  418. package/src/tab-panel/test/index.tsx +39 -56
  419. package/src/tabs/styles.ts +7 -1
  420. package/src/tabs/tabpanel.tsx +7 -6
  421. package/src/tabs/test/index.tsx +56 -0
  422. package/src/text-control/README.md +0 -6
  423. package/src/textarea-control/README.md +0 -6
  424. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +12 -16
  425. package/src/toggle-group-control/test/index.tsx +58 -45
  426. package/src/toggle-group-control/toggle-group-control/component.tsx +5 -4
  427. package/src/toggle-group-control/toggle-group-control/styles.ts +13 -19
  428. package/src/toggle-group-control/toggle-group-control-option/README.md +1 -1
  429. package/src/toggle-group-control/toggle-group-control-option-base/README.md +1 -1
  430. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +3 -2
  431. package/src/toggle-group-control/toggle-group-control-option-icon/README.md +1 -1
  432. package/src/toolbar/toolbar/README.md +0 -6
  433. package/src/tools-panel/test/index.tsx +12 -20
  434. package/src/tools-panel/tools-panel/README.md +7 -0
  435. package/src/tools-panel/tools-panel/component.tsx +2 -0
  436. package/src/tools-panel/tools-panel-header/README.md +7 -0
  437. package/src/tools-panel/tools-panel-header/component.tsx +20 -13
  438. package/src/tools-panel/types.ts +9 -0
  439. package/src/tooltip/index.tsx +1 -1
  440. package/src/tooltip/test/index.tsx +360 -256
  441. package/src/tree-grid/README.md +0 -4
  442. package/src/truncate/README.md +8 -0
  443. package/src/truncate/hook.ts +17 -10
  444. package/src/truncate/test/index.tsx +54 -27
  445. package/src/truncate/types.ts +4 -0
  446. package/src/unit-control/index.tsx +1 -1
  447. package/src/utils/strings.ts +30 -2
  448. package/src/utils/test/strings.js +96 -1
  449. package/tsconfig.tsbuildinfo +1 -1
  450. package/build/dropdown-menu-v2-ariakit/index.js +0 -256
  451. package/build/dropdown-menu-v2-ariakit/index.js.map +0 -1
  452. package/build/dropdown-menu-v2-ariakit/styles.js +0 -180
  453. package/build/dropdown-menu-v2-ariakit/styles.js.map +0 -1
  454. package/build/dropdown-menu-v2-ariakit/types.js +0 -6
  455. package/build/dropdown-menu-v2-ariakit/types.js.map +0 -1
  456. package/build/mobile/keyboard-aware-flat-list/use-scroll-to-text-input.native.js.map +0 -1
  457. package/build-module/dropdown-menu-v2-ariakit/index.js +0 -237
  458. package/build-module/dropdown-menu-v2-ariakit/index.js.map +0 -1
  459. package/build-module/dropdown-menu-v2-ariakit/styles.js +0 -165
  460. package/build-module/dropdown-menu-v2-ariakit/styles.js.map +0 -1
  461. package/build-module/dropdown-menu-v2-ariakit/types.js +0 -2
  462. package/build-module/dropdown-menu-v2-ariakit/types.js.map +0 -1
  463. package/build-module/mobile/keyboard-aware-flat-list/use-scroll-to-text-input.native.js.map +0 -1
  464. package/build-types/dropdown-menu-v2-ariakit/index.d.ts +0 -20
  465. package/build-types/dropdown-menu-v2-ariakit/index.d.ts.map +0 -1
  466. package/build-types/dropdown-menu-v2-ariakit/stories/index.story.d.ts +0 -16
  467. package/build-types/dropdown-menu-v2-ariakit/stories/index.story.d.ts.map +0 -1
  468. package/build-types/dropdown-menu-v2-ariakit/styles.d.ts +0 -96
  469. package/build-types/dropdown-menu-v2-ariakit/styles.d.ts.map +0 -1
  470. package/build-types/dropdown-menu-v2-ariakit/test/index.d.ts.map +0 -1
  471. package/build-types/dropdown-menu-v2-ariakit/types.d.ts +0 -168
  472. package/build-types/dropdown-menu-v2-ariakit/types.d.ts.map +0 -1
  473. package/src/dropdown-menu-v2-ariakit/README.md +0 -331
  474. package/src/dropdown-menu-v2-ariakit/index.tsx +0 -383
  475. package/src/dropdown-menu-v2-ariakit/stories/index.story.tsx +0 -617
  476. package/src/dropdown-menu-v2-ariakit/styles.ts +0 -345
  477. package/src/dropdown-menu-v2-ariakit/test/index.tsx +0 -1108
  478. package/src/dropdown-menu-v2-ariakit/types.ts +0 -179
  479. /package/build-types/{dropdown-menu-v2-ariakit → composite}/test/index.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_element","_compose","_i18n","_icons","_dom","ariaHelper","_interopRequireWildcard","_button","_styleProvider","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","level0Dismissers","ModalContext","createContext","isBodyOpenClassActive","UnforwardedModal","props","forwardedRef","bodyOpenClassName","role","title","focusOnMount","shouldCloseOnEsc","shouldCloseOnClickOutside","isDismissible","aria","labelledby","undefined","describedby","onRequestClose","icon","closeButtonLabel","children","style","overlayClassName","className","contentLabel","onKeyDown","isFullScreen","size","headerActions","__experimentalHideHeader","ref","useRef","instanceId","useInstanceId","Modal","headingId","focusOnMountRef","useFocusOnMount","constrainedTabbingRef","useConstrainedTabbing","focusReturnRef","useFocusReturn","contentRef","childrenContainerRef","hasScrolledContent","setHasScrolledContent","useState","hasScrollableContent","setHasScrollableContent","sizeClass","isContentScrollable","useCallback","current","closestScrollContainer","getScrollContainer","useEffect","modalize","unmodalize","refOnRequestClose","dismissers","useContext","nestedDismissers","push","first","second","nested","shift","isLevel0","document","body","classList","add","length","remove","useLayoutEffect","window","ResizeObserver","resizeObserver","observe","disconnect","handleEscapeKeyDown","event","nativeEvent","isComposing","keyCode","code","defaultPrevented","preventDefault","onContentContainerScroll","e","_e$currentTarget$scro","scrollY","currentTarget","scrollTop","pressTarget","overlayPressHandlers","onPointerDown","target","onPointerUp","button","isSameTarget","modal","_react","createElement","useMergeRefs","classnames","tabIndex","onScroll","__","id","onClick","close","label","createPortal","Provider","value","forwardRef","exports","_default"],"sources":["@wordpress/components/src/modal/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type {\n\tForwardedRef,\n\tKeyboardEvent,\n\tMutableRefObject,\n\tUIEvent,\n} from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcreatePortal,\n\tuseCallback,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tforwardRef,\n\tuseLayoutEffect,\n\tcreateContext,\n\tuseContext,\n} from '@wordpress/element';\nimport {\n\tuseInstanceId,\n\tuseFocusReturn,\n\tuseFocusOnMount,\n\tuseConstrainedTabbing,\n\tuseMergeRefs,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { close } from '@wordpress/icons';\nimport { getScrollContainer } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport * as ariaHelper from './aria-helper';\nimport Button from '../button';\nimport StyleProvider from '../style-provider';\nimport type { ModalProps } from './types';\n\n// Used to track and dismiss the prior modal when another opens unless nested.\nconst level0Dismissers: MutableRefObject<\n\tModalProps[ 'onRequestClose' ] | undefined\n>[] = [];\nconst ModalContext = createContext( level0Dismissers );\n\nlet isBodyOpenClassActive = false;\n\nfunction UnforwardedModal(\n\tprops: ModalProps,\n\tforwardedRef: ForwardedRef< HTMLDivElement >\n) {\n\tconst {\n\t\tbodyOpenClassName = 'modal-open',\n\t\trole = 'dialog',\n\t\ttitle = null,\n\t\tfocusOnMount = true,\n\t\tshouldCloseOnEsc = true,\n\t\tshouldCloseOnClickOutside = true,\n\t\tisDismissible = true,\n\t\t/* Accessibility. */\n\t\taria = {\n\t\t\tlabelledby: undefined,\n\t\t\tdescribedby: undefined,\n\t\t},\n\t\tonRequestClose,\n\t\ticon,\n\t\tcloseButtonLabel,\n\t\tchildren,\n\t\tstyle,\n\t\toverlayClassName,\n\t\tclassName,\n\t\tcontentLabel,\n\t\tonKeyDown,\n\t\tisFullScreen = false,\n\t\tsize,\n\t\theaderActions = null,\n\t\t__experimentalHideHeader = false,\n\t} = props;\n\n\tconst ref = useRef< HTMLDivElement >();\n\n\tconst instanceId = useInstanceId( Modal );\n\tconst headingId = title\n\t\t? `components-modal-header-${ instanceId }`\n\t\t: aria.labelledby;\n\n\t// The focus hook does not support 'firstContentElement' but this is a valid\n\t// value for the Modal's focusOnMount prop. The following code ensures the focus\n\t// hook will focus the first focusable node within the element to which it is applied.\n\t// When `firstContentElement` is passed as the value of the focusOnMount prop,\n\t// the focus hook is applied to the Modal's content element.\n\t// Otherwise, the focus hook is applied to the Modal's ref. This ensures that the\n\t// focus hook will focus the first element in the Modal's **content** when\n\t// `firstContentElement` is passed.\n\tconst focusOnMountRef = useFocusOnMount(\n\t\tfocusOnMount === 'firstContentElement' ? 'firstElement' : focusOnMount\n\t);\n\tconst constrainedTabbingRef = useConstrainedTabbing();\n\tconst focusReturnRef = useFocusReturn();\n\tconst contentRef = useRef< HTMLDivElement >( null );\n\tconst childrenContainerRef = useRef< HTMLDivElement >( null );\n\n\tconst [ hasScrolledContent, setHasScrolledContent ] = useState( false );\n\tconst [ hasScrollableContent, setHasScrollableContent ] = useState( false );\n\n\tlet sizeClass;\n\tif ( isFullScreen || size === 'fill' ) {\n\t\tsizeClass = 'is-full-screen';\n\t} else if ( size ) {\n\t\tsizeClass = `has-size-${ size }`;\n\t}\n\n\t// Determines whether the Modal content is scrollable and updates the state.\n\tconst isContentScrollable = useCallback( () => {\n\t\tif ( ! contentRef.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst closestScrollContainer = getScrollContainer( contentRef.current );\n\n\t\tif ( contentRef.current === closestScrollContainer ) {\n\t\t\tsetHasScrollableContent( true );\n\t\t} else {\n\t\t\tsetHasScrollableContent( false );\n\t\t}\n\t}, [ contentRef ] );\n\n\t// Accessibly isolates/unisolates the modal.\n\tuseEffect( () => {\n\t\tariaHelper.modalize( ref.current );\n\t\treturn () => ariaHelper.unmodalize();\n\t}, [] );\n\n\t// Keeps a fresh ref for the subsequent effect.\n\tconst refOnRequestClose = useRef< ModalProps[ 'onRequestClose' ] >();\n\tuseEffect( () => {\n\t\trefOnRequestClose.current = onRequestClose;\n\t}, [ onRequestClose ] );\n\n\t// The list of `onRequestClose` callbacks of open (non-nested) Modals. Only\n\t// one should remain open at a time and the list enables closing prior ones.\n\tconst dismissers = useContext( ModalContext );\n\t// Used for the tracking and dismissing any nested modals.\n\tconst nestedDismissers = useRef< typeof level0Dismissers >( [] );\n\n\t// Updates the stack tracking open modals at this level and calls\n\t// onRequestClose for any prior and/or nested modals as applicable.\n\tuseEffect( () => {\n\t\tdismissers.push( refOnRequestClose );\n\t\tconst [ first, second ] = dismissers;\n\t\tif ( second ) first?.current?.();\n\n\t\tconst nested = nestedDismissers.current;\n\t\treturn () => {\n\t\t\tnested[ 0 ]?.current?.();\n\t\t\tdismissers.shift();\n\t\t};\n\t}, [ dismissers ] );\n\n\tconst isLevel0 = dismissers === level0Dismissers;\n\t// Adds/removes the value of bodyOpenClassName to body element.\n\tuseEffect( () => {\n\t\tif ( ! isBodyOpenClassActive ) {\n\t\t\tisBodyOpenClassActive = true;\n\t\t\tdocument.body.classList.add( bodyOpenClassName );\n\t\t}\n\t\treturn () => {\n\t\t\tif ( isLevel0 && dismissers.length === 0 ) {\n\t\t\t\tdocument.body.classList.remove( bodyOpenClassName );\n\t\t\t\tisBodyOpenClassActive = false;\n\t\t\t}\n\t\t};\n\t}, [ bodyOpenClassName, dismissers, isLevel0 ] );\n\n\t// Calls the isContentScrollable callback when the Modal children container resizes.\n\tuseLayoutEffect( () => {\n\t\tif ( ! window.ResizeObserver || ! childrenContainerRef.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst resizeObserver = new ResizeObserver( isContentScrollable );\n\t\tresizeObserver.observe( childrenContainerRef.current );\n\n\t\tisContentScrollable();\n\n\t\treturn () => {\n\t\t\tresizeObserver.disconnect();\n\t\t};\n\t}, [ isContentScrollable, childrenContainerRef ] );\n\n\tfunction handleEscapeKeyDown( event: KeyboardEvent< HTMLDivElement > ) {\n\t\tif (\n\t\t\t// Ignore keydowns from IMEs\n\t\t\tevent.nativeEvent.isComposing ||\n\t\t\t// Workaround for Mac Safari where the final Enter/Backspace of an IME composition\n\t\t\t// is `isComposing=false`, even though it's technically still part of the composition.\n\t\t\t// These can only be detected by keyCode.\n\t\t\tevent.keyCode === 229\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (\n\t\t\tshouldCloseOnEsc &&\n\t\t\tevent.code === 'Escape' &&\n\t\t\t! event.defaultPrevented\n\t\t) {\n\t\t\tevent.preventDefault();\n\t\t\tif ( onRequestClose ) {\n\t\t\t\tonRequestClose( event );\n\t\t\t}\n\t\t}\n\t}\n\n\tconst onContentContainerScroll = useCallback(\n\t\t( e: UIEvent< HTMLDivElement > ) => {\n\t\t\tconst scrollY = e?.currentTarget?.scrollTop ?? -1;\n\n\t\t\tif ( ! hasScrolledContent && scrollY > 0 ) {\n\t\t\t\tsetHasScrolledContent( true );\n\t\t\t} else if ( hasScrolledContent && scrollY <= 0 ) {\n\t\t\t\tsetHasScrolledContent( false );\n\t\t\t}\n\t\t},\n\t\t[ hasScrolledContent ]\n\t);\n\n\tlet pressTarget: EventTarget | null = null;\n\tconst overlayPressHandlers: {\n\t\tonPointerDown: React.PointerEventHandler< HTMLDivElement >;\n\t\tonPointerUp: React.PointerEventHandler< HTMLDivElement >;\n\t} = {\n\t\tonPointerDown: ( event ) => {\n\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\tpressTarget = event.target;\n\t\t\t\t// Avoids focus changing so that focus return works as expected.\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t// Closes the modal with two exceptions. 1. Opening the context menu on\n\t\t// the overlay. 2. Pressing on the overlay then dragging the pointer\n\t\t// over the modal and releasing. Due to the modal being a child of the\n\t\t// overlay, such a gesture is a `click` on the overlay and cannot be\n\t\t// excepted by a `click` handler. Thus the tactic of handling\n\t\t// `pointerup` and comparing its target to that of the `pointerdown`.\n\t\tonPointerUp: ( { target, button } ) => {\n\t\t\tconst isSameTarget = target === pressTarget;\n\t\t\tpressTarget = null;\n\t\t\tif ( button === 0 && isSameTarget ) onRequestClose();\n\t\t},\n\t};\n\n\tconst modal = (\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\tref={ useMergeRefs( [ ref, forwardedRef ] ) }\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-modal__screen-overlay',\n\t\t\t\toverlayClassName\n\t\t\t) }\n\t\t\tonKeyDown={ handleEscapeKeyDown }\n\t\t\t{ ...( shouldCloseOnClickOutside ? overlayPressHandlers : {} ) }\n\t\t>\n\t\t\t<StyleProvider document={ document }>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'components-modal__frame',\n\t\t\t\t\t\tsizeClass,\n\t\t\t\t\t\tclassName\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ style }\n\t\t\t\t\tref={ useMergeRefs( [\n\t\t\t\t\t\tconstrainedTabbingRef,\n\t\t\t\t\t\tfocusReturnRef,\n\t\t\t\t\t\tfocusOnMount !== 'firstContentElement'\n\t\t\t\t\t\t\t? focusOnMountRef\n\t\t\t\t\t\t\t: null,\n\t\t\t\t\t] ) }\n\t\t\t\t\trole={ role }\n\t\t\t\t\taria-label={ contentLabel }\n\t\t\t\t\taria-labelledby={ contentLabel ? undefined : headingId }\n\t\t\t\t\taria-describedby={ aria.describedby }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t\tonKeyDown={ onKeyDown }\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames( 'components-modal__content', {\n\t\t\t\t\t\t\t'hide-header': __experimentalHideHeader,\n\t\t\t\t\t\t\t'is-scrollable': hasScrollableContent,\n\t\t\t\t\t\t\t'has-scrolled-content': hasScrolledContent,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\trole=\"document\"\n\t\t\t\t\t\tonScroll={ onContentContainerScroll }\n\t\t\t\t\t\tref={ contentRef }\n\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\thasScrollableContent\n\t\t\t\t\t\t\t\t? __( 'Scrollable section' )\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttabIndex={ hasScrollableContent ? 0 : undefined }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! __experimentalHideHeader && (\n\t\t\t\t\t\t\t<div className=\"components-modal__header\">\n\t\t\t\t\t\t\t\t<div className=\"components-modal__header-heading-container\">\n\t\t\t\t\t\t\t\t\t{ icon && (\n\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"components-modal__icon-container\"\n\t\t\t\t\t\t\t\t\t\t\taria-hidden\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ icon }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ title && (\n\t\t\t\t\t\t\t\t\t\t<h1\n\t\t\t\t\t\t\t\t\t\t\tid={ headingId }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"components-modal__header-heading\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t{ headerActions }\n\t\t\t\t\t\t\t\t{ isDismissible && (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tonClick={ onRequestClose }\n\t\t\t\t\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\tcloseButtonLabel || __( 'Close' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ useMergeRefs( [\n\t\t\t\t\t\t\t\tchildrenContainerRef,\n\t\t\t\t\t\t\t\tfocusOnMount === 'firstContentElement'\n\t\t\t\t\t\t\t\t\t? focusOnMountRef\n\t\t\t\t\t\t\t\t\t: null,\n\t\t\t\t\t\t\t] ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</StyleProvider>\n\t\t</div>\n\t);\n\n\treturn createPortal(\n\t\t<ModalContext.Provider value={ nestedDismissers.current }>\n\t\t\t{ modal }\n\t\t</ModalContext.Provider>,\n\t\tdocument.body\n\t);\n}\n\n/**\n * Modals give users information and choices related to a task they’re trying to\n * accomplish. They can contain critical information, require decisions, or\n * involve multiple tasks.\n *\n * ```jsx\n * import { Button, Modal } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyModal = () => {\n * const [ isOpen, setOpen ] = useState( false );\n * const openModal = () => setOpen( true );\n * const closeModal = () => setOpen( false );\n *\n * return (\n * <>\n * <Button variant=\"secondary\" onClick={ openModal }>\n * Open Modal\n * </Button>\n * { isOpen && (\n * <Modal title=\"This is my modal\" onRequestClose={ closeModal }>\n * <Button variant=\"secondary\" onClick={ closeModal }>\n * My custom close button\n * </Button>\n * </Modal>\n * ) }\n * </>\n * );\n * };\n * ```\n */\nexport const Modal = forwardRef( UnforwardedModal );\n\nexport default Modal;\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,sBAAA,CAAAC,OAAA;AAWA,IAAAC,QAAA,GAAAD,OAAA;AAWA,IAAAE,QAAA,GAAAF,OAAA;AAOA,IAAAG,KAAA,GAAAH,OAAA;AACA,IAAAI,MAAA,GAAAJ,OAAA;AACA,IAAAK,IAAA,GAAAL,OAAA;AAKA,IAAAM,UAAA,GAAAC,uBAAA,CAAAP,OAAA;AACA,IAAAQ,OAAA,GAAAT,sBAAA,CAAAC,OAAA;AACA,IAAAS,cAAA,GAAAV,sBAAA,CAAAC,OAAA;AAA8C,SAAAU,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAJ,wBAAAQ,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,GAAA,IAAAX,GAAA,QAAAW,GAAA,kBAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAd,GAAA,EAAAW,GAAA,SAAAI,IAAA,GAAAR,qBAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAV,GAAA,EAAAW,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAV,GAAA,IAAAU,IAAA,CAAAC,GAAA,KAAAR,MAAA,CAAAC,cAAA,CAAAH,MAAA,EAAAK,GAAA,EAAAI,IAAA,YAAAT,MAAA,CAAAK,GAAA,IAAAX,GAAA,CAAAW,GAAA,SAAAL,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAa,GAAA,CAAAhB,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAzC9C;AACA;AACA;;AASA;AACA;AACA;;AAuBA;AACA;AACA;;AAMA;AACA,MAAMW,gBAEH,GAAG,EAAE;AACR,MAAMC,YAAY,GAAG,IAAAC,sBAAa,EAAEF,gBAAiB,CAAC;AAEtD,IAAIG,qBAAqB,GAAG,KAAK;AAEjC,SAASC,gBAAgBA,CACxBC,KAAiB,EACjBC,YAA4C,EAC3C;EACD,MAAM;IACLC,iBAAiB,GAAG,YAAY;IAChCC,IAAI,GAAG,QAAQ;IACfC,KAAK,GAAG,IAAI;IACZC,YAAY,GAAG,IAAI;IACnBC,gBAAgB,GAAG,IAAI;IACvBC,yBAAyB,GAAG,IAAI;IAChCC,aAAa,GAAG,IAAI;IACpB;IACAC,IAAI,GAAG;MACNC,UAAU,EAAEC,SAAS;MACrBC,WAAW,EAAED;IACd,CAAC;IACDE,cAAc;IACdC,IAAI;IACJC,gBAAgB;IAChBC,QAAQ;IACRC,KAAK;IACLC,gBAAgB;IAChBC,SAAS;IACTC,YAAY;IACZC,SAAS;IACTC,YAAY,GAAG,KAAK;IACpBC,IAAI;IACJC,aAAa,GAAG,IAAI;IACpBC,wBAAwB,GAAG;EAC5B,CAAC,GAAGzB,KAAK;EAET,MAAM0B,GAAG,GAAG,IAAAC,eAAM,EAAmB,CAAC;EAEtC,MAAMC,UAAU,GAAG,IAAAC,sBAAa,EAAEC,KAAM,CAAC;EACzC,MAAMC,SAAS,GAAG3B,KAAK,GACnB,2BAA2BwB,UAAY,EAAC,GACzCnB,IAAI,CAACC,UAAU;;EAElB;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,MAAMsB,eAAe,GAAG,IAAAC,wBAAe,EACtC5B,YAAY,KAAK,qBAAqB,GAAG,cAAc,GAAGA,YAC3D,CAAC;EACD,MAAM6B,qBAAqB,GAAG,IAAAC,8BAAqB,EAAC,CAAC;EACrD,MAAMC,cAAc,GAAG,IAAAC,uBAAc,EAAC,CAAC;EACvC,MAAMC,UAAU,GAAG,IAAAX,eAAM,EAAoB,IAAK,CAAC;EACnD,MAAMY,oBAAoB,GAAG,IAAAZ,eAAM,EAAoB,IAAK,CAAC;EAE7D,MAAM,CAAEa,kBAAkB,EAAEC,qBAAqB,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACvE,MAAM,CAAEC,oBAAoB,EAAEC,uBAAuB,CAAE,GAAG,IAAAF,iBAAQ,EAAE,KAAM,CAAC;EAE3E,IAAIG,SAAS;EACb,IAAKvB,YAAY,IAAIC,IAAI,KAAK,MAAM,EAAG;IACtCsB,SAAS,GAAG,gBAAgB;EAC7B,CAAC,MAAM,IAAKtB,IAAI,EAAG;IAClBsB,SAAS,GAAI,YAAYtB,IAAM,EAAC;EACjC;;EAEA;EACA,MAAMuB,mBAAmB,GAAG,IAAAC,oBAAW,EAAE,MAAM;IAC9C,IAAK,CAAET,UAAU,CAACU,OAAO,EAAG;MAC3B;IACD;IAEA,MAAMC,sBAAsB,GAAG,IAAAC,uBAAkB,EAAEZ,UAAU,CAACU,OAAQ,CAAC;IAEvE,IAAKV,UAAU,CAACU,OAAO,KAAKC,sBAAsB,EAAG;MACpDL,uBAAuB,CAAE,IAAK,CAAC;IAChC,CAAC,MAAM;MACNA,uBAAuB,CAAE,KAAM,CAAC;IACjC;EACD,CAAC,EAAE,CAAEN,UAAU,CAAG,CAAC;;EAEnB;EACA,IAAAa,kBAAS,EAAE,MAAM;IAChBlF,UAAU,CAACmF,QAAQ,CAAE1B,GAAG,CAACsB,OAAQ,CAAC;IAClC,OAAO,MAAM/E,UAAU,CAACoF,UAAU,CAAC,CAAC;EACrC,CAAC,EAAE,EAAG,CAAC;;EAEP;EACA,MAAMC,iBAAiB,GAAG,IAAA3B,eAAM,EAAmC,CAAC;EACpE,IAAAwB,kBAAS,EAAE,MAAM;IAChBG,iBAAiB,CAACN,OAAO,GAAGnC,cAAc;EAC3C,CAAC,EAAE,CAAEA,cAAc,CAAG,CAAC;;EAEvB;EACA;EACA,MAAM0C,UAAU,GAAG,IAAAC,mBAAU,EAAE5D,YAAa,CAAC;EAC7C;EACA,MAAM6D,gBAAgB,GAAG,IAAA9B,eAAM,EAA6B,EAAG,CAAC;;EAEhE;EACA;EACA,IAAAwB,kBAAS,EAAE,MAAM;IAChBI,UAAU,CAACG,IAAI,CAAEJ,iBAAkB,CAAC;IACpC,MAAM,CAAEK,KAAK,EAAEC,MAAM,CAAE,GAAGL,UAAU;IACpC,IAAKK,MAAM,EAAGD,KAAK,EAAEX,OAAO,GAAG,CAAC;IAEhC,MAAMa,MAAM,GAAGJ,gBAAgB,CAACT,OAAO;IACvC,OAAO,MAAM;MACZa,MAAM,CAAE,CAAC,CAAE,EAAEb,OAAO,GAAG,CAAC;MACxBO,UAAU,CAACO,KAAK,CAAC,CAAC;IACnB,CAAC;EACF,CAAC,EAAE,CAAEP,UAAU,CAAG,CAAC;EAEnB,MAAMQ,QAAQ,GAAGR,UAAU,KAAK5D,gBAAgB;EAChD;EACA,IAAAwD,kBAAS,EAAE,MAAM;IAChB,IAAK,CAAErD,qBAAqB,EAAG;MAC9BA,qBAAqB,GAAG,IAAI;MAC5BkE,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACC,GAAG,CAAEjE,iBAAkB,CAAC;IACjD;IACA,OAAO,MAAM;MACZ,IAAK6D,QAAQ,IAAIR,UAAU,CAACa,MAAM,KAAK,CAAC,EAAG;QAC1CJ,QAAQ,CAACC,IAAI,CAACC,SAAS,CAACG,MAAM,CAAEnE,iBAAkB,CAAC;QACnDJ,qBAAqB,GAAG,KAAK;MAC9B;IACD,CAAC;EACF,CAAC,EAAE,CAAEI,iBAAiB,EAAEqD,UAAU,EAAEQ,QAAQ,CAAG,CAAC;;EAEhD;EACA,IAAAO,wBAAe,EAAE,MAAM;IACtB,IAAK,CAAEC,MAAM,CAACC,cAAc,IAAI,CAAEjC,oBAAoB,CAACS,OAAO,EAAG;MAChE;IACD;IAEA,MAAMyB,cAAc,GAAG,IAAID,cAAc,CAAE1B,mBAAoB,CAAC;IAChE2B,cAAc,CAACC,OAAO,CAAEnC,oBAAoB,CAACS,OAAQ,CAAC;IAEtDF,mBAAmB,CAAC,CAAC;IAErB,OAAO,MAAM;MACZ2B,cAAc,CAACE,UAAU,CAAC,CAAC;IAC5B,CAAC;EACF,CAAC,EAAE,CAAE7B,mBAAmB,EAAEP,oBAAoB,CAAG,CAAC;EAElD,SAASqC,mBAAmBA,CAAEC,KAAsC,EAAG;IACtE;IACC;IACAA,KAAK,CAACC,WAAW,CAACC,WAAW;IAC7B;IACA;IACA;IACAF,KAAK,CAACG,OAAO,KAAK,GAAG,EACpB;MACD;IACD;IAEA,IACC1E,gBAAgB,IAChBuE,KAAK,CAACI,IAAI,KAAK,QAAQ,IACvB,CAAEJ,KAAK,CAACK,gBAAgB,EACvB;MACDL,KAAK,CAACM,cAAc,CAAC,CAAC;MACtB,IAAKtE,cAAc,EAAG;QACrBA,cAAc,CAAEgE,KAAM,CAAC;MACxB;IACD;EACD;EAEA,MAAMO,wBAAwB,GAAG,IAAArC,oBAAW,EACzCsC,CAA4B,IAAM;IAAA,IAAAC,qBAAA;IACnC,MAAMC,OAAO,IAAAD,qBAAA,GAAGD,CAAC,EAAEG,aAAa,EAAEC,SAAS,cAAAH,qBAAA,cAAAA,qBAAA,GAAI,CAAC,CAAC;IAEjD,IAAK,CAAE9C,kBAAkB,IAAI+C,OAAO,GAAG,CAAC,EAAG;MAC1C9C,qBAAqB,CAAE,IAAK,CAAC;IAC9B,CAAC,MAAM,IAAKD,kBAAkB,IAAI+C,OAAO,IAAI,CAAC,EAAG;MAChD9C,qBAAqB,CAAE,KAAM,CAAC;IAC/B;EACD,CAAC,EACD,CAAED,kBAAkB,CACrB,CAAC;EAED,IAAIkD,WAA+B,GAAG,IAAI;EAC1C,MAAMC,oBAGL,GAAG;IACHC,aAAa,EAAIf,KAAK,IAAM;MAC3B,IAAKA,KAAK,CAACgB,MAAM,KAAKhB,KAAK,CAACW,aAAa,EAAG;QAC3CE,WAAW,GAAGb,KAAK,CAACgB,MAAM;QAC1B;QACAhB,KAAK,CAACM,cAAc,CAAC,CAAC;MACvB;IACD,CAAC;IACD;IACA;IACA;IACA;IACA;IACA;IACAW,WAAW,EAAEA,CAAE;MAAED,MAAM;MAAEE;IAAO,CAAC,KAAM;MACtC,MAAMC,YAAY,GAAGH,MAAM,KAAKH,WAAW;MAC3CA,WAAW,GAAG,IAAI;MAClB,IAAKK,MAAM,KAAK,CAAC,IAAIC,YAAY,EAAGnF,cAAc,CAAC,CAAC;IACrD;EACD,CAAC;EAED,MAAMoF,KAAK;EACV;EACA,IAAAC,MAAA,CAAAC,aAAA;IACCzE,GAAG,EAAG,IAAA0E,qBAAY,EAAE,CAAE1E,GAAG,EAAEzB,YAAY,CAAG,CAAG;IAC7CkB,SAAS,EAAG,IAAAkF,mBAAU,EACrB,kCAAkC,EAClCnF,gBACD,CAAG;IACHG,SAAS,EAAGuD,mBAAqB;IAAA,IAC1BrE,yBAAyB,GAAGoF,oBAAoB,GAAG,CAAC,CAAC;EAAA,GAE5D,IAAAO,MAAA,CAAAC,aAAA,EAAC/H,cAAA,CAAAQ,OAAa;IAACoF,QAAQ,EAAGA;EAAU,GACnC,IAAAkC,MAAA,CAAAC,aAAA;IACChF,SAAS,EAAG,IAAAkF,mBAAU,EACrB,yBAAyB,EACzBxD,SAAS,EACT1B,SACD,CAAG;IACHF,KAAK,EAAGA,KAAO;IACfS,GAAG,EAAG,IAAA0E,qBAAY,EAAE,CACnBlE,qBAAqB,EACrBE,cAAc,EACd/B,YAAY,KAAK,qBAAqB,GACnC2B,eAAe,GACf,IAAI,CACN,CAAG;IACL7B,IAAI,EAAGA,IAAM;IACb,cAAaiB,YAAc;IAC3B,mBAAkBA,YAAY,GAAGT,SAAS,GAAGoB,SAAW;IACxD,oBAAmBtB,IAAI,CAACG,WAAa;IACrC0F,QAAQ,EAAG,CAAC,CAAG;IACfjF,SAAS,EAAGA;EAAW,GAEvB,IAAA6E,MAAA,CAAAC,aAAA;IACChF,SAAS,EAAG,IAAAkF,mBAAU,EAAE,2BAA2B,EAAE;MACpD,aAAa,EAAE5E,wBAAwB;MACvC,eAAe,EAAEkB,oBAAoB;MACrC,sBAAsB,EAAEH;IACzB,CAAE,CAAG;IACLrC,IAAI,EAAC,UAAU;IACfoG,QAAQ,EAAGnB,wBAA0B;IACrC1D,GAAG,EAAGY,UAAY;IAClB,cACCK,oBAAoB,GACjB,IAAA6D,QAAE,EAAE,oBAAqB,CAAC,GAC1B7F,SACH;IACD2F,QAAQ,EAAG3D,oBAAoB,GAAG,CAAC,GAAGhC;EAAW,GAE/C,CAAEc,wBAAwB,IAC3B,IAAAyE,MAAA,CAAAC,aAAA;IAAKhF,SAAS,EAAC;EAA0B,GACxC,IAAA+E,MAAA,CAAAC,aAAA;IAAKhF,SAAS,EAAC;EAA4C,GACxDL,IAAI,IACL,IAAAoF,MAAA,CAAAC,aAAA;IACChF,SAAS,EAAC,kCAAkC;IAC5C;EAAW,GAETL,IACG,CACN,EACCV,KAAK,IACN,IAAA8F,MAAA,CAAAC,aAAA;IACCM,EAAE,EAAG1E,SAAW;IAChBZ,SAAS,EAAC;EAAkC,GAE1Cf,KACC,CAED,CAAC,EACJoB,aAAa,EACbhB,aAAa,IACd,IAAA0F,MAAA,CAAAC,aAAA,EAAChI,OAAA,CAAAS,OAAM;IACN8H,OAAO,EAAG7F,cAAgB;IAC1BC,IAAI,EAAG6F,YAAO;IACdC,KAAK,EACJ7F,gBAAgB,IAAI,IAAAyF,QAAE,EAAE,OAAQ;EAChC,CACD,CAEE,CACL,EAED,IAAAN,MAAA,CAAAC,aAAA;IACCzE,GAAG,EAAG,IAAA0E,qBAAY,EAAE,CACnB7D,oBAAoB,EACpBlC,YAAY,KAAK,qBAAqB,GACnC2B,eAAe,GACf,IAAI,CACN;EAAG,GAEHhB,QACE,CACD,CACD,CACS,CACX,CACL;EAED,OAAO,IAAA6F,qBAAY,EAClB,IAAAX,MAAA,CAAAC,aAAA,EAACvG,YAAY,CAACkH,QAAQ;IAACC,KAAK,EAAGtD,gBAAgB,CAACT;EAAS,GACtDiD,KACoB,CAAC,EACxBjC,QAAQ,CAACC,IACV,CAAC;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMnC,KAAK,GAAG,IAAAkF,mBAAU,EAAEjH,gBAAiB,CAAC;AAACkH,OAAA,CAAAnF,KAAA,GAAAA,KAAA;AAAA,IAAAoF,QAAA,GAErCpF,KAAK;AAAAmF,OAAA,CAAArI,OAAA,GAAAsI,QAAA"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_element","_compose","_i18n","_icons","_dom","ariaHelper","_interopRequireWildcard","_button","_styleProvider","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","ModalContext","createContext","bodyOpenClasses","Map","UnforwardedModal","props","forwardedRef","bodyOpenClassName","role","title","focusOnMount","shouldCloseOnEsc","shouldCloseOnClickOutside","isDismissible","aria","labelledby","undefined","describedby","onRequestClose","icon","closeButtonLabel","children","style","overlayClassName","className","contentLabel","onKeyDown","isFullScreen","size","headerActions","__experimentalHideHeader","ref","useRef","instanceId","useInstanceId","Modal","headingId","focusOnMountRef","useFocusOnMount","constrainedTabbingRef","useConstrainedTabbing","focusReturnRef","useFocusReturn","contentRef","childrenContainerRef","hasScrolledContent","setHasScrolledContent","useState","hasScrollableContent","setHasScrollableContent","sizeClass","isContentScrollable","useCallback","current","closestScrollContainer","getScrollContainer","useEffect","modalize","unmodalize","refOnRequestClose","dismissers","useContext","nestedDismissers","push","first","second","nested","shift","_bodyOpenClasses$get","theClass","oneMore","document","body","classList","add","oneLess","remove","delete","useLayoutEffect","window","ResizeObserver","resizeObserver","observe","disconnect","handleEscapeKeyDown","event","nativeEvent","isComposing","keyCode","code","defaultPrevented","preventDefault","onContentContainerScroll","e","_e$currentTarget$scro","scrollY","currentTarget","scrollTop","pressTarget","overlayPressHandlers","onPointerDown","target","onPointerUp","button","isSameTarget","modal","_react","createElement","useMergeRefs","classnames","tabIndex","onScroll","__","id","onClick","close","label","createPortal","Provider","value","forwardRef","exports","_default"],"sources":["@wordpress/components/src/modal/index.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\nimport type {\n\tForwardedRef,\n\tKeyboardEvent,\n\tMutableRefObject,\n\tUIEvent,\n} from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tcreatePortal,\n\tuseCallback,\n\tuseEffect,\n\tuseRef,\n\tuseState,\n\tforwardRef,\n\tuseLayoutEffect,\n\tcreateContext,\n\tuseContext,\n} from '@wordpress/element';\nimport {\n\tuseInstanceId,\n\tuseFocusReturn,\n\tuseFocusOnMount,\n\tuseConstrainedTabbing,\n\tuseMergeRefs,\n} from '@wordpress/compose';\nimport { __ } from '@wordpress/i18n';\nimport { close } from '@wordpress/icons';\nimport { getScrollContainer } from '@wordpress/dom';\n\n/**\n * Internal dependencies\n */\nimport * as ariaHelper from './aria-helper';\nimport Button from '../button';\nimport StyleProvider from '../style-provider';\nimport type { ModalProps } from './types';\n\n// Used to track and dismiss the prior modal when another opens unless nested.\nconst ModalContext = createContext<\n\tMutableRefObject< ModalProps[ 'onRequestClose' ] | undefined >[]\n>( [] );\n\n// Used to track body class names applied while modals are open.\nconst bodyOpenClasses = new Map< string, number >();\n\nfunction UnforwardedModal(\n\tprops: ModalProps,\n\tforwardedRef: ForwardedRef< HTMLDivElement >\n) {\n\tconst {\n\t\tbodyOpenClassName = 'modal-open',\n\t\trole = 'dialog',\n\t\ttitle = null,\n\t\tfocusOnMount = true,\n\t\tshouldCloseOnEsc = true,\n\t\tshouldCloseOnClickOutside = true,\n\t\tisDismissible = true,\n\t\t/* Accessibility. */\n\t\taria = {\n\t\t\tlabelledby: undefined,\n\t\t\tdescribedby: undefined,\n\t\t},\n\t\tonRequestClose,\n\t\ticon,\n\t\tcloseButtonLabel,\n\t\tchildren,\n\t\tstyle,\n\t\toverlayClassName,\n\t\tclassName,\n\t\tcontentLabel,\n\t\tonKeyDown,\n\t\tisFullScreen = false,\n\t\tsize,\n\t\theaderActions = null,\n\t\t__experimentalHideHeader = false,\n\t} = props;\n\n\tconst ref = useRef< HTMLDivElement >();\n\n\tconst instanceId = useInstanceId( Modal );\n\tconst headingId = title\n\t\t? `components-modal-header-${ instanceId }`\n\t\t: aria.labelledby;\n\n\t// The focus hook does not support 'firstContentElement' but this is a valid\n\t// value for the Modal's focusOnMount prop. The following code ensures the focus\n\t// hook will focus the first focusable node within the element to which it is applied.\n\t// When `firstContentElement` is passed as the value of the focusOnMount prop,\n\t// the focus hook is applied to the Modal's content element.\n\t// Otherwise, the focus hook is applied to the Modal's ref. This ensures that the\n\t// focus hook will focus the first element in the Modal's **content** when\n\t// `firstContentElement` is passed.\n\tconst focusOnMountRef = useFocusOnMount(\n\t\tfocusOnMount === 'firstContentElement' ? 'firstElement' : focusOnMount\n\t);\n\tconst constrainedTabbingRef = useConstrainedTabbing();\n\tconst focusReturnRef = useFocusReturn();\n\tconst contentRef = useRef< HTMLDivElement >( null );\n\tconst childrenContainerRef = useRef< HTMLDivElement >( null );\n\n\tconst [ hasScrolledContent, setHasScrolledContent ] = useState( false );\n\tconst [ hasScrollableContent, setHasScrollableContent ] = useState( false );\n\n\tlet sizeClass;\n\tif ( isFullScreen || size === 'fill' ) {\n\t\tsizeClass = 'is-full-screen';\n\t} else if ( size ) {\n\t\tsizeClass = `has-size-${ size }`;\n\t}\n\n\t// Determines whether the Modal content is scrollable and updates the state.\n\tconst isContentScrollable = useCallback( () => {\n\t\tif ( ! contentRef.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst closestScrollContainer = getScrollContainer( contentRef.current );\n\n\t\tif ( contentRef.current === closestScrollContainer ) {\n\t\t\tsetHasScrollableContent( true );\n\t\t} else {\n\t\t\tsetHasScrollableContent( false );\n\t\t}\n\t}, [ contentRef ] );\n\n\t// Accessibly isolates/unisolates the modal.\n\tuseEffect( () => {\n\t\tariaHelper.modalize( ref.current );\n\t\treturn () => ariaHelper.unmodalize();\n\t}, [] );\n\n\t// Keeps a fresh ref for the subsequent effect.\n\tconst refOnRequestClose = useRef< ModalProps[ 'onRequestClose' ] >();\n\tuseEffect( () => {\n\t\trefOnRequestClose.current = onRequestClose;\n\t}, [ onRequestClose ] );\n\n\t// The list of `onRequestClose` callbacks of open (non-nested) Modals. Only\n\t// one should remain open at a time and the list enables closing prior ones.\n\tconst dismissers = useContext( ModalContext );\n\t// Used for the tracking and dismissing any nested modals.\n\tconst nestedDismissers = useRef< typeof dismissers >( [] );\n\n\t// Updates the stack tracking open modals at this level and calls\n\t// onRequestClose for any prior and/or nested modals as applicable.\n\tuseEffect( () => {\n\t\tdismissers.push( refOnRequestClose );\n\t\tconst [ first, second ] = dismissers;\n\t\tif ( second ) first?.current?.();\n\n\t\tconst nested = nestedDismissers.current;\n\t\treturn () => {\n\t\t\tnested[ 0 ]?.current?.();\n\t\t\tdismissers.shift();\n\t\t};\n\t}, [ dismissers ] );\n\n\t// Adds/removes the value of bodyOpenClassName to body element.\n\tuseEffect( () => {\n\t\tconst theClass = bodyOpenClassName;\n\t\tconst oneMore = 1 + ( bodyOpenClasses.get( theClass ) ?? 0 );\n\t\tbodyOpenClasses.set( theClass, oneMore );\n\t\tdocument.body.classList.add( bodyOpenClassName );\n\t\treturn () => {\n\t\t\tconst oneLess = bodyOpenClasses.get( theClass )! - 1;\n\t\t\tif ( oneLess === 0 ) {\n\t\t\t\tdocument.body.classList.remove( theClass );\n\t\t\t\tbodyOpenClasses.delete( theClass );\n\t\t\t} else {\n\t\t\t\tbodyOpenClasses.set( theClass, oneLess );\n\t\t\t}\n\t\t};\n\t}, [ bodyOpenClassName ] );\n\n\t// Calls the isContentScrollable callback when the Modal children container resizes.\n\tuseLayoutEffect( () => {\n\t\tif ( ! window.ResizeObserver || ! childrenContainerRef.current ) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst resizeObserver = new ResizeObserver( isContentScrollable );\n\t\tresizeObserver.observe( childrenContainerRef.current );\n\n\t\tisContentScrollable();\n\n\t\treturn () => {\n\t\t\tresizeObserver.disconnect();\n\t\t};\n\t}, [ isContentScrollable, childrenContainerRef ] );\n\n\tfunction handleEscapeKeyDown( event: KeyboardEvent< HTMLDivElement > ) {\n\t\tif (\n\t\t\t// Ignore keydowns from IMEs\n\t\t\tevent.nativeEvent.isComposing ||\n\t\t\t// Workaround for Mac Safari where the final Enter/Backspace of an IME composition\n\t\t\t// is `isComposing=false`, even though it's technically still part of the composition.\n\t\t\t// These can only be detected by keyCode.\n\t\t\tevent.keyCode === 229\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (\n\t\t\tshouldCloseOnEsc &&\n\t\t\t( event.code === 'Escape' || event.key === 'Escape' ) &&\n\t\t\t! event.defaultPrevented\n\t\t) {\n\t\t\tevent.preventDefault();\n\t\t\tif ( onRequestClose ) {\n\t\t\t\tonRequestClose( event );\n\t\t\t}\n\t\t}\n\t}\n\n\tconst onContentContainerScroll = useCallback(\n\t\t( e: UIEvent< HTMLDivElement > ) => {\n\t\t\tconst scrollY = e?.currentTarget?.scrollTop ?? -1;\n\n\t\t\tif ( ! hasScrolledContent && scrollY > 0 ) {\n\t\t\t\tsetHasScrolledContent( true );\n\t\t\t} else if ( hasScrolledContent && scrollY <= 0 ) {\n\t\t\t\tsetHasScrolledContent( false );\n\t\t\t}\n\t\t},\n\t\t[ hasScrolledContent ]\n\t);\n\n\tlet pressTarget: EventTarget | null = null;\n\tconst overlayPressHandlers: {\n\t\tonPointerDown: React.PointerEventHandler< HTMLDivElement >;\n\t\tonPointerUp: React.PointerEventHandler< HTMLDivElement >;\n\t} = {\n\t\tonPointerDown: ( event ) => {\n\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\tpressTarget = event.target;\n\t\t\t\t// Avoids focus changing so that focus return works as expected.\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t},\n\t\t// Closes the modal with two exceptions. 1. Opening the context menu on\n\t\t// the overlay. 2. Pressing on the overlay then dragging the pointer\n\t\t// over the modal and releasing. Due to the modal being a child of the\n\t\t// overlay, such a gesture is a `click` on the overlay and cannot be\n\t\t// excepted by a `click` handler. Thus the tactic of handling\n\t\t// `pointerup` and comparing its target to that of the `pointerdown`.\n\t\tonPointerUp: ( { target, button } ) => {\n\t\t\tconst isSameTarget = target === pressTarget;\n\t\t\tpressTarget = null;\n\t\t\tif ( button === 0 && isSameTarget ) onRequestClose();\n\t\t},\n\t};\n\n\tconst modal = (\n\t\t// eslint-disable-next-line jsx-a11y/no-static-element-interactions\n\t\t<div\n\t\t\tref={ useMergeRefs( [ ref, forwardedRef ] ) }\n\t\t\tclassName={ classnames(\n\t\t\t\t'components-modal__screen-overlay',\n\t\t\t\toverlayClassName\n\t\t\t) }\n\t\t\tonKeyDown={ handleEscapeKeyDown }\n\t\t\t{ ...( shouldCloseOnClickOutside ? overlayPressHandlers : {} ) }\n\t\t>\n\t\t\t<StyleProvider document={ document }>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t'components-modal__frame',\n\t\t\t\t\t\tsizeClass,\n\t\t\t\t\t\tclassName\n\t\t\t\t\t) }\n\t\t\t\t\tstyle={ style }\n\t\t\t\t\tref={ useMergeRefs( [\n\t\t\t\t\t\tconstrainedTabbingRef,\n\t\t\t\t\t\tfocusReturnRef,\n\t\t\t\t\t\tfocusOnMount !== 'firstContentElement'\n\t\t\t\t\t\t\t? focusOnMountRef\n\t\t\t\t\t\t\t: null,\n\t\t\t\t\t] ) }\n\t\t\t\t\trole={ role }\n\t\t\t\t\taria-label={ contentLabel }\n\t\t\t\t\taria-labelledby={ contentLabel ? undefined : headingId }\n\t\t\t\t\taria-describedby={ aria.describedby }\n\t\t\t\t\ttabIndex={ -1 }\n\t\t\t\t\tonKeyDown={ onKeyDown }\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tclassName={ classnames( 'components-modal__content', {\n\t\t\t\t\t\t\t'hide-header': __experimentalHideHeader,\n\t\t\t\t\t\t\t'is-scrollable': hasScrollableContent,\n\t\t\t\t\t\t\t'has-scrolled-content': hasScrolledContent,\n\t\t\t\t\t\t} ) }\n\t\t\t\t\t\trole=\"document\"\n\t\t\t\t\t\tonScroll={ onContentContainerScroll }\n\t\t\t\t\t\tref={ contentRef }\n\t\t\t\t\t\taria-label={\n\t\t\t\t\t\t\thasScrollableContent\n\t\t\t\t\t\t\t\t? __( 'Scrollable section' )\n\t\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttabIndex={ hasScrollableContent ? 0 : undefined }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ ! __experimentalHideHeader && (\n\t\t\t\t\t\t\t<div className=\"components-modal__header\">\n\t\t\t\t\t\t\t\t<div className=\"components-modal__header-heading-container\">\n\t\t\t\t\t\t\t\t\t{ icon && (\n\t\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"components-modal__icon-container\"\n\t\t\t\t\t\t\t\t\t\t\taria-hidden\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ icon }\n\t\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ title && (\n\t\t\t\t\t\t\t\t\t\t<h1\n\t\t\t\t\t\t\t\t\t\t\tid={ headingId }\n\t\t\t\t\t\t\t\t\t\t\tclassName=\"components-modal__header-heading\"\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t\t\t\t</h1>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t{ headerActions }\n\t\t\t\t\t\t\t\t{ isDismissible && (\n\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\tonClick={ onRequestClose }\n\t\t\t\t\t\t\t\t\t\ticon={ close }\n\t\t\t\t\t\t\t\t\t\tlabel={\n\t\t\t\t\t\t\t\t\t\t\tcloseButtonLabel || __( 'Close' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) }\n\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tref={ useMergeRefs( [\n\t\t\t\t\t\t\t\tchildrenContainerRef,\n\t\t\t\t\t\t\t\tfocusOnMount === 'firstContentElement'\n\t\t\t\t\t\t\t\t\t? focusOnMountRef\n\t\t\t\t\t\t\t\t\t: null,\n\t\t\t\t\t\t\t] ) }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ children }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</StyleProvider>\n\t\t</div>\n\t);\n\n\treturn createPortal(\n\t\t<ModalContext.Provider value={ nestedDismissers.current }>\n\t\t\t{ modal }\n\t\t</ModalContext.Provider>,\n\t\tdocument.body\n\t);\n}\n\n/**\n * Modals give users information and choices related to a task they’re trying to\n * accomplish. They can contain critical information, require decisions, or\n * involve multiple tasks.\n *\n * ```jsx\n * import { Button, Modal } from '@wordpress/components';\n * import { useState } from '@wordpress/element';\n *\n * const MyModal = () => {\n * const [ isOpen, setOpen ] = useState( false );\n * const openModal = () => setOpen( true );\n * const closeModal = () => setOpen( false );\n *\n * return (\n * <>\n * <Button variant=\"secondary\" onClick={ openModal }>\n * Open Modal\n * </Button>\n * { isOpen && (\n * <Modal title=\"This is my modal\" onRequestClose={ closeModal }>\n * <Button variant=\"secondary\" onClick={ closeModal }>\n * My custom close button\n * </Button>\n * </Modal>\n * ) }\n * </>\n * );\n * };\n * ```\n */\nexport const Modal = forwardRef( UnforwardedModal );\n\nexport default Modal;\n"],"mappings":"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"}
@@ -59,7 +59,7 @@ function NavigationMenuTitle({
59
59
  }, (0, _react.createElement)("span", {
60
60
  id: menuTitleId
61
61
  }, title), (hasSearch || titleAction) && (0, _react.createElement)(_navigationStyles.MenuTitleActionsUI, null, titleAction, hasSearch && (0, _react.createElement)(_button.default, {
62
- isSmall: true,
62
+ size: "small",
63
63
  variant: "tertiary",
64
64
  label: searchButtonLabel,
65
65
  onClick: () => setIsSearching(true),
@@ -1 +1 @@
1
- {"version":3,"names":["_element","require","_i18n","_icons","_animate","_button","_interopRequireDefault","_menuTitleSearch","_navigationStyles","_context","_constants","NavigationMenuTitle","hasSearch","onSearch","search","title","titleAction","isSearching","setIsSearching","useState","menu","useNavigationMenuContext","searchButtonRef","useRef","onCloseSearch","setTimeout","current","focus","SEARCH_FOCUS_DELAY","menuTitleId","searchButtonLabel","sprintf","__","_react","createElement","MenuTitleUI","className","GroupTitleUI","as","level","id","MenuTitleActionsUI","default","isSmall","variant","label","onClick","ref","Icon","icon","searchIcon","getAnimateClassName","type","origin"],"sources":["@wordpress/components/src/navigation/menu/menu-title.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Icon, search as searchIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { getAnimateClassName } from '../../animate';\nimport Button from '../../button';\nimport MenuTitleSearch from './menu-title-search';\nimport {\n\tGroupTitleUI,\n\tMenuTitleActionsUI,\n\tMenuTitleUI,\n} from '../styles/navigation-styles';\nimport { useNavigationMenuContext } from './context';\nimport { SEARCH_FOCUS_DELAY } from '../constants';\n\nimport type { NavigationMenuTitleProps } from '../types';\n\nexport default function NavigationMenuTitle( {\n\thasSearch,\n\tonSearch,\n\tsearch,\n\ttitle,\n\ttitleAction,\n}: NavigationMenuTitleProps ) {\n\tconst [ isSearching, setIsSearching ] = useState( false );\n\tconst { menu } = useNavigationMenuContext();\n\tconst searchButtonRef = useRef< HTMLElement >( null );\n\n\tif ( ! title ) {\n\t\treturn null;\n\t}\n\n\tconst onCloseSearch = () => {\n\t\tsetIsSearching( false );\n\n\t\t// Wait for the slide-in animation to complete before focusing the search button.\n\t\t// eslint-disable-next-line @wordpress/react-no-unsafe-timeout\n\t\tsetTimeout( () => {\n\t\t\tsearchButtonRef.current?.focus();\n\t\t}, SEARCH_FOCUS_DELAY );\n\t};\n\n\tconst menuTitleId = `components-navigation__menu-title-${ menu }`;\n\t/* translators: search button label for menu search box. %s: menu title */\n\tconst searchButtonLabel = sprintf( __( 'Search in %s' ), title );\n\n\treturn (\n\t\t<MenuTitleUI className=\"components-navigation__menu-title\">\n\t\t\t{ ! isSearching && (\n\t\t\t\t<GroupTitleUI\n\t\t\t\t\tas=\"h2\"\n\t\t\t\t\tclassName=\"components-navigation__menu-title-heading\"\n\t\t\t\t\tlevel={ 3 }\n\t\t\t\t>\n\t\t\t\t\t<span id={ menuTitleId }>{ title }</span>\n\n\t\t\t\t\t{ ( hasSearch || titleAction ) && (\n\t\t\t\t\t\t<MenuTitleActionsUI>\n\t\t\t\t\t\t\t{ titleAction }\n\n\t\t\t\t\t\t\t{ hasSearch && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tisSmall\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tlabel={ searchButtonLabel }\n\t\t\t\t\t\t\t\t\tonClick={ () => setIsSearching( true ) }\n\t\t\t\t\t\t\t\t\tref={ searchButtonRef }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon icon={ searchIcon } />\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</MenuTitleActionsUI>\n\t\t\t\t\t) }\n\t\t\t\t</GroupTitleUI>\n\t\t\t) }\n\n\t\t\t{ isSearching && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ getAnimateClassName( {\n\t\t\t\t\t\ttype: 'slide-in',\n\t\t\t\t\t\torigin: 'left',\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<MenuTitleSearch\n\t\t\t\t\t\tonCloseSearch={ onCloseSearch }\n\t\t\t\t\t\tonSearch={ onSearch }\n\t\t\t\t\t\tsearch={ search }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</MenuTitleUI>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAKA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AAKA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAnBA;AACA;AACA;;AAKA;AACA;AACA;;AAce,SAASU,mBAAmBA,CAAE;EAC5CC,SAAS;EACTC,QAAQ;EACRC,MAAM;EACNC,KAAK;EACLC;AACyB,CAAC,EAAG;EAC7B,MAAM,CAAEC,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACzD,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,iCAAwB,EAAC,CAAC;EAC3C,MAAMC,eAAe,GAAG,IAAAC,eAAM,EAAiB,IAAK,CAAC;EAErD,IAAK,CAAER,KAAK,EAAG;IACd,OAAO,IAAI;EACZ;EAEA,MAAMS,aAAa,GAAGA,CAAA,KAAM;IAC3BN,cAAc,CAAE,KAAM,CAAC;;IAEvB;IACA;IACAO,UAAU,CAAE,MAAM;MACjBH,eAAe,CAACI,OAAO,EAAEC,KAAK,CAAC,CAAC;IACjC,CAAC,EAAEC,6BAAmB,CAAC;EACxB,CAAC;EAED,MAAMC,WAAW,GAAI,qCAAqCT,IAAM,EAAC;EACjE;EACA,MAAMU,iBAAiB,GAAG,IAAAC,aAAO,EAAE,IAAAC,QAAE,EAAE,cAAe,CAAC,EAAEjB,KAAM,CAAC;EAEhE,OACC,IAAAkB,MAAA,CAAAC,aAAA,EAAC1B,iBAAA,CAAA2B,WAAW;IAACC,SAAS,EAAC;EAAmC,GACvD,CAAEnB,WAAW,IACd,IAAAgB,MAAA,CAAAC,aAAA,EAAC1B,iBAAA,CAAA6B,YAAY;IACZC,EAAE,EAAC,IAAI;IACPF,SAAS,EAAC,2CAA2C;IACrDG,KAAK,EAAG;EAAG,GAEX,IAAAN,MAAA,CAAAC,aAAA;IAAMM,EAAE,EAAGX;EAAa,GAAGd,KAAa,CAAC,EAEvC,CAAEH,SAAS,IAAII,WAAW,KAC3B,IAAAiB,MAAA,CAAAC,aAAA,EAAC1B,iBAAA,CAAAiC,kBAAkB,QAChBzB,WAAW,EAEXJ,SAAS,IACV,IAAAqB,MAAA,CAAAC,aAAA,EAAC7B,OAAA,CAAAqC,OAAM;IACNC,OAAO;IACPC,OAAO,EAAC,UAAU;IAClBC,KAAK,EAAGf,iBAAmB;IAC3BgB,OAAO,EAAGA,CAAA,KAAM5B,cAAc,CAAE,IAAK,CAAG;IACxC6B,GAAG,EAAGzB;EAAiB,GAEvB,IAAAW,MAAA,CAAAC,aAAA,EAAC/B,MAAA,CAAA6C,IAAI;IAACC,IAAI,EAAGC;EAAY,CAAE,CACpB,CAEU,CAER,CACd,EAECjC,WAAW,IACZ,IAAAgB,MAAA,CAAAC,aAAA;IACCE,SAAS,EAAG,IAAAe,4BAAmB,EAAE;MAChCC,IAAI,EAAE,UAAU;MAChBC,MAAM,EAAE;IACT,CAAE;EAAG,GAEL,IAAApB,MAAA,CAAAC,aAAA,EAAC3B,gBAAA,CAAAmC,OAAe;IACflB,aAAa,EAAGA,aAAe;IAC/BX,QAAQ,EAAGA,QAAU;IACrBC,MAAM,EAAGA,MAAQ;IACjBC,KAAK,EAAGA;EAAO,CACf,CACG,CAEM,CAAC;AAEhB"}
1
+ {"version":3,"names":["_element","require","_i18n","_icons","_animate","_button","_interopRequireDefault","_menuTitleSearch","_navigationStyles","_context","_constants","NavigationMenuTitle","hasSearch","onSearch","search","title","titleAction","isSearching","setIsSearching","useState","menu","useNavigationMenuContext","searchButtonRef","useRef","onCloseSearch","setTimeout","current","focus","SEARCH_FOCUS_DELAY","menuTitleId","searchButtonLabel","sprintf","__","_react","createElement","MenuTitleUI","className","GroupTitleUI","as","level","id","MenuTitleActionsUI","default","size","variant","label","onClick","ref","Icon","icon","searchIcon","getAnimateClassName","type","origin"],"sources":["@wordpress/components/src/navigation/menu/menu-title.tsx"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useRef, useState } from '@wordpress/element';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { Icon, search as searchIcon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport { getAnimateClassName } from '../../animate';\nimport Button from '../../button';\nimport MenuTitleSearch from './menu-title-search';\nimport {\n\tGroupTitleUI,\n\tMenuTitleActionsUI,\n\tMenuTitleUI,\n} from '../styles/navigation-styles';\nimport { useNavigationMenuContext } from './context';\nimport { SEARCH_FOCUS_DELAY } from '../constants';\n\nimport type { NavigationMenuTitleProps } from '../types';\n\nexport default function NavigationMenuTitle( {\n\thasSearch,\n\tonSearch,\n\tsearch,\n\ttitle,\n\ttitleAction,\n}: NavigationMenuTitleProps ) {\n\tconst [ isSearching, setIsSearching ] = useState( false );\n\tconst { menu } = useNavigationMenuContext();\n\tconst searchButtonRef = useRef< HTMLElement >( null );\n\n\tif ( ! title ) {\n\t\treturn null;\n\t}\n\n\tconst onCloseSearch = () => {\n\t\tsetIsSearching( false );\n\n\t\t// Wait for the slide-in animation to complete before focusing the search button.\n\t\t// eslint-disable-next-line @wordpress/react-no-unsafe-timeout\n\t\tsetTimeout( () => {\n\t\t\tsearchButtonRef.current?.focus();\n\t\t}, SEARCH_FOCUS_DELAY );\n\t};\n\n\tconst menuTitleId = `components-navigation__menu-title-${ menu }`;\n\t/* translators: search button label for menu search box. %s: menu title */\n\tconst searchButtonLabel = sprintf( __( 'Search in %s' ), title );\n\n\treturn (\n\t\t<MenuTitleUI className=\"components-navigation__menu-title\">\n\t\t\t{ ! isSearching && (\n\t\t\t\t<GroupTitleUI\n\t\t\t\t\tas=\"h2\"\n\t\t\t\t\tclassName=\"components-navigation__menu-title-heading\"\n\t\t\t\t\tlevel={ 3 }\n\t\t\t\t>\n\t\t\t\t\t<span id={ menuTitleId }>{ title }</span>\n\n\t\t\t\t\t{ ( hasSearch || titleAction ) && (\n\t\t\t\t\t\t<MenuTitleActionsUI>\n\t\t\t\t\t\t\t{ titleAction }\n\n\t\t\t\t\t\t\t{ hasSearch && (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tlabel={ searchButtonLabel }\n\t\t\t\t\t\t\t\t\tonClick={ () => setIsSearching( true ) }\n\t\t\t\t\t\t\t\t\tref={ searchButtonRef }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<Icon icon={ searchIcon } />\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</MenuTitleActionsUI>\n\t\t\t\t\t) }\n\t\t\t\t</GroupTitleUI>\n\t\t\t) }\n\n\t\t\t{ isSearching && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ getAnimateClassName( {\n\t\t\t\t\t\ttype: 'slide-in',\n\t\t\t\t\t\torigin: 'left',\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<MenuTitleSearch\n\t\t\t\t\t\tonCloseSearch={ onCloseSearch }\n\t\t\t\t\t\tonSearch={ onSearch }\n\t\t\t\t\t\tsearch={ search }\n\t\t\t\t\t\ttitle={ title }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</MenuTitleUI>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAKA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,OAAA,GAAAC,sBAAA,CAAAL,OAAA;AACA,IAAAM,gBAAA,GAAAD,sBAAA,CAAAL,OAAA;AACA,IAAAO,iBAAA,GAAAP,OAAA;AAKA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AAnBA;AACA;AACA;;AAKA;AACA;AACA;;AAce,SAASU,mBAAmBA,CAAE;EAC5CC,SAAS;EACTC,QAAQ;EACRC,MAAM;EACNC,KAAK;EACLC;AACyB,CAAC,EAAG;EAC7B,MAAM,CAAEC,WAAW,EAAEC,cAAc,CAAE,GAAG,IAAAC,iBAAQ,EAAE,KAAM,CAAC;EACzD,MAAM;IAAEC;EAAK,CAAC,GAAG,IAAAC,iCAAwB,EAAC,CAAC;EAC3C,MAAMC,eAAe,GAAG,IAAAC,eAAM,EAAiB,IAAK,CAAC;EAErD,IAAK,CAAER,KAAK,EAAG;IACd,OAAO,IAAI;EACZ;EAEA,MAAMS,aAAa,GAAGA,CAAA,KAAM;IAC3BN,cAAc,CAAE,KAAM,CAAC;;IAEvB;IACA;IACAO,UAAU,CAAE,MAAM;MACjBH,eAAe,CAACI,OAAO,EAAEC,KAAK,CAAC,CAAC;IACjC,CAAC,EAAEC,6BAAmB,CAAC;EACxB,CAAC;EAED,MAAMC,WAAW,GAAI,qCAAqCT,IAAM,EAAC;EACjE;EACA,MAAMU,iBAAiB,GAAG,IAAAC,aAAO,EAAE,IAAAC,QAAE,EAAE,cAAe,CAAC,EAAEjB,KAAM,CAAC;EAEhE,OACC,IAAAkB,MAAA,CAAAC,aAAA,EAAC1B,iBAAA,CAAA2B,WAAW;IAACC,SAAS,EAAC;EAAmC,GACvD,CAAEnB,WAAW,IACd,IAAAgB,MAAA,CAAAC,aAAA,EAAC1B,iBAAA,CAAA6B,YAAY;IACZC,EAAE,EAAC,IAAI;IACPF,SAAS,EAAC,2CAA2C;IACrDG,KAAK,EAAG;EAAG,GAEX,IAAAN,MAAA,CAAAC,aAAA;IAAMM,EAAE,EAAGX;EAAa,GAAGd,KAAa,CAAC,EAEvC,CAAEH,SAAS,IAAII,WAAW,KAC3B,IAAAiB,MAAA,CAAAC,aAAA,EAAC1B,iBAAA,CAAAiC,kBAAkB,QAChBzB,WAAW,EAEXJ,SAAS,IACV,IAAAqB,MAAA,CAAAC,aAAA,EAAC7B,OAAA,CAAAqC,OAAM;IACNC,IAAI,EAAC,OAAO;IACZC,OAAO,EAAC,UAAU;IAClBC,KAAK,EAAGf,iBAAmB;IAC3BgB,OAAO,EAAGA,CAAA,KAAM5B,cAAc,CAAE,IAAK,CAAG;IACxC6B,GAAG,EAAGzB;EAAiB,GAEvB,IAAAW,MAAA,CAAAC,aAAA,EAAC/B,MAAA,CAAA6C,IAAI;IAACC,IAAI,EAAGC;EAAY,CAAE,CACpB,CAEU,CAER,CACd,EAECjC,WAAW,IACZ,IAAAgB,MAAA,CAAAC,aAAA;IACCE,SAAS,EAAG,IAAAe,4BAAmB,EAAE;MAChCC,IAAI,EAAE,UAAU;MAChBC,MAAM,EAAE;IACT,CAAE;EAAG,GAEL,IAAApB,MAAA,CAAAC,aAAA,EAAC3B,gBAAA,CAAAmC,OAAe;IACflB,aAAa,EAAGA,aAAe;IAC/BX,QAAQ,EAAGA,QAAU;IACrBC,MAAM,EAAGA,MAAQ;IACjBC,KAAK,EAAGA;EAAO,CACf,CACG,CAEM,CAAC;AAEhB"}
@@ -6,15 +6,24 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.default = exports.NavigatorProvider = void 0;
8
8
  var _react = require("react");
9
- var _react2 = require("@emotion/react");
10
9
  var _element = require("@wordpress/element");
11
10
  var _isShallowEqual = _interopRequireDefault(require("@wordpress/is-shallow-equal"));
12
11
  var _context = require("../../context");
13
12
  var _useCx = require("../../utils/hooks/use-cx");
13
+ var _router = require("../utils/router");
14
14
  var _view = require("../../view");
15
15
  var _context2 = require("../context");
16
- var _router = require("../utils/router");
17
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
16
+ var styles = _interopRequireWildcard(require("../styles"));
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+ /**
20
+ * External dependencies
21
+ */
22
+
23
+ /**
24
+ * WordPress dependencies
25
+ */
26
+
18
27
  const MAX_HISTORY_LENGTH = 50;
19
28
  function screensReducer(state = [], action) {
20
29
  switch (action.type) {
@@ -25,15 +34,6 @@ function screensReducer(state = [], action) {
25
34
  }
26
35
  return state;
27
36
  }
28
- var _ref = process.env.NODE_ENV === "production" ? {
29
- name: "15bx5k",
30
- styles: "overflow-x:hidden"
31
- } : {
32
- name: "192ebb7-classes",
33
- styles: "overflow-x:hidden;label:classes;",
34
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvbmF2aWdhdG9yL25hdmlnYXRvci1wcm92aWRlci9jb21wb25lbnQudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJQWSIsImZpbGUiOiJAd29yZHByZXNzL2NvbXBvbmVudHMvc3JjL25hdmlnYXRvci9uYXZpZ2F0b3ItcHJvdmlkZXIvY29tcG9uZW50LnRzeCIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB0eXBlIHsgRm9yd2FyZGVkUmVmIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgY3NzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG4vKipcbiAqIFdvcmRQcmVzcyBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHtcblx0dXNlTWVtbyxcblx0dXNlU3RhdGUsXG5cdHVzZUNhbGxiYWNrLFxuXHR1c2VSZWR1Y2VyLFxuXHR1c2VSZWYsXG5cdHVzZUVmZmVjdCxcbn0gZnJvbSAnQHdvcmRwcmVzcy9lbGVtZW50JztcbmltcG9ydCBpc1NoYWxsb3dFcXVhbCBmcm9tICdAd29yZHByZXNzL2lzLXNoYWxsb3ctZXF1YWwnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgdHlwZSB7IFdvcmRQcmVzc0NvbXBvbmVudFByb3BzIH0gZnJvbSAnLi4vLi4vY29udGV4dCc7XG5pbXBvcnQgeyBjb250ZXh0Q29ubmVjdCwgdXNlQ29udGV4dFN5c3RlbSB9IGZyb20gJy4uLy4uL2NvbnRleHQnO1xuaW1wb3J0IHsgdXNlQ3ggfSBmcm9tICcuLi8uLi91dGlscy9ob29rcy91c2UtY3gnO1xuaW1wb3J0IHsgVmlldyB9IGZyb20gJy4uLy4uL3ZpZXcnO1xuaW1wb3J0IHsgTmF2aWdhdG9yQ29udGV4dCB9IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IHR5cGUge1xuXHROYXZpZ2F0b3JQcm92aWRlclByb3BzLFxuXHROYXZpZ2F0b3JMb2NhdGlvbixcblx0TmF2aWdhdG9yQ29udGV4dCBhcyBOYXZpZ2F0b3JDb250ZXh0VHlwZSxcblx0U2NyZWVuLFxufSBmcm9tICcuLi90eXBlcyc7XG5pbXBvcnQgeyBwYXR0ZXJuTWF0Y2gsIGZpbmRQYXJlbnQgfSBmcm9tICcuLi91dGlscy9yb3V0ZXInO1xuXG50eXBlIE1hdGNoZWRQYXRoID0gUmV0dXJuVHlwZTwgdHlwZW9mIHBhdHRlcm5NYXRjaCA+O1xudHlwZSBTY3JlZW5BY3Rpb24gPSB7IHR5cGU6IHN0cmluZzsgc2NyZWVuOiBTY3JlZW4gfTtcblxuY29uc3QgTUFYX0hJU1RPUllfTEVOR1RIID0gNTA7XG5cbmZ1bmN0aW9uIHNjcmVlbnNSZWR1Y2VyKFxuXHRzdGF0ZTogU2NyZWVuW10gPSBbXSxcblx0YWN0aW9uOiBTY3JlZW5BY3Rpb25cbik6IFNjcmVlbltdIHtcblx0c3dpdGNoICggYWN0aW9uLnR5cGUgKSB7XG5cdFx0Y2FzZSAnYWRkJzpcblx0XHRcdHJldHVybiBbIC4uLnN0YXRlLCBhY3Rpb24uc2NyZWVuIF07XG5cdFx0Y2FzZSAncmVtb3ZlJzpcblx0XHRcdHJldHVybiBzdGF0ZS5maWx0ZXIoICggczogU2NyZWVuICkgPT4gcy5pZCAhPT0gYWN0aW9uLnNjcmVlbi5pZCApO1xuXHR9XG5cblx0cmV0dXJuIHN0YXRlO1xufVxuXG5mdW5jdGlvbiBVbmNvbm5lY3RlZE5hdmlnYXRvclByb3ZpZGVyKFxuXHRwcm9wczogV29yZFByZXNzQ29tcG9uZW50UHJvcHM8IE5hdmlnYXRvclByb3ZpZGVyUHJvcHMsICdkaXYnID4sXG5cdGZvcndhcmRlZFJlZjogRm9yd2FyZGVkUmVmPCBhbnkgPlxuKSB7XG5cdGNvbnN0IHsgaW5pdGlhbFBhdGgsIGNoaWxkcmVuLCBjbGFzc05hbWUsIC4uLm90aGVyUHJvcHMgfSA9XG5cdFx0dXNlQ29udGV4dFN5c3RlbSggcHJvcHMsICdOYXZpZ2F0b3JQcm92aWRlcicgKTtcblxuXHRjb25zdCBbIGxvY2F0aW9uSGlzdG9yeSwgc2V0TG9jYXRpb25IaXN0b3J5IF0gPSB1c2VTdGF0ZTxcblx0XHROYXZpZ2F0b3JMb2NhdGlvbltdXG5cdD4oIFtcblx0XHR7XG5cdFx0XHRwYXRoOiBpbml0aWFsUGF0aCxcblx0XHR9LFxuXHRdICk7XG5cdGNvbnN0IGN1cnJlbnRMb2NhdGlvbkhpc3RvcnkgPSB1c2VSZWY8IE5hdmlnYXRvckxvY2F0aW9uW10gPiggW10gKTtcblx0Y29uc3QgWyBzY3JlZW5zLCBkaXNwYXRjaCBdID0gdXNlUmVkdWNlciggc2NyZWVuc1JlZHVjZXIsIFtdICk7XG5cdGNvbnN0IGN1cnJlbnRTY3JlZW5zID0gdXNlUmVmPCBTY3JlZW5bXSA+KCBbXSApO1xuXHR1c2VFZmZlY3QoICgpID0+IHtcblx0XHRjdXJyZW50U2NyZWVucy5jdXJyZW50ID0gc2NyZWVucztcblx0fSwgWyBzY3JlZW5zIF0gKTtcblx0dXNlRWZmZWN0KCAoKSA9PiB7XG5cdFx0Y3VycmVudExvY2F0aW9uSGlzdG9yeS5jdXJyZW50ID0gbG9jYXRpb25IaXN0b3J5O1xuXHR9LCBbIGxvY2F0aW9uSGlzdG9yeSBdICk7XG5cdGNvbnN0IGN1cnJlbnRNYXRjaCA9IHVzZVJlZjwgTWF0Y2hlZFBhdGggPigpO1xuXHRjb25zdCBtYXRjaGVkUGF0aCA9IHVzZU1lbW8oICgpID0+IHtcblx0XHRsZXQgY3VycmVudFBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDtcblx0XHRpZiAoXG5cdFx0XHRsb2NhdGlvbkhpc3RvcnkubGVuZ3RoID09PSAwIHx8XG5cdFx0XHQoIGN1cnJlbnRQYXRoID1cblx0XHRcdFx0bG9jYXRpb25IaXN0b3J5WyBsb2NhdGlvbkhpc3RvcnkubGVuZ3RoIC0gMSBdLnBhdGggKSA9PT1cblx0XHRcdFx0dW5kZWZpbmVkXG5cdFx0KSB7XG5cdFx0XHRjdXJyZW50TWF0Y2guY3VycmVudCA9IHVuZGVmaW5lZDtcblx0XHRcdHJldHVybiB1bmRlZmluZWQ7XG5cdFx0fVxuXG5cdFx0Y29uc3QgcmVzb2x2ZVBhdGggPSAoIHBhdGg6IHN0cmluZyApID0+IHtcblx0XHRcdGNvbnN0IG5ld01hdGNoID0gcGF0dGVybk1hdGNoKCBwYXRoLCBzY3JlZW5zICk7XG5cblx0XHRcdC8vIElmIHRoZSBuZXcgbWF0Y2ggaXMgdGhlIHNhbWUgYXMgdGhlIGN1cnJlbnQgbWF0Y2gsXG5cdFx0XHQvLyByZXR1cm4gdGhlIHByZXZpb3VzIG9uZSBmb3IgcGVyZm9ybWFuY2UgcmVhc29ucy5cblx0XHRcdGlmIChcblx0XHRcdFx0Y3VycmVudE1hdGNoLmN1cnJlbnQgJiZcblx0XHRcdFx0bmV3TWF0Y2ggJiZcblx0XHRcdFx0aXNTaGFsbG93RXF1YWwoXG5cdFx0XHRcdFx0bmV3TWF0Y2gucGFyYW1zLFxuXHRcdFx0XHRcdGN1cnJlbnRNYXRjaC5jdXJyZW50LnBhcmFtc1xuXHRcdFx0XHQpICYmXG5cdFx0XHRcdG5ld01hdGNoLmlkID09PSBjdXJyZW50TWF0Y2guY3VycmVudC5pZFxuXHRcdFx0KSB7XG5cdFx0XHRcdHJldHVybiBjdXJyZW50TWF0Y2guY3VycmVudDtcblx0XHRcdH1cblxuXHRcdFx0cmV0dXJuIG5ld01hdGNoO1xuXHRcdH07XG5cblx0XHRjb25zdCBuZXdNYXRjaCA9IHJlc29sdmVQYXRoKCBjdXJyZW50UGF0aCApO1xuXHRcdGN1cnJlbnRNYXRjaC5jdXJyZW50ID0gbmV3TWF0Y2g7XG5cdFx0cmV0dXJuIG5ld01hdGNoO1xuXHR9LCBbIHNjcmVlbnMsIGxvY2F0aW9uSGlzdG9yeSBdICk7XG5cblx0Y29uc3QgYWRkU2NyZWVuID0gdXNlQ2FsbGJhY2soXG5cdFx0KCBzY3JlZW46IFNjcmVlbiApID0+IGRpc3BhdGNoKCB7IHR5cGU6ICdhZGQnLCBzY3JlZW4gfSApLFxuXHRcdFtdXG5cdCk7XG5cblx0Y29uc3QgcmVtb3ZlU2NyZWVuID0gdXNlQ2FsbGJhY2soXG5cdFx0KCBzY3JlZW46IFNjcmVlbiApID0+IGRpc3BhdGNoKCB7IHR5cGU6ICdyZW1vdmUnLCBzY3JlZW4gfSApLFxuXHRcdFtdXG5cdCk7XG5cblx0Y29uc3QgZ29CYWNrOiBOYXZpZ2F0b3JDb250ZXh0VHlwZVsgJ2dvQmFjaycgXSA9IHVzZUNhbGxiYWNrKCAoKSA9PiB7XG5cdFx0c2V0TG9jYXRpb25IaXN0b3J5KCAoIHByZXZMb2NhdGlvbkhpc3RvcnkgKSA9PiB7XG5cdFx0XHRpZiAoIHByZXZMb2NhdGlvbkhpc3RvcnkubGVuZ3RoIDw9IDEgKSB7XG5cdFx0XHRcdHJldHVybiBwcmV2TG9jYXRpb25IaXN0b3J5O1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIFtcblx0XHRcdFx0Li4ucHJldkxvY2F0aW9uSGlzdG9yeS5zbGljZSggMCwgLTIgKSxcblx0XHRcdFx0e1xuXHRcdFx0XHRcdC4uLnByZXZMb2NhdGlvbkhpc3RvcnlbIHByZXZMb2NhdGlvbkhpc3RvcnkubGVuZ3RoIC0gMiBdLFxuXHRcdFx0XHRcdGlzQmFjazogdHJ1ZSxcblx0XHRcdFx0XHRoYXNSZXN0b3JlZEZvY3VzOiBmYWxzZSxcblx0XHRcdFx0fSxcblx0XHRcdF07XG5cdFx0fSApO1xuXHR9LCBbXSApO1xuXG5cdGNvbnN0IGdvVG86IE5hdmlnYXRvckNvbnRleHRUeXBlWyAnZ29UbycgXSA9IHVzZUNhbGxiYWNrKFxuXHRcdCggcGF0aCwgb3B0aW9ucyA9IHt9ICkgPT4ge1xuXHRcdFx0Y29uc3Qge1xuXHRcdFx0XHRmb2N1c1RhcmdldFNlbGVjdG9yLFxuXHRcdFx0XHRpc0JhY2sgPSBmYWxzZSxcblx0XHRcdFx0c2tpcEZvY3VzID0gZmFsc2UsXG5cdFx0XHRcdHJlcGxhY2UgPSBmYWxzZSxcblx0XHRcdFx0Li4ucmVzdE9wdGlvbnNcblx0XHRcdH0gPSBvcHRpb25zO1xuXG5cdFx0XHRjb25zdCBpc05hdmlnYXRpbmdUb1ByZXZpb3VzUGF0aCA9XG5cdFx0XHRcdGlzQmFjayAmJlxuXHRcdFx0XHRjdXJyZW50TG9jYXRpb25IaXN0b3J5LmN1cnJlbnQubGVuZ3RoID4gMSAmJlxuXHRcdFx0XHRjdXJyZW50TG9jYXRpb25IaXN0b3J5LmN1cnJlbnRbXG5cdFx0XHRcdFx0Y3VycmVudExvY2F0aW9uSGlzdG9yeS5jdXJyZW50Lmxlbmd0aCAtIDJcblx0XHRcdFx0XS5wYXRoID09PSBwYXRoO1xuXG5cdFx0XHRpZiAoIGlzTmF2aWdhdGluZ1RvUHJldmlvdXNQYXRoICkge1xuXHRcdFx0XHRnb0JhY2soKTtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXG5cdFx0XHRzZXRMb2NhdGlvbkhpc3RvcnkoICggcHJldkxvY2F0aW9uSGlzdG9yeSApID0+IHtcblx0XHRcdFx0Y29uc3QgbmV3TG9jYXRpb24gPSB7XG5cdFx0XHRcdFx0Li4ucmVzdE9wdGlvbnMsXG5cdFx0XHRcdFx0cGF0aCxcblx0XHRcdFx0XHRpc0JhY2ssXG5cdFx0XHRcdFx0aGFzUmVzdG9yZWRGb2N1czogZmFsc2UsXG5cdFx0XHRcdFx0c2tpcEZvY3VzLFxuXHRcdFx0XHR9O1xuXG5cdFx0XHRcdGlmICggcHJldkxvY2F0aW9uSGlzdG9yeS5sZW5ndGggPT09IDAgKSB7XG5cdFx0XHRcdFx0cmV0dXJuIHJlcGxhY2UgPyBbXSA6IFsgbmV3TG9jYXRpb24gXTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGNvbnN0IG5ld0xvY2F0aW9uSGlzdG9yeSA9IHByZXZMb2NhdGlvbkhpc3Rvcnkuc2xpY2UoXG5cdFx0XHRcdFx0cHJldkxvY2F0aW9uSGlzdG9yeS5sZW5ndGggPiBNQVhfSElTVE9SWV9MRU5HVEggLSAxID8gMSA6IDAsXG5cdFx0XHRcdFx0LTFcblx0XHRcdFx0KTtcblxuXHRcdFx0XHRpZiAoICEgcmVwbGFjZSApIHtcblx0XHRcdFx0XHRuZXdMb2NhdGlvbkhpc3RvcnkucHVzaChcblx0XHRcdFx0XHRcdC8vIEFzc2lnbiBgZm9jdXNUYXJnZXRTZWxlY3RvcmAgdG8gdGhlIHByZXZpb3VzIGxvY2F0aW9uIGluIGhpc3Rvcnlcblx0XHRcdFx0XHRcdC8vICh0aGUgb25lIHdlIGp1c3QgbmF2aWdhdGVkIGZyb20pLlxuXHRcdFx0XHRcdFx0e1xuXHRcdFx0XHRcdFx0XHQuLi5wcmV2TG9jYXRpb25IaXN0b3J5W1xuXHRcdFx0XHRcdFx0XHRcdHByZXZMb2NhdGlvbkhpc3RvcnkubGVuZ3RoIC0gMVxuXHRcdFx0XHRcdFx0XHRdLFxuXHRcdFx0XHRcdFx0XHRmb2N1c1RhcmdldFNlbGVjdG9yLFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRuZXdMb2NhdGlvbkhpc3RvcnkucHVzaCggbmV3TG9jYXRpb24gKTtcblxuXHRcdFx0XHRyZXR1cm4gbmV3TG9jYXRpb25IaXN0b3J5O1xuXHRcdFx0fSApO1xuXHRcdH0sXG5cdFx0WyBnb0JhY2sgXVxuXHQpO1xuXG5cdGNvbnN0IGdvVG9QYXJlbnQ6IE5hdmlnYXRvckNvbnRleHRUeXBlWyAnZ29Ub1BhcmVudCcgXSA9IHVzZUNhbGxiYWNrKFxuXHRcdCggb3B0aW9ucyA9IHt9ICkgPT4ge1xuXHRcdFx0Y29uc3QgY3VycmVudFBhdGggPVxuXHRcdFx0XHRjdXJyZW50TG9jYXRpb25IaXN0b3J5LmN1cnJlbnRbXG5cdFx0XHRcdFx0Y3VycmVudExvY2F0aW9uSGlzdG9yeS5jdXJyZW50Lmxlbmd0aCAtIDFcblx0XHRcdFx0XS5wYXRoO1xuXHRcdFx0aWYgKCBjdXJyZW50UGF0aCA9PT0gdW5kZWZpbmVkICkge1xuXHRcdFx0XHRyZXR1cm47XG5cdFx0XHR9XG5cdFx0XHRjb25zdCBwYXJlbnRQYXRoID0gZmluZFBhcmVudChcblx0XHRcdFx0Y3VycmVudFBhdGgsXG5cdFx0XHRcdGN1cnJlbnRTY3JlZW5zLmN1cnJlbnRcblx0XHRcdCk7XG5cdFx0XHRpZiAoIHBhcmVudFBhdGggPT09IHVuZGVmaW5lZCApIHtcblx0XHRcdFx0cmV0dXJuO1xuXHRcdFx0fVxuXHRcdFx0Z29UbyggcGFyZW50UGF0aCwgeyAuLi5vcHRpb25zLCBpc0JhY2s6IHRydWUgfSApO1xuXHRcdH0sXG5cdFx0WyBnb1RvIF1cblx0KTtcblxuXHRjb25zdCBuYXZpZ2F0b3JDb250ZXh0VmFsdWU6IE5hdmlnYXRvckNvbnRleHRUeXBlID0gdXNlTWVtbyhcblx0XHQoKSA9PiAoIHtcblx0XHRcdGxvY2F0aW9uOiB7XG5cdFx0XHRcdC4uLmxvY2F0aW9uSGlzdG9yeVsgbG9jYXRpb25IaXN0b3J5Lmxlbmd0aCAtIDEgXSxcblx0XHRcdFx0aXNJbml0aWFsOiBsb2NhdGlvbkhpc3RvcnkubGVuZ3RoID09PSAxLFxuXHRcdFx0fSxcblx0XHRcdHBhcmFtczogbWF0Y2hlZFBhdGggPyBtYXRjaGVkUGF0aC5wYXJhbXMgOiB7fSxcblx0XHRcdG1hdGNoOiBtYXRjaGVkUGF0aCA/IG1hdGNoZWRQYXRoLmlkIDogdW5kZWZpbmVkLFxuXHRcdFx0Z29Ubyxcblx0XHRcdGdvQmFjayxcblx0XHRcdGdvVG9QYXJlbnQsXG5cdFx0XHRhZGRTY3JlZW4sXG5cdFx0XHRyZW1vdmVTY3JlZW4sXG5cdFx0fSApLFxuXHRcdFtcblx0XHRcdGxvY2F0aW9uSGlzdG9yeSxcblx0XHRcdG1hdGNoZWRQYXRoLFxuXHRcdFx0Z29Ubyxcblx0XHRcdGdvQmFjayxcblx0XHRcdGdvVG9QYXJlbnQsXG5cdFx0XHRhZGRTY3JlZW4sXG5cdFx0XHRyZW1vdmVTY3JlZW4sXG5cdFx0XVxuXHQpO1xuXG5cdGNvbnN0IGN4ID0gdXNlQ3goKTtcblx0Y29uc3QgY2xhc3NlcyA9IHVzZU1lbW8oXG5cdFx0Ly8gUHJldmVudHMgaG9yaXpvbnRhbCBvdmVyZmxvdyB3aGlsZSBhbmltYXRpbmcgc2NyZWVuIHRyYW5zaXRpb25zLlxuXHRcdCgpID0+IGN4KCBjc3MoIHsgb3ZlcmZsb3dYOiAnaGlkZGVuJyB9ICksIGNsYXNzTmFtZSApLFxuXHRcdFsgY2xhc3NOYW1lLCBjeCBdXG5cdCk7XG5cblx0cmV0dXJuIChcblx0XHQ8VmlldyByZWY9eyBmb3J3YXJkZWRSZWYgfSBjbGFzc05hbWU9eyBjbGFzc2VzIH0geyAuLi5vdGhlclByb3BzIH0+XG5cdFx0XHQ8TmF2aWdhdG9yQ29udGV4dC5Qcm92aWRlciB2YWx1ZT17IG5hdmlnYXRvckNvbnRleHRWYWx1ZSB9PlxuXHRcdFx0XHR7IGNoaWxkcmVuIH1cblx0XHRcdDwvTmF2aWdhdG9yQ29udGV4dC5Qcm92aWRlcj5cblx0XHQ8L1ZpZXc+XG5cdCk7XG59XG5cbi8qKlxuICogVGhlIGBOYXZpZ2F0b3JQcm92aWRlcmAgY29tcG9uZW50IGFsbG93cyByZW5kZXJpbmcgbmVzdGVkIHZpZXdzL3BhbmVscy9tZW51c1xuICogKHZpYSB0aGUgYE5hdmlnYXRvclNjcmVlbmAgY29tcG9uZW50IGFuZCBuYXZpZ2F0ZSBiZXR3ZWVuIHRoZXNlIGRpZmZlcmVudFxuICogdmlldyAodmlhIHRoZSBgTmF2aWdhdG9yQnV0dG9uYCBhbmQgYE5hdmlnYXRvckJhY2tCdXR0b25gIGNvbXBvbmVudHMgb3IgdGhlXG4gKiBgdXNlTmF2aWdhdG9yYCBob29rKS5cbiAqXG4gKiBgYGBqc3hcbiAqIGltcG9ydCB7XG4gKiAgIF9fZXhwZXJpbWVudGFsTmF2aWdhdG9yUHJvdmlkZXIgYXMgTmF2aWdhdG9yUHJvdmlkZXIsXG4gKiAgIF9fZXhwZXJpbWVudGFsTmF2aWdhdG9yU2NyZWVuIGFzIE5hdmlnYXRvclNjcmVlbixcbiAqICAgX19leHBlcmltZW50YWxOYXZpZ2F0b3JCdXR0b24gYXMgTmF2aWdhdG9yQnV0dG9uLFxuICogICBfX2V4cGVyaW1lbnRhbE5hdmlnYXRvckJhY2tCdXR0b24gYXMgTmF2aWdhdG9yQmFja0J1dHRvbixcbiAqIH0gZnJvbSAnQHdvcmRwcmVzcy9jb21wb25lbnRzJztcbiAqXG4gKiBjb25zdCBNeU5hdmlnYXRpb24gPSAoKSA9PiAoXG4gKiAgIDxOYXZpZ2F0b3JQcm92aWRlciBpbml0aWFsUGF0aD1cIi9cIj5cbiAqICAgICA8TmF2aWdhdG9yU2NyZWVuIHBhdGg9XCIvXCI+XG4gKiAgICAgICA8cD5UaGlzIGlzIHRoZSBob21lIHNjcmVlbi48L3A+XG4gKiAgICAgICAgPE5hdmlnYXRvckJ1dHRvbiBwYXRoPVwiL2NoaWxkXCI+XG4gKiAgICAgICAgICBOYXZpZ2F0ZSB0byBjaGlsZCBzY3JlZW4uXG4gKiAgICAgICA8L05hdmlnYXRvckJ1dHRvbj5cbiAqICAgICA8L05hdmlnYXRvclNjcmVlbj5cbiAqXG4gKiAgICAgPE5hdmlnYXRvclNjcmVlbiBwYXRoPVwiL2NoaWxkXCI+XG4gKiAgICAgICA8cD5UaGlzIGlzIHRoZSBjaGlsZCBzY3JlZW4uPC9wPlxuICogICAgICAgPE5hdmlnYXRvckJhY2tCdXR0b24+XG4gKiAgICAgICAgIEdvIGJhY2tcbiAqICAgICAgIDwvTmF2aWdhdG9yQmFja0J1dHRvbj5cbiAqICAgICA8L05hdmlnYXRvclNjcmVlbj5cbiAqICAgPC9OYXZpZ2F0b3JQcm92aWRlcj5cbiAqICk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNvbnN0IE5hdmlnYXRvclByb3ZpZGVyID0gY29udGV4dENvbm5lY3QoXG5cdFVuY29ubmVjdGVkTmF2aWdhdG9yUHJvdmlkZXIsXG5cdCdOYXZpZ2F0b3JQcm92aWRlcidcbik7XG5cbmV4cG9ydCBkZWZhdWx0IE5hdmlnYXRvclByb3ZpZGVyO1xuIl19 */",
35
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
36
- };
37
37
  function UnconnectedNavigatorProvider(props, forwardedRef) {
38
38
  const {
39
39
  initialPath,
@@ -160,9 +160,7 @@ function UnconnectedNavigatorProvider(props, forwardedRef) {
160
160
  removeScreen
161
161
  }), [locationHistory, matchedPath, goTo, goBack, goToParent, addScreen, removeScreen]);
162
162
  const cx = (0, _useCx.useCx)();
163
- const classes = (0, _element.useMemo)(
164
- // Prevents horizontal overflow while animating screen transitions.
165
- () => cx(_ref, className), [className, cx]);
163
+ const classes = (0, _element.useMemo)(() => cx(styles.navigatorProviderWrapper, className), [className, cx]);
166
164
  return (0, _react.createElement)(_view.View, {
167
165
  ref: forwardedRef,
168
166
  className: classes,
@@ -1 +1 @@
1
- {"version":3,"names":["_react2","require","_element","_isShallowEqual","_interopRequireDefault","_context","_useCx","_view","_context2","_router","_EMOTION_STRINGIFIED_CSS_ERROR__","MAX_HISTORY_LENGTH","screensReducer","state","action","type","screen","filter","s","id","_ref","process","env","NODE_ENV","name","styles","map","toString","UnconnectedNavigatorProvider","props","forwardedRef","initialPath","children","className","otherProps","useContextSystem","locationHistory","setLocationHistory","useState","path","currentLocationHistory","useRef","screens","dispatch","useReducer","currentScreens","useEffect","current","currentMatch","matchedPath","useMemo","currentPath","length","undefined","resolvePath","newMatch","patternMatch","isShallowEqual","params","addScreen","useCallback","removeScreen","goBack","prevLocationHistory","slice","isBack","hasRestoredFocus","goTo","options","focusTargetSelector","skipFocus","replace","restOptions","isNavigatingToPreviousPath","newLocation","newLocationHistory","push","goToParent","parentPath","findParent","navigatorContextValue","location","isInitial","match","cx","useCx","classes","_react","createElement","View","ref","NavigatorContext","Provider","value","NavigatorProvider","contextConnect","exports","_default","default"],"sources":["@wordpress/components/src/navigator/navigator-provider/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\nimport { css } from '@emotion/react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseMemo,\n\tuseState,\n\tuseCallback,\n\tuseReducer,\n\tuseRef,\n\tuseEffect,\n} from '@wordpress/element';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect, useContextSystem } from '../../context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport { View } from '../../view';\nimport { NavigatorContext } from '../context';\nimport type {\n\tNavigatorProviderProps,\n\tNavigatorLocation,\n\tNavigatorContext as NavigatorContextType,\n\tScreen,\n} from '../types';\nimport { patternMatch, findParent } from '../utils/router';\n\ntype MatchedPath = ReturnType< typeof patternMatch >;\ntype ScreenAction = { type: string; screen: Screen };\n\nconst MAX_HISTORY_LENGTH = 50;\n\nfunction screensReducer(\n\tstate: Screen[] = [],\n\taction: ScreenAction\n): Screen[] {\n\tswitch ( action.type ) {\n\t\tcase 'add':\n\t\t\treturn [ ...state, action.screen ];\n\t\tcase 'remove':\n\t\t\treturn state.filter( ( s: Screen ) => s.id !== action.screen.id );\n\t}\n\n\treturn state;\n}\n\nfunction UnconnectedNavigatorProvider(\n\tprops: WordPressComponentProps< NavigatorProviderProps, 'div' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst { initialPath, children, className, ...otherProps } =\n\t\tuseContextSystem( props, 'NavigatorProvider' );\n\n\tconst [ locationHistory, setLocationHistory ] = useState<\n\t\tNavigatorLocation[]\n\t>( [\n\t\t{\n\t\t\tpath: initialPath,\n\t\t},\n\t] );\n\tconst currentLocationHistory = useRef< NavigatorLocation[] >( [] );\n\tconst [ screens, dispatch ] = useReducer( screensReducer, [] );\n\tconst currentScreens = useRef< Screen[] >( [] );\n\tuseEffect( () => {\n\t\tcurrentScreens.current = screens;\n\t}, [ screens ] );\n\tuseEffect( () => {\n\t\tcurrentLocationHistory.current = locationHistory;\n\t}, [ locationHistory ] );\n\tconst currentMatch = useRef< MatchedPath >();\n\tconst matchedPath = useMemo( () => {\n\t\tlet currentPath: string | undefined;\n\t\tif (\n\t\t\tlocationHistory.length === 0 ||\n\t\t\t( currentPath =\n\t\t\t\tlocationHistory[ locationHistory.length - 1 ].path ) ===\n\t\t\t\tundefined\n\t\t) {\n\t\t\tcurrentMatch.current = undefined;\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst resolvePath = ( path: string ) => {\n\t\t\tconst newMatch = patternMatch( path, screens );\n\n\t\t\t// If the new match is the same as the current match,\n\t\t\t// return the previous one for performance reasons.\n\t\t\tif (\n\t\t\t\tcurrentMatch.current &&\n\t\t\t\tnewMatch &&\n\t\t\t\tisShallowEqual(\n\t\t\t\t\tnewMatch.params,\n\t\t\t\t\tcurrentMatch.current.params\n\t\t\t\t) &&\n\t\t\t\tnewMatch.id === currentMatch.current.id\n\t\t\t) {\n\t\t\t\treturn currentMatch.current;\n\t\t\t}\n\n\t\t\treturn newMatch;\n\t\t};\n\n\t\tconst newMatch = resolvePath( currentPath );\n\t\tcurrentMatch.current = newMatch;\n\t\treturn newMatch;\n\t}, [ screens, locationHistory ] );\n\n\tconst addScreen = useCallback(\n\t\t( screen: Screen ) => dispatch( { type: 'add', screen } ),\n\t\t[]\n\t);\n\n\tconst removeScreen = useCallback(\n\t\t( screen: Screen ) => dispatch( { type: 'remove', screen } ),\n\t\t[]\n\t);\n\n\tconst goBack: NavigatorContextType[ 'goBack' ] = useCallback( () => {\n\t\tsetLocationHistory( ( prevLocationHistory ) => {\n\t\t\tif ( prevLocationHistory.length <= 1 ) {\n\t\t\t\treturn prevLocationHistory;\n\t\t\t}\n\t\t\treturn [\n\t\t\t\t...prevLocationHistory.slice( 0, -2 ),\n\t\t\t\t{\n\t\t\t\t\t...prevLocationHistory[ prevLocationHistory.length - 2 ],\n\t\t\t\t\tisBack: true,\n\t\t\t\t\thasRestoredFocus: false,\n\t\t\t\t},\n\t\t\t];\n\t\t} );\n\t}, [] );\n\n\tconst goTo: NavigatorContextType[ 'goTo' ] = useCallback(\n\t\t( path, options = {} ) => {\n\t\t\tconst {\n\t\t\t\tfocusTargetSelector,\n\t\t\t\tisBack = false,\n\t\t\t\tskipFocus = false,\n\t\t\t\treplace = false,\n\t\t\t\t...restOptions\n\t\t\t} = options;\n\n\t\t\tconst isNavigatingToPreviousPath =\n\t\t\t\tisBack &&\n\t\t\t\tcurrentLocationHistory.current.length > 1 &&\n\t\t\t\tcurrentLocationHistory.current[\n\t\t\t\t\tcurrentLocationHistory.current.length - 2\n\t\t\t\t].path === path;\n\n\t\t\tif ( isNavigatingToPreviousPath ) {\n\t\t\t\tgoBack();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetLocationHistory( ( prevLocationHistory ) => {\n\t\t\t\tconst newLocation = {\n\t\t\t\t\t...restOptions,\n\t\t\t\t\tpath,\n\t\t\t\t\tisBack,\n\t\t\t\t\thasRestoredFocus: false,\n\t\t\t\t\tskipFocus,\n\t\t\t\t};\n\n\t\t\t\tif ( prevLocationHistory.length === 0 ) {\n\t\t\t\t\treturn replace ? [] : [ newLocation ];\n\t\t\t\t}\n\n\t\t\t\tconst newLocationHistory = prevLocationHistory.slice(\n\t\t\t\t\tprevLocationHistory.length > MAX_HISTORY_LENGTH - 1 ? 1 : 0,\n\t\t\t\t\t-1\n\t\t\t\t);\n\n\t\t\t\tif ( ! replace ) {\n\t\t\t\t\tnewLocationHistory.push(\n\t\t\t\t\t\t// Assign `focusTargetSelector` to the previous location in history\n\t\t\t\t\t\t// (the one we just navigated from).\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...prevLocationHistory[\n\t\t\t\t\t\t\t\tprevLocationHistory.length - 1\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tfocusTargetSelector,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tnewLocationHistory.push( newLocation );\n\n\t\t\t\treturn newLocationHistory;\n\t\t\t} );\n\t\t},\n\t\t[ goBack ]\n\t);\n\n\tconst goToParent: NavigatorContextType[ 'goToParent' ] = useCallback(\n\t\t( options = {} ) => {\n\t\t\tconst currentPath =\n\t\t\t\tcurrentLocationHistory.current[\n\t\t\t\t\tcurrentLocationHistory.current.length - 1\n\t\t\t\t].path;\n\t\t\tif ( currentPath === undefined ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst parentPath = findParent(\n\t\t\t\tcurrentPath,\n\t\t\t\tcurrentScreens.current\n\t\t\t);\n\t\t\tif ( parentPath === undefined ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tgoTo( parentPath, { ...options, isBack: true } );\n\t\t},\n\t\t[ goTo ]\n\t);\n\n\tconst navigatorContextValue: NavigatorContextType = useMemo(\n\t\t() => ( {\n\t\t\tlocation: {\n\t\t\t\t...locationHistory[ locationHistory.length - 1 ],\n\t\t\t\tisInitial: locationHistory.length === 1,\n\t\t\t},\n\t\t\tparams: matchedPath ? matchedPath.params : {},\n\t\t\tmatch: matchedPath ? matchedPath.id : undefined,\n\t\t\tgoTo,\n\t\t\tgoBack,\n\t\t\tgoToParent,\n\t\t\taddScreen,\n\t\t\tremoveScreen,\n\t\t} ),\n\t\t[\n\t\t\tlocationHistory,\n\t\t\tmatchedPath,\n\t\t\tgoTo,\n\t\t\tgoBack,\n\t\t\tgoToParent,\n\t\t\taddScreen,\n\t\t\tremoveScreen,\n\t\t]\n\t);\n\n\tconst cx = useCx();\n\tconst classes = useMemo(\n\t\t// Prevents horizontal overflow while animating screen transitions.\n\t\t() => cx( css( { overflowX: 'hidden' } ), className ),\n\t\t[ className, cx ]\n\t);\n\n\treturn (\n\t\t<View ref={ forwardedRef } className={ classes } { ...otherProps }>\n\t\t\t<NavigatorContext.Provider value={ navigatorContextValue }>\n\t\t\t\t{ children }\n\t\t\t</NavigatorContext.Provider>\n\t\t</View>\n\t);\n}\n\n/**\n * The `NavigatorProvider` component allows rendering nested views/panels/menus\n * (via the `NavigatorScreen` component and navigate between these different\n * view (via the `NavigatorButton` and `NavigatorBackButton` components or the\n * `useNavigator` hook).\n *\n * ```jsx\n * import {\n * __experimentalNavigatorProvider as NavigatorProvider,\n * __experimentalNavigatorScreen as NavigatorScreen,\n * __experimentalNavigatorButton as NavigatorButton,\n * __experimentalNavigatorBackButton as NavigatorBackButton,\n * } from '@wordpress/components';\n *\n * const MyNavigation = () => (\n * <NavigatorProvider initialPath=\"/\">\n * <NavigatorScreen path=\"/\">\n * <p>This is the home screen.</p>\n * <NavigatorButton path=\"/child\">\n * Navigate to child screen.\n * </NavigatorButton>\n * </NavigatorScreen>\n *\n * <NavigatorScreen path=\"/child\">\n * <p>This is the child screen.</p>\n * <NavigatorBackButton>\n * Go back\n * </NavigatorBackButton>\n * </NavigatorScreen>\n * </NavigatorProvider>\n * );\n * ```\n */\nexport const NavigatorProvider = contextConnect(\n\tUnconnectedNavigatorProvider,\n\t'NavigatorProvider'\n);\n\nexport default NavigatorProvider;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_element","require","_isShallowEqual","_interopRequireDefault","_context","_useCx","_router","_view","_context2","styles","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","MAX_HISTORY_LENGTH","screensReducer","state","action","type","screen","filter","s","id","UnconnectedNavigatorProvider","props","forwardedRef","initialPath","children","className","otherProps","useContextSystem","locationHistory","setLocationHistory","useState","path","currentLocationHistory","useRef","screens","dispatch","useReducer","currentScreens","useEffect","current","currentMatch","matchedPath","useMemo","currentPath","length","undefined","resolvePath","newMatch","patternMatch","isShallowEqual","params","addScreen","useCallback","removeScreen","goBack","prevLocationHistory","slice","isBack","hasRestoredFocus","goTo","options","focusTargetSelector","skipFocus","replace","restOptions","isNavigatingToPreviousPath","newLocation","newLocationHistory","push","goToParent","parentPath","findParent","navigatorContextValue","location","isInitial","match","cx","useCx","classes","navigatorProviderWrapper","_react","createElement","View","ref","NavigatorContext","Provider","value","NavigatorProvider","contextConnect","exports","_default"],"sources":["@wordpress/components/src/navigator/navigator-provider/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tuseMemo,\n\tuseState,\n\tuseCallback,\n\tuseReducer,\n\tuseRef,\n\tuseEffect,\n} from '@wordpress/element';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect, useContextSystem } from '../../context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport { patternMatch, findParent } from '../utils/router';\nimport { View } from '../../view';\nimport { NavigatorContext } from '../context';\nimport * as styles from '../styles';\nimport type {\n\tNavigatorProviderProps,\n\tNavigatorLocation,\n\tNavigatorContext as NavigatorContextType,\n\tScreen,\n} from '../types';\n\ntype MatchedPath = ReturnType< typeof patternMatch >;\ntype ScreenAction = { type: string; screen: Screen };\n\nconst MAX_HISTORY_LENGTH = 50;\n\nfunction screensReducer(\n\tstate: Screen[] = [],\n\taction: ScreenAction\n): Screen[] {\n\tswitch ( action.type ) {\n\t\tcase 'add':\n\t\t\treturn [ ...state, action.screen ];\n\t\tcase 'remove':\n\t\t\treturn state.filter( ( s: Screen ) => s.id !== action.screen.id );\n\t}\n\n\treturn state;\n}\n\nfunction UnconnectedNavigatorProvider(\n\tprops: WordPressComponentProps< NavigatorProviderProps, 'div' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst { initialPath, children, className, ...otherProps } =\n\t\tuseContextSystem( props, 'NavigatorProvider' );\n\n\tconst [ locationHistory, setLocationHistory ] = useState<\n\t\tNavigatorLocation[]\n\t>( [\n\t\t{\n\t\t\tpath: initialPath,\n\t\t},\n\t] );\n\tconst currentLocationHistory = useRef< NavigatorLocation[] >( [] );\n\tconst [ screens, dispatch ] = useReducer( screensReducer, [] );\n\tconst currentScreens = useRef< Screen[] >( [] );\n\tuseEffect( () => {\n\t\tcurrentScreens.current = screens;\n\t}, [ screens ] );\n\tuseEffect( () => {\n\t\tcurrentLocationHistory.current = locationHistory;\n\t}, [ locationHistory ] );\n\tconst currentMatch = useRef< MatchedPath >();\n\tconst matchedPath = useMemo( () => {\n\t\tlet currentPath: string | undefined;\n\t\tif (\n\t\t\tlocationHistory.length === 0 ||\n\t\t\t( currentPath =\n\t\t\t\tlocationHistory[ locationHistory.length - 1 ].path ) ===\n\t\t\t\tundefined\n\t\t) {\n\t\t\tcurrentMatch.current = undefined;\n\t\t\treturn undefined;\n\t\t}\n\n\t\tconst resolvePath = ( path: string ) => {\n\t\t\tconst newMatch = patternMatch( path, screens );\n\n\t\t\t// If the new match is the same as the current match,\n\t\t\t// return the previous one for performance reasons.\n\t\t\tif (\n\t\t\t\tcurrentMatch.current &&\n\t\t\t\tnewMatch &&\n\t\t\t\tisShallowEqual(\n\t\t\t\t\tnewMatch.params,\n\t\t\t\t\tcurrentMatch.current.params\n\t\t\t\t) &&\n\t\t\t\tnewMatch.id === currentMatch.current.id\n\t\t\t) {\n\t\t\t\treturn currentMatch.current;\n\t\t\t}\n\n\t\t\treturn newMatch;\n\t\t};\n\n\t\tconst newMatch = resolvePath( currentPath );\n\t\tcurrentMatch.current = newMatch;\n\t\treturn newMatch;\n\t}, [ screens, locationHistory ] );\n\n\tconst addScreen = useCallback(\n\t\t( screen: Screen ) => dispatch( { type: 'add', screen } ),\n\t\t[]\n\t);\n\n\tconst removeScreen = useCallback(\n\t\t( screen: Screen ) => dispatch( { type: 'remove', screen } ),\n\t\t[]\n\t);\n\n\tconst goBack: NavigatorContextType[ 'goBack' ] = useCallback( () => {\n\t\tsetLocationHistory( ( prevLocationHistory ) => {\n\t\t\tif ( prevLocationHistory.length <= 1 ) {\n\t\t\t\treturn prevLocationHistory;\n\t\t\t}\n\t\t\treturn [\n\t\t\t\t...prevLocationHistory.slice( 0, -2 ),\n\t\t\t\t{\n\t\t\t\t\t...prevLocationHistory[ prevLocationHistory.length - 2 ],\n\t\t\t\t\tisBack: true,\n\t\t\t\t\thasRestoredFocus: false,\n\t\t\t\t},\n\t\t\t];\n\t\t} );\n\t}, [] );\n\n\tconst goTo: NavigatorContextType[ 'goTo' ] = useCallback(\n\t\t( path, options = {} ) => {\n\t\t\tconst {\n\t\t\t\tfocusTargetSelector,\n\t\t\t\tisBack = false,\n\t\t\t\tskipFocus = false,\n\t\t\t\treplace = false,\n\t\t\t\t...restOptions\n\t\t\t} = options;\n\n\t\t\tconst isNavigatingToPreviousPath =\n\t\t\t\tisBack &&\n\t\t\t\tcurrentLocationHistory.current.length > 1 &&\n\t\t\t\tcurrentLocationHistory.current[\n\t\t\t\t\tcurrentLocationHistory.current.length - 2\n\t\t\t\t].path === path;\n\n\t\t\tif ( isNavigatingToPreviousPath ) {\n\t\t\t\tgoBack();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tsetLocationHistory( ( prevLocationHistory ) => {\n\t\t\t\tconst newLocation = {\n\t\t\t\t\t...restOptions,\n\t\t\t\t\tpath,\n\t\t\t\t\tisBack,\n\t\t\t\t\thasRestoredFocus: false,\n\t\t\t\t\tskipFocus,\n\t\t\t\t};\n\n\t\t\t\tif ( prevLocationHistory.length === 0 ) {\n\t\t\t\t\treturn replace ? [] : [ newLocation ];\n\t\t\t\t}\n\n\t\t\t\tconst newLocationHistory = prevLocationHistory.slice(\n\t\t\t\t\tprevLocationHistory.length > MAX_HISTORY_LENGTH - 1 ? 1 : 0,\n\t\t\t\t\t-1\n\t\t\t\t);\n\n\t\t\t\tif ( ! replace ) {\n\t\t\t\t\tnewLocationHistory.push(\n\t\t\t\t\t\t// Assign `focusTargetSelector` to the previous location in history\n\t\t\t\t\t\t// (the one we just navigated from).\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t...prevLocationHistory[\n\t\t\t\t\t\t\t\tprevLocationHistory.length - 1\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\tfocusTargetSelector,\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tnewLocationHistory.push( newLocation );\n\n\t\t\t\treturn newLocationHistory;\n\t\t\t} );\n\t\t},\n\t\t[ goBack ]\n\t);\n\n\tconst goToParent: NavigatorContextType[ 'goToParent' ] = useCallback(\n\t\t( options = {} ) => {\n\t\t\tconst currentPath =\n\t\t\t\tcurrentLocationHistory.current[\n\t\t\t\t\tcurrentLocationHistory.current.length - 1\n\t\t\t\t].path;\n\t\t\tif ( currentPath === undefined ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst parentPath = findParent(\n\t\t\t\tcurrentPath,\n\t\t\t\tcurrentScreens.current\n\t\t\t);\n\t\t\tif ( parentPath === undefined ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tgoTo( parentPath, { ...options, isBack: true } );\n\t\t},\n\t\t[ goTo ]\n\t);\n\n\tconst navigatorContextValue: NavigatorContextType = useMemo(\n\t\t() => ( {\n\t\t\tlocation: {\n\t\t\t\t...locationHistory[ locationHistory.length - 1 ],\n\t\t\t\tisInitial: locationHistory.length === 1,\n\t\t\t},\n\t\t\tparams: matchedPath ? matchedPath.params : {},\n\t\t\tmatch: matchedPath ? matchedPath.id : undefined,\n\t\t\tgoTo,\n\t\t\tgoBack,\n\t\t\tgoToParent,\n\t\t\taddScreen,\n\t\t\tremoveScreen,\n\t\t} ),\n\t\t[\n\t\t\tlocationHistory,\n\t\t\tmatchedPath,\n\t\t\tgoTo,\n\t\t\tgoBack,\n\t\t\tgoToParent,\n\t\t\taddScreen,\n\t\t\tremoveScreen,\n\t\t]\n\t);\n\n\tconst cx = useCx();\n\tconst classes = useMemo(\n\t\t() => cx( styles.navigatorProviderWrapper, className ),\n\t\t[ className, cx ]\n\t);\n\n\treturn (\n\t\t<View ref={ forwardedRef } className={ classes } { ...otherProps }>\n\t\t\t<NavigatorContext.Provider value={ navigatorContextValue }>\n\t\t\t\t{ children }\n\t\t\t</NavigatorContext.Provider>\n\t\t</View>\n\t);\n}\n\n/**\n * The `NavigatorProvider` component allows rendering nested views/panels/menus\n * (via the `NavigatorScreen` component and navigate between these different\n * view (via the `NavigatorButton` and `NavigatorBackButton` components or the\n * `useNavigator` hook).\n *\n * ```jsx\n * import {\n * __experimentalNavigatorProvider as NavigatorProvider,\n * __experimentalNavigatorScreen as NavigatorScreen,\n * __experimentalNavigatorButton as NavigatorButton,\n * __experimentalNavigatorBackButton as NavigatorBackButton,\n * } from '@wordpress/components';\n *\n * const MyNavigation = () => (\n * <NavigatorProvider initialPath=\"/\">\n * <NavigatorScreen path=\"/\">\n * <p>This is the home screen.</p>\n * <NavigatorButton path=\"/child\">\n * Navigate to child screen.\n * </NavigatorButton>\n * </NavigatorScreen>\n *\n * <NavigatorScreen path=\"/child\">\n * <p>This is the child screen.</p>\n * <NavigatorBackButton>\n * Go back\n * </NavigatorBackButton>\n * </NavigatorScreen>\n * </NavigatorProvider>\n * );\n * ```\n */\nexport const NavigatorProvider = contextConnect(\n\tUnconnectedNavigatorProvider,\n\t'NavigatorProvider'\n);\n\nexport default NavigatorProvider;\n"],"mappings":"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"}
@@ -5,8 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = exports.NavigatorScreen = void 0;
7
7
  var _react = require("react");
8
- var _framerMotion = require("framer-motion");
9
- var _react2 = require("@emotion/react");
10
8
  var _dom = require("@wordpress/dom");
11
9
  var _element = require("@wordpress/element");
12
10
  var _compose = require("@wordpress/compose");
@@ -16,23 +14,17 @@ var _context = require("../../context");
16
14
  var _useCx = require("../../utils/hooks/use-cx");
17
15
  var _view = require("../../view");
18
16
  var _context2 = require("../context");
19
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
20
- const animationEnterDelay = 0;
21
- const animationEnterDuration = 0.14;
22
- const animationExitDuration = 0.14;
23
- const animationExitDelay = 0;
17
+ var styles = _interopRequireWildcard(require("../styles"));
18
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+ /**
21
+ * External dependencies
22
+ */
23
+
24
+ /**
25
+ * WordPress dependencies
26
+ */
24
27
 
25
- // Props specific to `framer-motion` can't be currently passed to `NavigatorScreen`,
26
- // as some of them would overlap with HTML props (e.g. `onAnimationStart`, ...)
27
- var _ref = process.env.NODE_ENV === "production" ? {
28
- name: "14x3t6z",
29
- styles: "overflow-x:auto;max-height:100%"
30
- } : {
31
- name: "1ulogbc-classes",
32
- styles: "overflow-x:auto;max-height:100%;label:classes;",
33
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvbmF2aWdhdG9yL25hdmlnYXRvci1zY3JlZW4vY29tcG9uZW50LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE0RUkiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9uYXZpZ2F0b3IvbmF2aWdhdG9yLXNjcmVlbi9jb21wb25lbnQudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHR5cGUgeyBGb3J3YXJkZWRSZWYgfSBmcm9tICdyZWFjdCc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG5pbXBvcnQgdHlwZSB7IE1vdGlvblByb3BzIH0gZnJvbSAnZnJhbWVyLW1vdGlvbic7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tcmVzdHJpY3RlZC1pbXBvcnRzXG5pbXBvcnQgeyBtb3Rpb24gfSBmcm9tICdmcmFtZXItbW90aW9uJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcblxuLyoqXG4gKiBXb3JkUHJlc3MgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IGZvY3VzIH0gZnJvbSAnQHdvcmRwcmVzcy9kb20nO1xuaW1wb3J0IHtcblx0dXNlQ29udGV4dCxcblx0dXNlRWZmZWN0LFxuXHR1c2VNZW1vLFxuXHR1c2VSZWYsXG5cdHVzZUlkLFxufSBmcm9tICdAd29yZHByZXNzL2VsZW1lbnQnO1xuaW1wb3J0IHsgdXNlUmVkdWNlZE1vdGlvbiwgdXNlTWVyZ2VSZWZzIH0gZnJvbSAnQHdvcmRwcmVzcy9jb21wb3NlJztcbmltcG9ydCB7IGlzUlRMIH0gZnJvbSAnQHdvcmRwcmVzcy9pMThuJztcbmltcG9ydCB7IGVzY2FwZUF0dHJpYnV0ZSB9IGZyb20gJ0B3b3JkcHJlc3MvZXNjYXBlLWh0bWwnO1xuXG4vKipcbiAqIEludGVybmFsIGRlcGVuZGVuY2llc1xuICovXG5pbXBvcnQgdHlwZSB7IFdvcmRQcmVzc0NvbXBvbmVudFByb3BzIH0gZnJvbSAnLi4vLi4vY29udGV4dCc7XG5pbXBvcnQgeyBjb250ZXh0Q29ubmVjdCwgdXNlQ29udGV4dFN5c3RlbSB9IGZyb20gJy4uLy4uL2NvbnRleHQnO1xuaW1wb3J0IHsgdXNlQ3ggfSBmcm9tICcuLi8uLi91dGlscy9ob29rcy91c2UtY3gnO1xuaW1wb3J0IHsgVmlldyB9IGZyb20gJy4uLy4uL3ZpZXcnO1xuaW1wb3J0IHsgTmF2aWdhdG9yQ29udGV4dCB9IGZyb20gJy4uL2NvbnRleHQnO1xuaW1wb3J0IHR5cGUgeyBOYXZpZ2F0b3JTY3JlZW5Qcm9wcyB9IGZyb20gJy4uL3R5cGVzJztcblxuY29uc3QgYW5pbWF0aW9uRW50ZXJEZWxheSA9IDA7XG5jb25zdCBhbmltYXRpb25FbnRlckR1cmF0aW9uID0gMC4xNDtcbmNvbnN0IGFuaW1hdGlvbkV4aXREdXJhdGlvbiA9IDAuMTQ7XG5jb25zdCBhbmltYXRpb25FeGl0RGVsYXkgPSAwO1xuXG4vLyBQcm9wcyBzcGVjaWZpYyB0byBgZnJhbWVyLW1vdGlvbmAgY2FuJ3QgYmUgY3VycmVudGx5IHBhc3NlZCB0byBgTmF2aWdhdG9yU2NyZWVuYCxcbi8vIGFzIHNvbWUgb2YgdGhlbSB3b3VsZCBvdmVybGFwIHdpdGggSFRNTCBwcm9wcyAoZS5nLiBgb25BbmltYXRpb25TdGFydGAsIC4uLilcbnR5cGUgUHJvcHMgPSBPbWl0PFxuXHRXb3JkUHJlc3NDb21wb25lbnRQcm9wczwgTmF2aWdhdG9yU2NyZWVuUHJvcHMsICdkaXYnLCBmYWxzZSA+LFxuXHRFeGNsdWRlPCBrZXlvZiBNb3Rpb25Qcm9wcywgJ3N0eWxlJyB8ICdjaGlsZHJlbicgPlxuPjtcblxuZnVuY3Rpb24gVW5jb25uZWN0ZWROYXZpZ2F0b3JTY3JlZW4oXG5cdHByb3BzOiBQcm9wcyxcblx0Zm9yd2FyZGVkUmVmOiBGb3J3YXJkZWRSZWY8IGFueSA+XG4pIHtcblx0Y29uc3Qgc2NyZWVuSWQgPSB1c2VJZCgpO1xuXHRjb25zdCB7IGNoaWxkcmVuLCBjbGFzc05hbWUsIHBhdGgsIC4uLm90aGVyUHJvcHMgfSA9IHVzZUNvbnRleHRTeXN0ZW0oXG5cdFx0cHJvcHMsXG5cdFx0J05hdmlnYXRvclNjcmVlbidcblx0KTtcblxuXHRjb25zdCBwcmVmZXJzUmVkdWNlZE1vdGlvbiA9IHVzZVJlZHVjZWRNb3Rpb24oKTtcblx0Y29uc3QgeyBsb2NhdGlvbiwgbWF0Y2gsIGFkZFNjcmVlbiwgcmVtb3ZlU2NyZWVuIH0gPVxuXHRcdHVzZUNvbnRleHQoIE5hdmlnYXRvckNvbnRleHQgKTtcblx0Y29uc3QgaXNNYXRjaCA9IG1hdGNoID09PSBzY3JlZW5JZDtcblx0Y29uc3Qgd3JhcHBlclJlZiA9IHVzZVJlZjwgSFRNTERpdkVsZW1lbnQgPiggbnVsbCApO1xuXG5cdHVzZUVmZmVjdCggKCkgPT4ge1xuXHRcdGNvbnN0IHNjcmVlbiA9IHtcblx0XHRcdGlkOiBzY3JlZW5JZCxcblx0XHRcdHBhdGg6IGVzY2FwZUF0dHJpYnV0ZSggcGF0aCApLFxuXHRcdH07XG5cdFx0YWRkU2NyZWVuKCBzY3JlZW4gKTtcblx0XHRyZXR1cm4gKCkgPT4gcmVtb3ZlU2NyZWVuKCBzY3JlZW4gKTtcblx0fSwgWyBzY3JlZW5JZCwgcGF0aCwgYWRkU2NyZWVuLCByZW1vdmVTY3JlZW4gXSApO1xuXG5cdGNvbnN0IGN4ID0gdXNlQ3goKTtcblx0Y29uc3QgY2xhc3NlcyA9IHVzZU1lbW8oXG5cdFx0KCkgPT5cblx0XHRcdGN4KFxuXHRcdFx0XHRjc3MoIHtcblx0XHRcdFx0XHQvLyBFbnN1cmVzIGhvcml6b250YWwgb3ZlcmZsb3cgaXMgdmlzdWFsbHkgYWNjZXNzaWJsZS5cblx0XHRcdFx0XHRvdmVyZmxvd1g6ICdhdXRvJyxcblx0XHRcdFx0XHQvLyBJbiBjYXNlIHRoZSByb290IGhhcyBhIGhlaWdodCwgaXQgc2hvdWxkIG5vdCBiZSBleGNlZWRlZC5cblx0XHRcdFx0XHRtYXhIZWlnaHQ6ICcxMDAlJyxcblx0XHRcdFx0fSApLFxuXHRcdFx0XHRjbGFzc05hbWVcblx0XHRcdCksXG5cdFx0WyBjbGFzc05hbWUsIGN4IF1cblx0KTtcblxuXHRjb25zdCBsb2NhdGlvblJlZiA9IHVzZVJlZiggbG9jYXRpb24gKTtcblxuXHR1c2VFZmZlY3QoICgpID0+IHtcblx0XHRsb2NhdGlvblJlZi5jdXJyZW50ID0gbG9jYXRpb247XG5cdH0sIFsgbG9jYXRpb24gXSApO1xuXG5cdC8vIEZvY3VzIHJlc3RvcmF0aW9uXG5cdGNvbnN0IGlzSW5pdGlhbExvY2F0aW9uID0gbG9jYXRpb24uaXNJbml0aWFsICYmICEgbG9jYXRpb24uaXNCYWNrO1xuXHR1c2VFZmZlY3QoICgpID0+IHtcblx0XHQvLyBPbmx5IGF0dGVtcHQgdG8gcmVzdG9yZSBmb2N1czpcblx0XHQvLyAtIGlmIHRoZSBjdXJyZW50IGxvY2F0aW9uIGlzIG5vdCB0aGUgaW5pdGlhbCBvbmUgKHRvIGF2b2lkIG1vdmluZyBmb2N1cyBvbiBwYWdlIGxvYWQpXG5cdFx0Ly8gLSB3aGVuIHRoZSBzY3JlZW4gYmVjb21lcyB2aXNpYmxlXG5cdFx0Ly8gLSBpZiB0aGUgd3JhcHBlciByZWYgaGFzIGJlZW4gYXNzaWduZWRcblx0XHQvLyAtIGlmIGZvY3VzIGhhc24ndCBhbHJlYWR5IGJlZW4gcmVzdG9yZWQgZm9yIHRoZSBjdXJyZW50IGxvY2F0aW9uXG5cdFx0Ly8gLSBpZiB0aGUgYHNraXBGb2N1c2Agb3B0aW9uIGlzIG5vdCBzZXQgdG8gYHRydWVgLiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHdlIHRyaWdnZXIgdGhlIG5hdmlnYXRpb24gb3V0c2lkZSBvZiBOYXZpZ2F0b3JTY3JlZW4uXG5cdFx0aWYgKFxuXHRcdFx0aXNJbml0aWFsTG9jYXRpb24gfHxcblx0XHRcdCEgaXNNYXRjaCB8fFxuXHRcdFx0ISB3cmFwcGVyUmVmLmN1cnJlbnQgfHxcblx0XHRcdGxvY2F0aW9uUmVmLmN1cnJlbnQuaGFzUmVzdG9yZWRGb2N1cyB8fFxuXHRcdFx0bG9jYXRpb24uc2tpcEZvY3VzXG5cdFx0KSB7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXG5cdFx0Y29uc3QgYWN0aXZlRWxlbWVudCA9IHdyYXBwZXJSZWYuY3VycmVudC5vd25lckRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG5cblx0XHQvLyBJZiBhbiBlbGVtZW50IGlzIGFscmVhZHkgZm9jdXNlZCB3aXRoaW4gdGhlIHdyYXBwZXIgZG8gbm90IGZvY3VzIHRoZVxuXHRcdC8vIGVsZW1lbnQuIFRoaXMgcHJldmVudHMgaW5wdXRzIG9yIGJ1dHRvbnMgZnJvbSBsb3NpbmcgZm9jdXMgdW5uZWNlc3NhcmlseS5cblx0XHRpZiAoIHdyYXBwZXJSZWYuY3VycmVudC5jb250YWlucyggYWN0aXZlRWxlbWVudCApICkge1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblxuXHRcdGxldCBlbGVtZW50VG9Gb2N1czogSFRNTEVsZW1lbnQgfCBudWxsID0gbnVsbDtcblxuXHRcdC8vIFdoZW4gbmF2aWdhdGluZyBiYWNrLCBpZiBhIHNlbGVjdG9yIGlzIHByb3ZpZGVkLCB1c2UgaXQgdG8gbG9vayBmb3IgdGhlXG5cdFx0Ly8gdGFyZ2V0IGVsZW1lbnQgKGFzc3VtZWQgdG8gYmUgYSBub2RlIGluc2lkZSB0aGUgY3VycmVudCBOYXZpZ2F0b3JTY3JlZW4pXG5cdFx0aWYgKCBsb2NhdGlvbi5pc0JhY2sgJiYgbG9jYXRpb24/LmZvY3VzVGFyZ2V0U2VsZWN0b3IgKSB7XG5cdFx0XHRlbGVtZW50VG9Gb2N1cyA9IHdyYXBwZXJSZWYuY3VycmVudC5xdWVyeVNlbGVjdG9yKFxuXHRcdFx0XHRsb2NhdGlvbi5mb2N1c1RhcmdldFNlbGVjdG9yXG5cdFx0XHQpO1xuXHRcdH1cblxuXHRcdC8vIElmIHRoZSBwcmV2aW91cyBxdWVyeSBkaWRuJ3QgcnVuIG9yIGZpbmQgYW55IGVsZW1lbnQgdG8gZm9jdXMsIGZhbGxiYWNrXG5cdFx0Ly8gdG8gdGhlIGZpcnN0IHRhYmJhYmxlIGVsZW1lbnQgaW4gdGhlIHNjcmVlbiAob3IgdGhlIHNjcmVlbiBpdHNlbGYpLlxuXHRcdGlmICggISBlbGVtZW50VG9Gb2N1cyApIHtcblx0XHRcdGNvbnN0IGZpcnN0VGFiYmFibGUgPSAoXG5cdFx0XHRcdGZvY3VzLnRhYmJhYmxlLmZpbmQoIHdyYXBwZXJSZWYuY3VycmVudCApIGFzIEhUTUxFbGVtZW50W11cblx0XHRcdCApWyAwIF07XG5cdFx0XHRlbGVtZW50VG9Gb2N1cyA9IGZpcnN0VGFiYmFibGUgPz8gd3JhcHBlclJlZi5jdXJyZW50O1xuXHRcdH1cblxuXHRcdGxvY2F0aW9uUmVmLmN1cnJlbnQuaGFzUmVzdG9yZWRGb2N1cyA9IHRydWU7XG5cdFx0ZWxlbWVudFRvRm9jdXMuZm9jdXMoKTtcblx0fSwgW1xuXHRcdGlzSW5pdGlhbExvY2F0aW9uLFxuXHRcdGlzTWF0Y2gsXG5cdFx0bG9jYXRpb24uaXNCYWNrLFxuXHRcdGxvY2F0aW9uLmZvY3VzVGFyZ2V0U2VsZWN0b3IsXG5cdFx0bG9jYXRpb24uc2tpcEZvY3VzLFxuXHRdICk7XG5cblx0Y29uc3QgbWVyZ2VkV3JhcHBlclJlZiA9IHVzZU1lcmdlUmVmcyggWyBmb3J3YXJkZWRSZWYsIHdyYXBwZXJSZWYgXSApO1xuXG5cdGlmICggISBpc01hdGNoICkge1xuXHRcdHJldHVybiBudWxsO1xuXHR9XG5cblx0aWYgKCBwcmVmZXJzUmVkdWNlZE1vdGlvbiApIHtcblx0XHRyZXR1cm4gKFxuXHRcdFx0PFZpZXdcblx0XHRcdFx0cmVmPXsgbWVyZ2VkV3JhcHBlclJlZiB9XG5cdFx0XHRcdGNsYXNzTmFtZT17IGNsYXNzZXMgfVxuXHRcdFx0XHR7IC4uLm90aGVyUHJvcHMgfVxuXHRcdFx0PlxuXHRcdFx0XHR7IGNoaWxkcmVuIH1cblx0XHRcdDwvVmlldz5cblx0XHQpO1xuXHR9XG5cblx0Y29uc3QgYW5pbWF0ZSA9IHtcblx0XHRvcGFjaXR5OiAxLFxuXHRcdHRyYW5zaXRpb246IHtcblx0XHRcdGRlbGF5OiBhbmltYXRpb25FbnRlckRlbGF5LFxuXHRcdFx0ZHVyYXRpb246IGFuaW1hdGlvbkVudGVyRHVyYXRpb24sXG5cdFx0XHRlYXNlOiAnZWFzZUluT3V0Jyxcblx0XHR9LFxuXHRcdHg6IDAsXG5cdH07XG5cdC8vIERpc2FibGUgdGhlIGluaXRpYWwgYW5pbWF0aW9uIGlmIHRoZSBzY3JlZW4gaXMgdGhlIHZlcnkgZmlyc3Qgc2NyZWVuIHRvIGJlXG5cdC8vIHJlbmRlcmVkIHdpdGhpbiB0aGUgY3VycmVudCBgTmF2aWdhdG9yUHJvdmlkZXJgLlxuXHRjb25zdCBpbml0aWFsID1cblx0XHRsb2NhdGlvbi5pc0luaXRpYWwgJiYgISBsb2NhdGlvbi5pc0JhY2tcblx0XHRcdD8gZmFsc2Vcblx0XHRcdDoge1xuXHRcdFx0XHRcdG9wYWNpdHk6IDAsXG5cdFx0XHRcdFx0eDpcblx0XHRcdFx0XHRcdCggaXNSVEwoKSAmJiBsb2NhdGlvbi5pc0JhY2sgKSB8fFxuXHRcdFx0XHRcdFx0KCAhIGlzUlRMKCkgJiYgISBsb2NhdGlvbi5pc0JhY2sgKVxuXHRcdFx0XHRcdFx0XHQ/IDUwXG5cdFx0XHRcdFx0XHRcdDogLTUwLFxuXHRcdFx0ICB9O1xuXHRjb25zdCBleGl0ID0ge1xuXHRcdGRlbGF5OiBhbmltYXRpb25FeGl0RGVsYXksXG5cdFx0b3BhY2l0eTogMCxcblx0XHR4OlxuXHRcdFx0KCAhIGlzUlRMKCkgJiYgbG9jYXRpb24uaXNCYWNrICkgfHwgKCBpc1JUTCgpICYmICEgbG9jYXRpb24uaXNCYWNrIClcblx0XHRcdFx0PyA1MFxuXHRcdFx0XHQ6IC01MCxcblx0XHR0cmFuc2l0aW9uOiB7XG5cdFx0XHRkdXJhdGlvbjogYW5pbWF0aW9uRXhpdER1cmF0aW9uLFxuXHRcdFx0ZWFzZTogJ2Vhc2VJbk91dCcsXG5cdFx0fSxcblx0fTtcblxuXHRjb25zdCBhbmltYXRlZFByb3BzID0ge1xuXHRcdGFuaW1hdGUsXG5cdFx0ZXhpdCxcblx0XHRpbml0aWFsLFxuXHR9O1xuXG5cdHJldHVybiAoXG5cdFx0PG1vdGlvbi5kaXZcblx0XHRcdHJlZj17IG1lcmdlZFdyYXBwZXJSZWYgfVxuXHRcdFx0Y2xhc3NOYW1lPXsgY2xhc3NlcyB9XG5cdFx0XHR7IC4uLm90aGVyUHJvcHMgfVxuXHRcdFx0eyAuLi5hbmltYXRlZFByb3BzIH1cblx0XHQ+XG5cdFx0XHR7IGNoaWxkcmVuIH1cblx0XHQ8L21vdGlvbi5kaXY+XG5cdCk7XG59XG5cbi8qKlxuICogVGhlIGBOYXZpZ2F0b3JTY3JlZW5gIGNvbXBvbmVudCByZXByZXNlbnRzIGEgc2luZ2xlIHZpZXcvc2NyZWVuL3BhbmVsIGFuZFxuICogc2hvdWxkIGJlIHVzZWQgaW4gY29tYmluYXRpb24gd2l0aCB0aGUgYE5hdmlnYXRvclByb3ZpZGVyYCwgdGhlXG4gKiBgTmF2aWdhdG9yQnV0dG9uYCBhbmQgdGhlIGBOYXZpZ2F0b3JCYWNrQnV0dG9uYCBjb21wb25lbnRzIChvciB0aGUgYHVzZU5hdmlnYXRvcmBcbiAqIGhvb2spLlxuICpcbiAqIEBleGFtcGxlXG4gKiBgYGBqc3hcbiAqIGltcG9ydCB7XG4gKiAgIF9fZXhwZXJpbWVudGFsTmF2aWdhdG9yUHJvdmlkZXIgYXMgTmF2aWdhdG9yUHJvdmlkZXIsXG4gKiAgIF9fZXhwZXJpbWVudGFsTmF2aWdhdG9yU2NyZWVuIGFzIE5hdmlnYXRvclNjcmVlbixcbiAqICAgX19leHBlcmltZW50YWxOYXZpZ2F0b3JCdXR0b24gYXMgTmF2aWdhdG9yQnV0dG9uLFxuICogICBfX2V4cGVyaW1lbnRhbE5hdmlnYXRvckJhY2tCdXR0b24gYXMgTmF2aWdhdG9yQmFja0J1dHRvbixcbiAqIH0gZnJvbSAnQHdvcmRwcmVzcy9jb21wb25lbnRzJztcbiAqXG4gKiBjb25zdCBNeU5hdmlnYXRpb24gPSAoKSA9PiAoXG4gKiAgIDxOYXZpZ2F0b3JQcm92aWRlciBpbml0aWFsUGF0aD1cIi9cIj5cbiAqICAgICA8TmF2aWdhdG9yU2NyZWVuIHBhdGg9XCIvXCI+XG4gKiAgICAgICA8cD5UaGlzIGlzIHRoZSBob21lIHNjcmVlbi48L3A+XG4gKiAgICAgICAgPE5hdmlnYXRvckJ1dHRvbiBwYXRoPVwiL2NoaWxkXCI+XG4gKiAgICAgICAgICBOYXZpZ2F0ZSB0byBjaGlsZCBzY3JlZW4uXG4gKiAgICAgICA8L05hdmlnYXRvckJ1dHRvbj5cbiAqICAgICA8L05hdmlnYXRvclNjcmVlbj5cbiAqXG4gKiAgICAgPE5hdmlnYXRvclNjcmVlbiBwYXRoPVwiL2NoaWxkXCI+XG4gKiAgICAgICA8cD5UaGlzIGlzIHRoZSBjaGlsZCBzY3JlZW4uPC9wPlxuICogICAgICAgPE5hdmlnYXRvckJhY2tCdXR0b24+XG4gKiAgICAgICAgIEdvIGJhY2tcbiAqICAgICAgIDwvTmF2aWdhdG9yQmFja0J1dHRvbj5cbiAqICAgICA8L05hdmlnYXRvclNjcmVlbj5cbiAqICAgPC9OYXZpZ2F0b3JQcm92aWRlcj5cbiAqICk7XG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNvbnN0IE5hdmlnYXRvclNjcmVlbiA9IGNvbnRleHRDb25uZWN0KFxuXHRVbmNvbm5lY3RlZE5hdmlnYXRvclNjcmVlbixcblx0J05hdmlnYXRvclNjcmVlbidcbik7XG5cbmV4cG9ydCBkZWZhdWx0IE5hdmlnYXRvclNjcmVlbjtcbiJdfQ== */",
34
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
35
- };
36
28
  function UnconnectedNavigatorScreen(props, forwardedRef) {
37
29
  const screenId = (0, _element.useId)();
38
30
  const {
@@ -41,7 +33,6 @@ function UnconnectedNavigatorScreen(props, forwardedRef) {
41
33
  path,
42
34
  ...otherProps
43
35
  } = (0, _context.useContextSystem)(props, 'NavigatorScreen');
44
- const prefersReducedMotion = (0, _compose.useReducedMotion)();
45
36
  const {
46
37
  location,
47
38
  match,
@@ -58,8 +49,17 @@ function UnconnectedNavigatorScreen(props, forwardedRef) {
58
49
  addScreen(screen);
59
50
  return () => removeScreen(screen);
60
51
  }, [screenId, path, addScreen, removeScreen]);
52
+ const isRTL = (0, _i18n.isRTL)();
53
+ const {
54
+ isInitial,
55
+ isBack
56
+ } = location;
61
57
  const cx = (0, _useCx.useCx)();
62
- const classes = (0, _element.useMemo)(() => cx(_ref, className), [className, cx]);
58
+ const classes = (0, _element.useMemo)(() => cx(styles.navigatorScreen({
59
+ isInitial,
60
+ isBack,
61
+ isRTL
62
+ }), className), [className, cx, isInitial, isBack, isRTL]);
63
63
  const locationRef = (0, _element.useRef)(location);
64
64
  (0, _element.useEffect)(() => {
65
65
  locationRef.current = location;
@@ -102,51 +102,11 @@ function UnconnectedNavigatorScreen(props, forwardedRef) {
102
102
  elementToFocus.focus();
103
103
  }, [isInitialLocation, isMatch, location.isBack, location.focusTargetSelector, location.skipFocus]);
104
104
  const mergedWrapperRef = (0, _compose.useMergeRefs)([forwardedRef, wrapperRef]);
105
- if (!isMatch) {
106
- return null;
107
- }
108
- if (prefersReducedMotion) {
109
- return (0, _react.createElement)(_view.View, {
110
- ref: mergedWrapperRef,
111
- className: classes,
112
- ...otherProps
113
- }, children);
114
- }
115
- const animate = {
116
- opacity: 1,
117
- transition: {
118
- delay: animationEnterDelay,
119
- duration: animationEnterDuration,
120
- ease: 'easeInOut'
121
- },
122
- x: 0
123
- };
124
- // Disable the initial animation if the screen is the very first screen to be
125
- // rendered within the current `NavigatorProvider`.
126
- const initial = location.isInitial && !location.isBack ? false : {
127
- opacity: 0,
128
- x: (0, _i18n.isRTL)() && location.isBack || !(0, _i18n.isRTL)() && !location.isBack ? 50 : -50
129
- };
130
- const exit = {
131
- delay: animationExitDelay,
132
- opacity: 0,
133
- x: !(0, _i18n.isRTL)() && location.isBack || (0, _i18n.isRTL)() && !location.isBack ? 50 : -50,
134
- transition: {
135
- duration: animationExitDuration,
136
- ease: 'easeInOut'
137
- }
138
- };
139
- const animatedProps = {
140
- animate,
141
- exit,
142
- initial
143
- };
144
- return (0, _react.createElement)(_framerMotion.motion.div, {
105
+ return isMatch ? (0, _react.createElement)(_view.View, {
145
106
  ref: mergedWrapperRef,
146
107
  className: classes,
147
- ...otherProps,
148
- ...animatedProps
149
- }, children);
108
+ ...otherProps
109
+ }, children) : null;
150
110
  }
151
111
 
152
112
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_framerMotion","require","_react2","_dom","_element","_compose","_i18n","_escapeHtml","_context","_useCx","_view","_context2","_EMOTION_STRINGIFIED_CSS_ERROR__","animationEnterDelay","animationEnterDuration","animationExitDuration","animationExitDelay","_ref","process","env","NODE_ENV","name","styles","map","toString","UnconnectedNavigatorScreen","props","forwardedRef","screenId","useId","children","className","path","otherProps","useContextSystem","prefersReducedMotion","useReducedMotion","location","match","addScreen","removeScreen","useContext","NavigatorContext","isMatch","wrapperRef","useRef","useEffect","screen","id","escapeAttribute","cx","useCx","classes","useMemo","locationRef","current","isInitialLocation","isInitial","isBack","hasRestoredFocus","skipFocus","activeElement","ownerDocument","contains","elementToFocus","focusTargetSelector","querySelector","firstTabbable","focus","tabbable","find","mergedWrapperRef","useMergeRefs","_react","createElement","View","ref","animate","opacity","transition","delay","duration","ease","x","initial","isRTL","exit","animatedProps","motion","div","NavigatorScreen","contextConnect","exports","_default","default"],"sources":["@wordpress/components/src/navigator/navigator-screen/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n// eslint-disable-next-line no-restricted-imports\nimport type { MotionProps } from 'framer-motion';\n// eslint-disable-next-line no-restricted-imports\nimport { motion } from 'framer-motion';\nimport { css } from '@emotion/react';\n\n/**\n * WordPress dependencies\n */\nimport { focus } from '@wordpress/dom';\nimport {\n\tuseContext,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseId,\n} from '@wordpress/element';\nimport { useReducedMotion, useMergeRefs } from '@wordpress/compose';\nimport { isRTL } from '@wordpress/i18n';\nimport { escapeAttribute } from '@wordpress/escape-html';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect, useContextSystem } from '../../context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport { View } from '../../view';\nimport { NavigatorContext } from '../context';\nimport type { NavigatorScreenProps } from '../types';\n\nconst animationEnterDelay = 0;\nconst animationEnterDuration = 0.14;\nconst animationExitDuration = 0.14;\nconst animationExitDelay = 0;\n\n// Props specific to `framer-motion` can't be currently passed to `NavigatorScreen`,\n// as some of them would overlap with HTML props (e.g. `onAnimationStart`, ...)\ntype Props = Omit<\n\tWordPressComponentProps< NavigatorScreenProps, 'div', false >,\n\tExclude< keyof MotionProps, 'style' | 'children' >\n>;\n\nfunction UnconnectedNavigatorScreen(\n\tprops: Props,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst screenId = useId();\n\tconst { children, className, path, ...otherProps } = useContextSystem(\n\t\tprops,\n\t\t'NavigatorScreen'\n\t);\n\n\tconst prefersReducedMotion = useReducedMotion();\n\tconst { location, match, addScreen, removeScreen } =\n\t\tuseContext( NavigatorContext );\n\tconst isMatch = match === screenId;\n\tconst wrapperRef = useRef< HTMLDivElement >( null );\n\n\tuseEffect( () => {\n\t\tconst screen = {\n\t\t\tid: screenId,\n\t\t\tpath: escapeAttribute( path ),\n\t\t};\n\t\taddScreen( screen );\n\t\treturn () => removeScreen( screen );\n\t}, [ screenId, path, addScreen, removeScreen ] );\n\n\tconst cx = useCx();\n\tconst classes = useMemo(\n\t\t() =>\n\t\t\tcx(\n\t\t\t\tcss( {\n\t\t\t\t\t// Ensures horizontal overflow is visually accessible.\n\t\t\t\t\toverflowX: 'auto',\n\t\t\t\t\t// In case the root has a height, it should not be exceeded.\n\t\t\t\t\tmaxHeight: '100%',\n\t\t\t\t} ),\n\t\t\t\tclassName\n\t\t\t),\n\t\t[ className, cx ]\n\t);\n\n\tconst locationRef = useRef( location );\n\n\tuseEffect( () => {\n\t\tlocationRef.current = location;\n\t}, [ location ] );\n\n\t// Focus restoration\n\tconst isInitialLocation = location.isInitial && ! location.isBack;\n\tuseEffect( () => {\n\t\t// Only attempt to restore focus:\n\t\t// - if the current location is not the initial one (to avoid moving focus on page load)\n\t\t// - when the screen becomes visible\n\t\t// - if the wrapper ref has been assigned\n\t\t// - if focus hasn't already been restored for the current location\n\t\t// - if the `skipFocus` option is not set to `true`. This is useful when we trigger the navigation outside of NavigatorScreen.\n\t\tif (\n\t\t\tisInitialLocation ||\n\t\t\t! isMatch ||\n\t\t\t! wrapperRef.current ||\n\t\t\tlocationRef.current.hasRestoredFocus ||\n\t\t\tlocation.skipFocus\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst activeElement = wrapperRef.current.ownerDocument.activeElement;\n\n\t\t// If an element is already focused within the wrapper do not focus the\n\t\t// element. This prevents inputs or buttons from losing focus unnecessarily.\n\t\tif ( wrapperRef.current.contains( activeElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet elementToFocus: HTMLElement | null = null;\n\n\t\t// When navigating back, if a selector is provided, use it to look for the\n\t\t// target element (assumed to be a node inside the current NavigatorScreen)\n\t\tif ( location.isBack && location?.focusTargetSelector ) {\n\t\t\telementToFocus = wrapperRef.current.querySelector(\n\t\t\t\tlocation.focusTargetSelector\n\t\t\t);\n\t\t}\n\n\t\t// If the previous query didn't run or find any element to focus, fallback\n\t\t// to the first tabbable element in the screen (or the screen itself).\n\t\tif ( ! elementToFocus ) {\n\t\t\tconst firstTabbable = (\n\t\t\t\tfocus.tabbable.find( wrapperRef.current ) as HTMLElement[]\n\t\t\t )[ 0 ];\n\t\t\telementToFocus = firstTabbable ?? wrapperRef.current;\n\t\t}\n\n\t\tlocationRef.current.hasRestoredFocus = true;\n\t\telementToFocus.focus();\n\t}, [\n\t\tisInitialLocation,\n\t\tisMatch,\n\t\tlocation.isBack,\n\t\tlocation.focusTargetSelector,\n\t\tlocation.skipFocus,\n\t] );\n\n\tconst mergedWrapperRef = useMergeRefs( [ forwardedRef, wrapperRef ] );\n\n\tif ( ! isMatch ) {\n\t\treturn null;\n\t}\n\n\tif ( prefersReducedMotion ) {\n\t\treturn (\n\t\t\t<View\n\t\t\t\tref={ mergedWrapperRef }\n\t\t\t\tclassName={ classes }\n\t\t\t\t{ ...otherProps }\n\t\t\t>\n\t\t\t\t{ children }\n\t\t\t</View>\n\t\t);\n\t}\n\n\tconst animate = {\n\t\topacity: 1,\n\t\ttransition: {\n\t\t\tdelay: animationEnterDelay,\n\t\t\tduration: animationEnterDuration,\n\t\t\tease: 'easeInOut',\n\t\t},\n\t\tx: 0,\n\t};\n\t// Disable the initial animation if the screen is the very first screen to be\n\t// rendered within the current `NavigatorProvider`.\n\tconst initial =\n\t\tlocation.isInitial && ! location.isBack\n\t\t\t? false\n\t\t\t: {\n\t\t\t\t\topacity: 0,\n\t\t\t\t\tx:\n\t\t\t\t\t\t( isRTL() && location.isBack ) ||\n\t\t\t\t\t\t( ! isRTL() && ! location.isBack )\n\t\t\t\t\t\t\t? 50\n\t\t\t\t\t\t\t: -50,\n\t\t\t };\n\tconst exit = {\n\t\tdelay: animationExitDelay,\n\t\topacity: 0,\n\t\tx:\n\t\t\t( ! isRTL() && location.isBack ) || ( isRTL() && ! location.isBack )\n\t\t\t\t? 50\n\t\t\t\t: -50,\n\t\ttransition: {\n\t\t\tduration: animationExitDuration,\n\t\t\tease: 'easeInOut',\n\t\t},\n\t};\n\n\tconst animatedProps = {\n\t\tanimate,\n\t\texit,\n\t\tinitial,\n\t};\n\n\treturn (\n\t\t<motion.div\n\t\t\tref={ mergedWrapperRef }\n\t\t\tclassName={ classes }\n\t\t\t{ ...otherProps }\n\t\t\t{ ...animatedProps }\n\t\t>\n\t\t\t{ children }\n\t\t</motion.div>\n\t);\n}\n\n/**\n * The `NavigatorScreen` component represents a single view/screen/panel and\n * should be used in combination with the `NavigatorProvider`, the\n * `NavigatorButton` and the `NavigatorBackButton` components (or the `useNavigator`\n * hook).\n *\n * @example\n * ```jsx\n * import {\n * __experimentalNavigatorProvider as NavigatorProvider,\n * __experimentalNavigatorScreen as NavigatorScreen,\n * __experimentalNavigatorButton as NavigatorButton,\n * __experimentalNavigatorBackButton as NavigatorBackButton,\n * } from '@wordpress/components';\n *\n * const MyNavigation = () => (\n * <NavigatorProvider initialPath=\"/\">\n * <NavigatorScreen path=\"/\">\n * <p>This is the home screen.</p>\n * <NavigatorButton path=\"/child\">\n * Navigate to child screen.\n * </NavigatorButton>\n * </NavigatorScreen>\n *\n * <NavigatorScreen path=\"/child\">\n * <p>This is the child screen.</p>\n * <NavigatorBackButton>\n * Go back\n * </NavigatorBackButton>\n * </NavigatorScreen>\n * </NavigatorProvider>\n * );\n * ```\n */\nexport const NavigatorScreen = contextConnect(\n\tUnconnectedNavigatorScreen,\n\t'NavigatorScreen'\n);\n\nexport default NavigatorScreen;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_dom","require","_element","_compose","_i18n","_escapeHtml","_context","_useCx","_view","_context2","styles","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","UnconnectedNavigatorScreen","props","forwardedRef","screenId","useId","children","className","path","otherProps","useContextSystem","location","match","addScreen","removeScreen","useContext","NavigatorContext","isMatch","wrapperRef","useRef","useEffect","screen","id","escapeAttribute","isRTL","isRTLFn","isInitial","isBack","cx","useCx","classes","useMemo","navigatorScreen","locationRef","current","isInitialLocation","hasRestoredFocus","skipFocus","activeElement","ownerDocument","contains","elementToFocus","focusTargetSelector","querySelector","firstTabbable","focus","tabbable","find","mergedWrapperRef","useMergeRefs","_react","createElement","View","ref","NavigatorScreen","contextConnect","exports","_default"],"sources":["@wordpress/components/src/navigator/navigator-screen/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { focus } from '@wordpress/dom';\nimport {\n\tuseContext,\n\tuseEffect,\n\tuseMemo,\n\tuseRef,\n\tuseId,\n} from '@wordpress/element';\nimport { useMergeRefs } from '@wordpress/compose';\nimport { isRTL as isRTLFn } from '@wordpress/i18n';\nimport { escapeAttribute } from '@wordpress/escape-html';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect, useContextSystem } from '../../context';\nimport { useCx } from '../../utils/hooks/use-cx';\nimport { View } from '../../view';\nimport { NavigatorContext } from '../context';\nimport * as styles from '../styles';\nimport type { NavigatorScreenProps } from '../types';\n\nfunction UnconnectedNavigatorScreen(\n\tprops: WordPressComponentProps< NavigatorScreenProps, 'div', false >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst screenId = useId();\n\tconst { children, className, path, ...otherProps } = useContextSystem(\n\t\tprops,\n\t\t'NavigatorScreen'\n\t);\n\n\tconst { location, match, addScreen, removeScreen } =\n\t\tuseContext( NavigatorContext );\n\tconst isMatch = match === screenId;\n\tconst wrapperRef = useRef< HTMLDivElement >( null );\n\n\tuseEffect( () => {\n\t\tconst screen = {\n\t\t\tid: screenId,\n\t\t\tpath: escapeAttribute( path ),\n\t\t};\n\t\taddScreen( screen );\n\t\treturn () => removeScreen( screen );\n\t}, [ screenId, path, addScreen, removeScreen ] );\n\n\tconst isRTL = isRTLFn();\n\tconst { isInitial, isBack } = location;\n\tconst cx = useCx();\n\tconst classes = useMemo(\n\t\t() =>\n\t\t\tcx(\n\t\t\t\tstyles.navigatorScreen( {\n\t\t\t\t\tisInitial,\n\t\t\t\t\tisBack,\n\t\t\t\t\tisRTL,\n\t\t\t\t} ),\n\t\t\t\tclassName\n\t\t\t),\n\t\t[ className, cx, isInitial, isBack, isRTL ]\n\t);\n\n\tconst locationRef = useRef( location );\n\n\tuseEffect( () => {\n\t\tlocationRef.current = location;\n\t}, [ location ] );\n\n\t// Focus restoration\n\tconst isInitialLocation = location.isInitial && ! location.isBack;\n\tuseEffect( () => {\n\t\t// Only attempt to restore focus:\n\t\t// - if the current location is not the initial one (to avoid moving focus on page load)\n\t\t// - when the screen becomes visible\n\t\t// - if the wrapper ref has been assigned\n\t\t// - if focus hasn't already been restored for the current location\n\t\t// - if the `skipFocus` option is not set to `true`. This is useful when we trigger the navigation outside of NavigatorScreen.\n\t\tif (\n\t\t\tisInitialLocation ||\n\t\t\t! isMatch ||\n\t\t\t! wrapperRef.current ||\n\t\t\tlocationRef.current.hasRestoredFocus ||\n\t\t\tlocation.skipFocus\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst activeElement = wrapperRef.current.ownerDocument.activeElement;\n\n\t\t// If an element is already focused within the wrapper do not focus the\n\t\t// element. This prevents inputs or buttons from losing focus unnecessarily.\n\t\tif ( wrapperRef.current.contains( activeElement ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tlet elementToFocus: HTMLElement | null = null;\n\n\t\t// When navigating back, if a selector is provided, use it to look for the\n\t\t// target element (assumed to be a node inside the current NavigatorScreen)\n\t\tif ( location.isBack && location?.focusTargetSelector ) {\n\t\t\telementToFocus = wrapperRef.current.querySelector(\n\t\t\t\tlocation.focusTargetSelector\n\t\t\t);\n\t\t}\n\n\t\t// If the previous query didn't run or find any element to focus, fallback\n\t\t// to the first tabbable element in the screen (or the screen itself).\n\t\tif ( ! elementToFocus ) {\n\t\t\tconst firstTabbable = (\n\t\t\t\tfocus.tabbable.find( wrapperRef.current ) as HTMLElement[]\n\t\t\t )[ 0 ];\n\t\t\telementToFocus = firstTabbable ?? wrapperRef.current;\n\t\t}\n\n\t\tlocationRef.current.hasRestoredFocus = true;\n\t\telementToFocus.focus();\n\t}, [\n\t\tisInitialLocation,\n\t\tisMatch,\n\t\tlocation.isBack,\n\t\tlocation.focusTargetSelector,\n\t\tlocation.skipFocus,\n\t] );\n\n\tconst mergedWrapperRef = useMergeRefs( [ forwardedRef, wrapperRef ] );\n\n\treturn isMatch ? (\n\t\t<View ref={ mergedWrapperRef } className={ classes } { ...otherProps }>\n\t\t\t{ children }\n\t\t</View>\n\t) : null;\n}\n\n/**\n * The `NavigatorScreen` component represents a single view/screen/panel and\n * should be used in combination with the `NavigatorProvider`, the\n * `NavigatorButton` and the `NavigatorBackButton` components (or the `useNavigator`\n * hook).\n *\n * @example\n * ```jsx\n * import {\n * __experimentalNavigatorProvider as NavigatorProvider,\n * __experimentalNavigatorScreen as NavigatorScreen,\n * __experimentalNavigatorButton as NavigatorButton,\n * __experimentalNavigatorBackButton as NavigatorBackButton,\n * } from '@wordpress/components';\n *\n * const MyNavigation = () => (\n * <NavigatorProvider initialPath=\"/\">\n * <NavigatorScreen path=\"/\">\n * <p>This is the home screen.</p>\n * <NavigatorButton path=\"/child\">\n * Navigate to child screen.\n * </NavigatorButton>\n * </NavigatorScreen>\n *\n * <NavigatorScreen path=\"/child\">\n * <p>This is the child screen.</p>\n * <NavigatorBackButton>\n * Go back\n * </NavigatorBackButton>\n * </NavigatorScreen>\n * </NavigatorProvider>\n * );\n * ```\n */\nexport const NavigatorScreen = contextConnect(\n\tUnconnectedNavigatorScreen,\n\t'NavigatorScreen'\n);\n\nexport default NavigatorScreen;\n"],"mappings":"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"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.navigatorScreen = exports.navigatorProviderWrapper = void 0;
7
+ var _react = require("@emotion/react");
8
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
9
+ const navigatorProviderWrapper = process.env.NODE_ENV === "production" ? {
10
+ name: "xpkswc",
11
+ styles: "overflow-x:hidden;contain:content"
12
+ } : {
13
+ name: "1qbsmur-navigatorProviderWrapper",
14
+ styles: "overflow-x:hidden;contain:content;label:navigatorProviderWrapper;",
15
+ map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvbmF2aWdhdG9yL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLMkMiLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9uYXZpZ2F0b3Ivc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzLCBrZXlmcmFtZXMgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmV4cG9ydCBjb25zdCBuYXZpZ2F0b3JQcm92aWRlcldyYXBwZXIgPSBjc3NgXG5cdC8qIFByZXZlbnRzIGhvcml6b250YWwgb3ZlcmZsb3cgd2hpbGUgYW5pbWF0aW5nIHNjcmVlbiB0cmFuc2l0aW9ucyAqL1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdC8qIE1hcmsgdGhpcyBzdWJzZWN0aW9uIG9mIHRoZSBET00gYXMgaXNvbGF0ZWQsIHByb3ZpZGluZyBwZXJmb3JtYW5jZSBiZW5lZml0c1xuXHQgKiBieSBsaW1pdGluZyBjYWxjdWxhdGlvbnMgb2YgbGF5b3V0LCBzdHlsZSBhbmQgcGFpbnQgdG8gYSBET00gc3VidHJlZSByYXRoZXJcblx0ICogdGhhbiB0aGUgZW50aXJlIHBhZ2UuXG5cdCAqL1xuXHRjb250YWluOiBjb250ZW50O1xuYDtcblxuY29uc3QgZmFkZUluRnJvbVJpZ2h0ID0ga2V5ZnJhbWVzKCB7XG5cdCcwJSc6IHtcblx0XHRvcGFjaXR5OiAwLFxuXHRcdHRyYW5zZm9ybTogYHRyYW5zbGF0ZVgoIDUwcHggKWAsXG5cdH0sXG5cdCcxMDAlJzogeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICdub25lJyB9LFxufSApO1xuXG5jb25zdCBmYWRlSW5Gcm9tTGVmdCA9IGtleWZyYW1lcygge1xuXHQnMCUnOiB7XG5cdFx0b3BhY2l0eTogMCxcblx0XHR0cmFuc2Zvcm06IGB0cmFuc2xhdGVYKCAtNTBweCApYCxcblx0fSxcblx0JzEwMCUnOiB7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ25vbmUnIH0sXG59ICk7XG5cbnR5cGUgTmF2aWdhdG9yU2NyZWVuQW5pbWF0aW9uUHJvcHMgPSB7XG5cdGlzSW5pdGlhbD86IGJvb2xlYW47XG5cdGlzQmFjaz86IGJvb2xlYW47XG5cdGlzUlRMOiBib29sZWFuO1xufTtcblxuY29uc3QgbmF2aWdhdG9yU2NyZWVuQW5pbWF0aW9uID0gKCB7XG5cdGlzSW5pdGlhbCxcblx0aXNCYWNrLFxuXHRpc1JUTCxcbn06IE5hdmlnYXRvclNjcmVlbkFuaW1hdGlvblByb3BzICkgPT4ge1xuXHRpZiAoIGlzSW5pdGlhbCAmJiAhIGlzQmFjayApIHtcblx0XHRyZXR1cm47XG5cdH1cblxuXHRjb25zdCBhbmltYXRpb25OYW1lID1cblx0XHQoIGlzUlRMICYmIGlzQmFjayApIHx8ICggISBpc1JUTCAmJiAhIGlzQmFjayApXG5cdFx0XHQ/IGZhZGVJbkZyb21SaWdodFxuXHRcdFx0OiBmYWRlSW5Gcm9tTGVmdDtcblxuXHRyZXR1cm4gY3NzYFxuXHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMC4xNHM7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcblx0XHRhbmltYXRpb24tbmFtZTogJHsgYW5pbWF0aW9uTmFtZSB9O1xuXG5cdFx0QG1lZGlhICggcHJlZmVycy1yZWR1Y2VkLW1vdGlvbiApIHtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMHM7XG5cdFx0fVxuXHRgO1xufTtcblxuZXhwb3J0IGNvbnN0IG5hdmlnYXRvclNjcmVlbiA9ICggcHJvcHM6IE5hdmlnYXRvclNjcmVlbkFuaW1hdGlvblByb3BzICkgPT4gY3NzYFxuXHQvKiBFbnN1cmVzIGhvcml6b250YWwgb3ZlcmZsb3cgaXMgdmlzdWFsbHkgYWNjZXNzaWJsZSAqL1xuXHRvdmVyZmxvdy14OiBhdXRvO1xuXHQvKiBJbiBjYXNlIHRoZSByb290IGhhcyBhIGhlaWdodCwgaXQgc2hvdWxkIG5vdCBiZSBleGNlZWRlZCAqL1xuXHRtYXgtaGVpZ2h0OiAxMDAlO1xuXG5cdCR7IG5hdmlnYXRvclNjcmVlbkFuaW1hdGlvbiggcHJvcHMgKSB9XG5gO1xuIl19 */",
16
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
17
+ };
18
+ exports.navigatorProviderWrapper = navigatorProviderWrapper;
19
+ const fadeInFromRight = (0, _react.keyframes)({
20
+ '0%': {
21
+ opacity: 0,
22
+ transform: `translateX( 50px )`
23
+ },
24
+ '100%': {
25
+ opacity: 1,
26
+ transform: 'none'
27
+ }
28
+ });
29
+ const fadeInFromLeft = (0, _react.keyframes)({
30
+ '0%': {
31
+ opacity: 0,
32
+ transform: `translateX( -50px )`
33
+ },
34
+ '100%': {
35
+ opacity: 1,
36
+ transform: 'none'
37
+ }
38
+ });
39
+ const navigatorScreenAnimation = ({
40
+ isInitial,
41
+ isBack,
42
+ isRTL
43
+ }) => {
44
+ if (isInitial && !isBack) {
45
+ return;
46
+ }
47
+ const animationName = isRTL && isBack || !isRTL && !isBack ? fadeInFromRight : fadeInFromLeft;
48
+ return /*#__PURE__*/(0, _react.css)("animation-duration:0.14s;animation-timing-function:ease-in-out;will-change:transform,opacity;animation-name:", animationName, ";@media ( prefers-reduced-motion ){animation-duration:0s;}" + (process.env.NODE_ENV === "production" ? "" : ";label:navigatorScreenAnimation;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvbmF2aWdhdG9yL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtRFciLCJmaWxlIjoiQHdvcmRwcmVzcy9jb21wb25lbnRzL3NyYy9uYXZpZ2F0b3Ivc3R5bGVzLnRzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBFeHRlcm5hbCBkZXBlbmRlbmNpZXNcbiAqL1xuaW1wb3J0IHsgY3NzLCBrZXlmcmFtZXMgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5cbmV4cG9ydCBjb25zdCBuYXZpZ2F0b3JQcm92aWRlcldyYXBwZXIgPSBjc3NgXG5cdC8qIFByZXZlbnRzIGhvcml6b250YWwgb3ZlcmZsb3cgd2hpbGUgYW5pbWF0aW5nIHNjcmVlbiB0cmFuc2l0aW9ucyAqL1xuXHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdC8qIE1hcmsgdGhpcyBzdWJzZWN0aW9uIG9mIHRoZSBET00gYXMgaXNvbGF0ZWQsIHByb3ZpZGluZyBwZXJmb3JtYW5jZSBiZW5lZml0c1xuXHQgKiBieSBsaW1pdGluZyBjYWxjdWxhdGlvbnMgb2YgbGF5b3V0LCBzdHlsZSBhbmQgcGFpbnQgdG8gYSBET00gc3VidHJlZSByYXRoZXJcblx0ICogdGhhbiB0aGUgZW50aXJlIHBhZ2UuXG5cdCAqL1xuXHRjb250YWluOiBjb250ZW50O1xuYDtcblxuY29uc3QgZmFkZUluRnJvbVJpZ2h0ID0ga2V5ZnJhbWVzKCB7XG5cdCcwJSc6IHtcblx0XHRvcGFjaXR5OiAwLFxuXHRcdHRyYW5zZm9ybTogYHRyYW5zbGF0ZVgoIDUwcHggKWAsXG5cdH0sXG5cdCcxMDAlJzogeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICdub25lJyB9LFxufSApO1xuXG5jb25zdCBmYWRlSW5Gcm9tTGVmdCA9IGtleWZyYW1lcygge1xuXHQnMCUnOiB7XG5cdFx0b3BhY2l0eTogMCxcblx0XHR0cmFuc2Zvcm06IGB0cmFuc2xhdGVYKCAtNTBweCApYCxcblx0fSxcblx0JzEwMCUnOiB7IG9wYWNpdHk6IDEsIHRyYW5zZm9ybTogJ25vbmUnIH0sXG59ICk7XG5cbnR5cGUgTmF2aWdhdG9yU2NyZWVuQW5pbWF0aW9uUHJvcHMgPSB7XG5cdGlzSW5pdGlhbD86IGJvb2xlYW47XG5cdGlzQmFjaz86IGJvb2xlYW47XG5cdGlzUlRMOiBib29sZWFuO1xufTtcblxuY29uc3QgbmF2aWdhdG9yU2NyZWVuQW5pbWF0aW9uID0gKCB7XG5cdGlzSW5pdGlhbCxcblx0aXNCYWNrLFxuXHRpc1JUTCxcbn06IE5hdmlnYXRvclNjcmVlbkFuaW1hdGlvblByb3BzICkgPT4ge1xuXHRpZiAoIGlzSW5pdGlhbCAmJiAhIGlzQmFjayApIHtcblx0XHRyZXR1cm47XG5cdH1cblxuXHRjb25zdCBhbmltYXRpb25OYW1lID1cblx0XHQoIGlzUlRMICYmIGlzQmFjayApIHx8ICggISBpc1JUTCAmJiAhIGlzQmFjayApXG5cdFx0XHQ/IGZhZGVJbkZyb21SaWdodFxuXHRcdFx0OiBmYWRlSW5Gcm9tTGVmdDtcblxuXHRyZXR1cm4gY3NzYFxuXHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMC4xNHM7XG5cdFx0YW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG5cdFx0d2lsbC1jaGFuZ2U6IHRyYW5zZm9ybSwgb3BhY2l0eTtcblx0XHRhbmltYXRpb24tbmFtZTogJHsgYW5pbWF0aW9uTmFtZSB9O1xuXG5cdFx0QG1lZGlhICggcHJlZmVycy1yZWR1Y2VkLW1vdGlvbiApIHtcblx0XHRcdGFuaW1hdGlvbi1kdXJhdGlvbjogMHM7XG5cdFx0fVxuXHRgO1xufTtcblxuZXhwb3J0IGNvbnN0IG5hdmlnYXRvclNjcmVlbiA9ICggcHJvcHM6IE5hdmlnYXRvclNjcmVlbkFuaW1hdGlvblByb3BzICkgPT4gY3NzYFxuXHQvKiBFbnN1cmVzIGhvcml6b250YWwgb3ZlcmZsb3cgaXMgdmlzdWFsbHkgYWNjZXNzaWJsZSAqL1xuXHRvdmVyZmxvdy14OiBhdXRvO1xuXHQvKiBJbiBjYXNlIHRoZSByb290IGhhcyBhIGhlaWdodCwgaXQgc2hvdWxkIG5vdCBiZSBleGNlZWRlZCAqL1xuXHRtYXgtaGVpZ2h0OiAxMDAlO1xuXG5cdCR7IG5hdmlnYXRvclNjcmVlbkFuaW1hdGlvbiggcHJvcHMgKSB9XG5gO1xuIl19 */");
49
+ };
50
+ const navigatorScreen = props => /*#__PURE__*/(0, _react.css)("overflow-x:auto;max-height:100%;", navigatorScreenAnimation(props), ";" + (process.env.NODE_ENV === "production" ? "" : ";label:navigatorScreen;"), process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvbmF2aWdhdG9yL3N0eWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUErRDhFIiwiZmlsZSI6IkB3b3JkcHJlc3MvY29tcG9uZW50cy9zcmMvbmF2aWdhdG9yL3N0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogRXh0ZXJuYWwgZGVwZW5kZW5jaWVzXG4gKi9cbmltcG9ydCB7IGNzcywga2V5ZnJhbWVzIH0gZnJvbSAnQGVtb3Rpb24vcmVhY3QnO1xuXG5leHBvcnQgY29uc3QgbmF2aWdhdG9yUHJvdmlkZXJXcmFwcGVyID0gY3NzYFxuXHQvKiBQcmV2ZW50cyBob3Jpem9udGFsIG92ZXJmbG93IHdoaWxlIGFuaW1hdGluZyBzY3JlZW4gdHJhbnNpdGlvbnMgKi9cblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHQvKiBNYXJrIHRoaXMgc3Vic2VjdGlvbiBvZiB0aGUgRE9NIGFzIGlzb2xhdGVkLCBwcm92aWRpbmcgcGVyZm9ybWFuY2UgYmVuZWZpdHNcblx0ICogYnkgbGltaXRpbmcgY2FsY3VsYXRpb25zIG9mIGxheW91dCwgc3R5bGUgYW5kIHBhaW50IHRvIGEgRE9NIHN1YnRyZWUgcmF0aGVyXG5cdCAqIHRoYW4gdGhlIGVudGlyZSBwYWdlLlxuXHQgKi9cblx0Y29udGFpbjogY29udGVudDtcbmA7XG5cbmNvbnN0IGZhZGVJbkZyb21SaWdodCA9IGtleWZyYW1lcygge1xuXHQnMCUnOiB7XG5cdFx0b3BhY2l0eTogMCxcblx0XHR0cmFuc2Zvcm06IGB0cmFuc2xhdGVYKCA1MHB4IClgLFxuXHR9LFxuXHQnMTAwJSc6IHsgb3BhY2l0eTogMSwgdHJhbnNmb3JtOiAnbm9uZScgfSxcbn0gKTtcblxuY29uc3QgZmFkZUluRnJvbUxlZnQgPSBrZXlmcmFtZXMoIHtcblx0JzAlJzoge1xuXHRcdG9wYWNpdHk6IDAsXG5cdFx0dHJhbnNmb3JtOiBgdHJhbnNsYXRlWCggLTUwcHggKWAsXG5cdH0sXG5cdCcxMDAlJzogeyBvcGFjaXR5OiAxLCB0cmFuc2Zvcm06ICdub25lJyB9LFxufSApO1xuXG50eXBlIE5hdmlnYXRvclNjcmVlbkFuaW1hdGlvblByb3BzID0ge1xuXHRpc0luaXRpYWw/OiBib29sZWFuO1xuXHRpc0JhY2s/OiBib29sZWFuO1xuXHRpc1JUTDogYm9vbGVhbjtcbn07XG5cbmNvbnN0IG5hdmlnYXRvclNjcmVlbkFuaW1hdGlvbiA9ICgge1xuXHRpc0luaXRpYWwsXG5cdGlzQmFjayxcblx0aXNSVEwsXG59OiBOYXZpZ2F0b3JTY3JlZW5BbmltYXRpb25Qcm9wcyApID0+IHtcblx0aWYgKCBpc0luaXRpYWwgJiYgISBpc0JhY2sgKSB7XG5cdFx0cmV0dXJuO1xuXHR9XG5cblx0Y29uc3QgYW5pbWF0aW9uTmFtZSA9XG5cdFx0KCBpc1JUTCAmJiBpc0JhY2sgKSB8fCAoICEgaXNSVEwgJiYgISBpc0JhY2sgKVxuXHRcdFx0PyBmYWRlSW5Gcm9tUmlnaHRcblx0XHRcdDogZmFkZUluRnJvbUxlZnQ7XG5cblx0cmV0dXJuIGNzc2Bcblx0XHRhbmltYXRpb24tZHVyYXRpb246IDAuMTRzO1xuXHRcdGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuXHRcdHdpbGwtY2hhbmdlOiB0cmFuc2Zvcm0sIG9wYWNpdHk7XG5cdFx0YW5pbWF0aW9uLW5hbWU6ICR7IGFuaW1hdGlvbk5hbWUgfTtcblxuXHRcdEBtZWRpYSAoIHByZWZlcnMtcmVkdWNlZC1tb3Rpb24gKSB7XG5cdFx0XHRhbmltYXRpb24tZHVyYXRpb246IDBzO1xuXHRcdH1cblx0YDtcbn07XG5cbmV4cG9ydCBjb25zdCBuYXZpZ2F0b3JTY3JlZW4gPSAoIHByb3BzOiBOYXZpZ2F0b3JTY3JlZW5BbmltYXRpb25Qcm9wcyApID0+IGNzc2Bcblx0LyogRW5zdXJlcyBob3Jpem9udGFsIG92ZXJmbG93IGlzIHZpc3VhbGx5IGFjY2Vzc2libGUgKi9cblx0b3ZlcmZsb3cteDogYXV0bztcblx0LyogSW4gY2FzZSB0aGUgcm9vdCBoYXMgYSBoZWlnaHQsIGl0IHNob3VsZCBub3QgYmUgZXhjZWVkZWQgKi9cblx0bWF4LWhlaWdodDogMTAwJTtcblxuXHQkeyBuYXZpZ2F0b3JTY3JlZW5BbmltYXRpb24oIHByb3BzICkgfVxuYDtcbiJdfQ== */");
51
+ exports.navigatorScreen = navigatorScreen;
52
+ //# sourceMappingURL=styles.js.map