@wordpress/components 28.8.4 → 28.9.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 (329) hide show
  1. package/CHANGELOG.md +26 -3
  2. package/build/autocomplete/index.js +4 -1
  3. package/build/autocomplete/index.js.map +1 -1
  4. package/build/border-box-control/border-box-control/component.js +3 -14
  5. package/build/border-box-control/border-box-control/component.js.map +1 -1
  6. package/build/border-control/border-control/component.js +1 -2
  7. package/build/border-control/border-control/component.js.map +1 -1
  8. package/build/border-control/border-control-dropdown/component.js +2 -14
  9. package/build/border-control/border-control-dropdown/component.js.map +1 -1
  10. package/build/border-control/styles.js +13 -13
  11. package/build/border-control/styles.js.map +1 -1
  12. package/build/border-control/types.js.map +1 -1
  13. package/build/box-control/index.js +4 -4
  14. package/build/box-control/index.js.map +1 -1
  15. package/build/box-control/types.js.map +1 -1
  16. package/build/composite/group-label.js +7 -1
  17. package/build/composite/group-label.js.map +1 -1
  18. package/build/composite/group.js +7 -1
  19. package/build/composite/group.js.map +1 -1
  20. package/build/composite/hover.js +8 -2
  21. package/build/composite/hover.js.map +1 -1
  22. package/build/composite/index.js +5 -1
  23. package/build/composite/index.js.map +1 -1
  24. package/build/composite/item.js +16 -1
  25. package/build/composite/item.js.map +1 -1
  26. package/build/composite/row.js +7 -1
  27. package/build/composite/row.js.map +1 -1
  28. package/build/composite/typeahead.js +8 -2
  29. package/build/composite/typeahead.js.map +1 -1
  30. package/build/date-time/date/index.js +4 -2
  31. package/build/date-time/date/index.js.map +1 -1
  32. package/build/index.js +36 -5
  33. package/build/index.js.map +1 -1
  34. package/build/navigator/index.js +128 -32
  35. package/build/navigator/index.js.map +1 -1
  36. package/build/navigator/legacy.js +179 -0
  37. package/build/navigator/legacy.js.map +1 -0
  38. package/build/navigator/{navigator-provider → navigator}/component.js +5 -40
  39. package/build/navigator/navigator/component.js.map +1 -0
  40. package/build/navigator/navigator-back-button/component.js +2 -38
  41. package/build/navigator/navigator-back-button/component.js.map +1 -1
  42. package/build/navigator/navigator-back-button/hook.js +1 -1
  43. package/build/navigator/navigator-back-button/hook.js.map +1 -1
  44. package/build/navigator/navigator-button/component.js +2 -37
  45. package/build/navigator/navigator-button/component.js.map +1 -1
  46. package/build/navigator/navigator-button/hook.js +1 -1
  47. package/build/navigator/navigator-button/hook.js.map +1 -1
  48. package/build/navigator/navigator-screen/component.js +40 -62
  49. package/build/navigator/navigator-screen/component.js.map +1 -1
  50. package/build/navigator/navigator-screen/use-screen-animate-presence.js +114 -0
  51. package/build/navigator/navigator-screen/use-screen-animate-presence.js.map +1 -0
  52. package/build/navigator/navigator-to-parent-button/component.js +3 -7
  53. package/build/navigator/navigator-to-parent-button/component.js.map +1 -1
  54. package/build/navigator/styles.js +78 -35
  55. package/build/navigator/styles.js.map +1 -1
  56. package/build/navigator/types.js.map +1 -1
  57. package/build/navigator/use-navigator.js +4 -1
  58. package/build/navigator/use-navigator.js.map +1 -1
  59. package/build/search-control/index.js +5 -2
  60. package/build/search-control/index.js.map +1 -1
  61. package/build/tabs/styles.js +3 -3
  62. package/build/tabs/styles.js.map +1 -1
  63. package/build/tabs/tablist.js +61 -28
  64. package/build/tabs/tablist.js.map +1 -1
  65. package/build/tabs/use-track-overflow.js +73 -0
  66. package/build/tabs/use-track-overflow.js.map +1 -0
  67. package/build/toggle-group-control/toggle-group-control/as-button-group.js +4 -2
  68. package/build/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
  69. package/build/toggle-group-control/toggle-group-control/as-radio-group.js +6 -2
  70. package/build/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
  71. package/build/toggle-group-control/toggle-group-control/component.js +73 -8
  72. package/build/toggle-group-control/toggle-group-control/component.js.map +1 -1
  73. package/build/toggle-group-control/toggle-group-control/styles.js +7 -7
  74. package/build/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  75. package/build/toggle-group-control/toggle-group-control-option-base/component.js +10 -19
  76. package/build/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  77. package/build/toggle-group-control/toggle-group-control-option-base/styles.js +8 -9
  78. package/build/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  79. package/build/toggle-group-control/types.js.map +1 -1
  80. package/build/utils/element-rect.js +22 -13
  81. package/build/utils/element-rect.js.map +1 -1
  82. package/build/utils/hooks/use-on-value-update.js +3 -7
  83. package/build/utils/hooks/use-on-value-update.js.map +1 -1
  84. package/build-module/autocomplete/index.js +4 -1
  85. package/build-module/autocomplete/index.js.map +1 -1
  86. package/build-module/border-box-control/border-box-control/component.js +3 -14
  87. package/build-module/border-box-control/border-box-control/component.js.map +1 -1
  88. package/build-module/border-control/border-control/component.js +1 -2
  89. package/build-module/border-control/border-control/component.js.map +1 -1
  90. package/build-module/border-control/border-control-dropdown/component.js +2 -14
  91. package/build-module/border-control/border-control-dropdown/component.js.map +1 -1
  92. package/build-module/border-control/styles.js +13 -13
  93. package/build-module/border-control/styles.js.map +1 -1
  94. package/build-module/border-control/types.js.map +1 -1
  95. package/build-module/box-control/index.js +4 -4
  96. package/build-module/box-control/index.js.map +1 -1
  97. package/build-module/box-control/types.js.map +1 -1
  98. package/build-module/composite/group-label.js +7 -1
  99. package/build-module/composite/group-label.js.map +1 -1
  100. package/build-module/composite/group.js +7 -1
  101. package/build-module/composite/group.js.map +1 -1
  102. package/build-module/composite/hover.js +8 -2
  103. package/build-module/composite/hover.js.map +1 -1
  104. package/build-module/composite/index.js +5 -1
  105. package/build-module/composite/index.js.map +1 -1
  106. package/build-module/composite/item.js +16 -1
  107. package/build-module/composite/item.js.map +1 -1
  108. package/build-module/composite/row.js +7 -1
  109. package/build-module/composite/row.js.map +1 -1
  110. package/build-module/composite/typeahead.js +8 -2
  111. package/build-module/composite/typeahead.js.map +1 -1
  112. package/build-module/date-time/date/index.js +4 -2
  113. package/build-module/date-time/date/index.js.map +1 -1
  114. package/build-module/index.js +14 -4
  115. package/build-module/index.js.map +1 -1
  116. package/build-module/navigator/index.js +130 -5
  117. package/build-module/navigator/index.js.map +1 -1
  118. package/build-module/navigator/legacy.js +167 -0
  119. package/build-module/navigator/legacy.js.map +1 -0
  120. package/build-module/navigator/{navigator-provider → navigator}/component.js +4 -39
  121. package/build-module/navigator/navigator/component.js.map +1 -0
  122. package/build-module/navigator/navigator-back-button/component.js +1 -37
  123. package/build-module/navigator/navigator-back-button/component.js.map +1 -1
  124. package/build-module/navigator/navigator-back-button/hook.js +1 -1
  125. package/build-module/navigator/navigator-back-button/hook.js.map +1 -1
  126. package/build-module/navigator/navigator-button/component.js +1 -36
  127. package/build-module/navigator/navigator-button/component.js.map +1 -1
  128. package/build-module/navigator/navigator-button/hook.js +1 -1
  129. package/build-module/navigator/navigator-button/hook.js.map +1 -1
  130. package/build-module/navigator/navigator-screen/component.js +39 -61
  131. package/build-module/navigator/navigator-screen/component.js.map +1 -1
  132. package/build-module/navigator/navigator-screen/use-screen-animate-presence.js +106 -0
  133. package/build-module/navigator/navigator-screen/use-screen-animate-presence.js.map +1 -0
  134. package/build-module/navigator/navigator-to-parent-button/component.js +2 -6
  135. package/build-module/navigator/navigator-to-parent-button/component.js.map +1 -1
  136. package/build-module/navigator/styles.js +77 -33
  137. package/build-module/navigator/styles.js.map +1 -1
  138. package/build-module/navigator/types.js.map +1 -1
  139. package/build-module/navigator/use-navigator.js +4 -1
  140. package/build-module/navigator/use-navigator.js.map +1 -1
  141. package/build-module/search-control/index.js +5 -2
  142. package/build-module/search-control/index.js.map +1 -1
  143. package/build-module/tabs/styles.js +3 -3
  144. package/build-module/tabs/styles.js.map +1 -1
  145. package/build-module/tabs/tablist.js +62 -29
  146. package/build-module/tabs/tablist.js.map +1 -1
  147. package/build-module/tabs/use-track-overflow.js +67 -0
  148. package/build-module/tabs/use-track-overflow.js.map +1 -0
  149. package/build-module/toggle-group-control/toggle-group-control/as-button-group.js +4 -2
  150. package/build-module/toggle-group-control/toggle-group-control/as-button-group.js.map +1 -1
  151. package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js +6 -2
  152. package/build-module/toggle-group-control/toggle-group-control/as-radio-group.js.map +1 -1
  153. package/build-module/toggle-group-control/toggle-group-control/component.js +76 -10
  154. package/build-module/toggle-group-control/toggle-group-control/component.js.map +1 -1
  155. package/build-module/toggle-group-control/toggle-group-control/styles.js +7 -7
  156. package/build-module/toggle-group-control/toggle-group-control/styles.js.map +1 -1
  157. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js +12 -22
  158. package/build-module/toggle-group-control/toggle-group-control-option-base/component.js.map +1 -1
  159. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js +7 -8
  160. package/build-module/toggle-group-control/toggle-group-control-option-base/styles.js.map +1 -1
  161. package/build-module/toggle-group-control/types.js.map +1 -1
  162. package/build-module/utils/element-rect.js +22 -12
  163. package/build-module/utils/element-rect.js.map +1 -1
  164. package/build-module/utils/hooks/use-on-value-update.js +3 -6
  165. package/build-module/utils/hooks/use-on-value-update.js.map +1 -1
  166. package/build-style/style-rtl.css +26 -13
  167. package/build-style/style.css +26 -13
  168. package/build-types/autocomplete/index.d.ts.map +1 -1
  169. package/build-types/border-box-control/border-box-control/component.d.ts +5 -15
  170. package/build-types/border-box-control/border-box-control/component.d.ts.map +1 -1
  171. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts +2 -1
  172. package/build-types/border-box-control/border-box-control-split-controls/component.d.ts.map +1 -1
  173. package/build-types/border-box-control/stories/index.story.d.ts +3 -2
  174. package/build-types/border-box-control/stories/index.story.d.ts.map +1 -1
  175. package/build-types/border-control/border-control/component.d.ts +3 -2
  176. package/build-types/border-control/border-control/component.d.ts.map +1 -1
  177. package/build-types/border-control/border-control-dropdown/component.d.ts +2 -1
  178. package/build-types/border-control/border-control-dropdown/component.d.ts.map +1 -1
  179. package/build-types/border-control/border-control-style-picker/component.d.ts.map +1 -1
  180. package/build-types/border-control/stories/index.story.d.ts +15 -30
  181. package/build-types/border-control/stories/index.story.d.ts.map +1 -1
  182. package/build-types/border-control/styles.d.ts.map +1 -1
  183. package/build-types/border-control/types.d.ts +12 -7
  184. package/build-types/border-control/types.d.ts.map +1 -1
  185. package/build-types/box-control/index.d.ts +4 -4
  186. package/build-types/box-control/stories/index.story.d.ts.map +1 -1
  187. package/build-types/box-control/types.d.ts +3 -3
  188. package/build-types/composite/group-label.d.ts.map +1 -1
  189. package/build-types/composite/index.d.ts.map +1 -1
  190. package/build-types/composite/item.d.ts.map +1 -1
  191. package/build-types/composite/stories/index.story.d.ts +22 -0
  192. package/build-types/composite/stories/index.story.d.ts.map +1 -1
  193. package/build-types/composite/test/index.d.ts +2 -0
  194. package/build-types/composite/test/index.d.ts.map +1 -0
  195. package/build-types/date-time/date/index.d.ts.map +1 -1
  196. package/build-types/dropdown/stories/index.story.d.ts.map +1 -1
  197. package/build-types/dropdown-menu/stories/index.story.d.ts.map +1 -1
  198. package/build-types/index.d.ts +23 -4
  199. package/build-types/index.d.ts.map +1 -1
  200. package/build-types/navigator/index.d.ts +171 -5
  201. package/build-types/navigator/index.d.ts.map +1 -1
  202. package/build-types/navigator/legacy.d.ts +226 -0
  203. package/build-types/navigator/legacy.d.ts.map +1 -0
  204. package/build-types/navigator/navigator/component.d.ts +3 -0
  205. package/build-types/navigator/navigator/component.d.ts.map +1 -0
  206. package/build-types/navigator/navigator-back-button/component.d.ts +0 -35
  207. package/build-types/navigator/navigator-back-button/component.d.ts.map +1 -1
  208. package/build-types/navigator/navigator-button/component.d.ts +0 -34
  209. package/build-types/navigator/navigator-button/component.d.ts.map +1 -1
  210. package/build-types/navigator/navigator-screen/component.d.ts +0 -35
  211. package/build-types/navigator/navigator-screen/component.d.ts.map +1 -1
  212. package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts +16 -0
  213. package/build-types/navigator/navigator-screen/use-screen-animate-presence.d.ts.map +1 -0
  214. package/build-types/navigator/navigator-to-parent-button/component.d.ts +0 -4
  215. package/build-types/navigator/navigator-to-parent-button/component.d.ts.map +1 -1
  216. package/build-types/navigator/stories/index.story.d.ts +5 -5
  217. package/build-types/navigator/stories/index.story.d.ts.map +1 -1
  218. package/build-types/navigator/styles.d.ts +20 -7
  219. package/build-types/navigator/styles.d.ts.map +1 -1
  220. package/build-types/navigator/types.d.ts +19 -1
  221. package/build-types/navigator/types.d.ts.map +1 -1
  222. package/build-types/navigator/use-navigator.d.ts +4 -1
  223. package/build-types/navigator/use-navigator.d.ts.map +1 -1
  224. package/build-types/select-control/stories/index.story.d.ts +7 -0
  225. package/build-types/select-control/stories/index.story.d.ts.map +1 -1
  226. package/build-types/tabs/stories/index.story.d.ts +2 -1
  227. package/build-types/tabs/stories/index.story.d.ts.map +1 -1
  228. package/build-types/tabs/styles.d.ts.map +1 -1
  229. package/build-types/tabs/tablist.d.ts.map +1 -1
  230. package/build-types/tabs/use-track-overflow.d.ts +17 -0
  231. package/build-types/tabs/use-track-overflow.d.ts.map +1 -0
  232. package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts +2 -2
  233. package/build-types/toggle-group-control/toggle-group-control/as-button-group.d.ts.map +1 -1
  234. package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts +2 -2
  235. package/build-types/toggle-group-control/toggle-group-control/as-radio-group.d.ts.map +1 -1
  236. package/build-types/toggle-group-control/toggle-group-control/component.d.ts.map +1 -1
  237. package/build-types/toggle-group-control/toggle-group-control/styles.d.ts.map +1 -1
  238. package/build-types/toggle-group-control/toggle-group-control-option-base/component.d.ts.map +1 -1
  239. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts +0 -1
  240. package/build-types/toggle-group-control/toggle-group-control-option-base/styles.d.ts.map +1 -1
  241. package/build-types/toggle-group-control/types.d.ts +2 -1
  242. package/build-types/toggle-group-control/types.d.ts.map +1 -1
  243. package/build-types/utils/element-rect.d.ts +8 -0
  244. package/build-types/utils/element-rect.d.ts.map +1 -1
  245. package/build-types/utils/hooks/use-on-value-update.d.ts.map +1 -1
  246. package/package.json +19 -19
  247. package/src/autocomplete/index.tsx +4 -1
  248. package/src/border-box-control/border-box-control/README.md +22 -26
  249. package/src/border-box-control/border-box-control/component.tsx +3 -14
  250. package/src/border-box-control/stories/index.story.tsx +2 -1
  251. package/src/border-control/border-control/README.md +26 -36
  252. package/src/border-control/border-control/component.tsx +1 -2
  253. package/src/border-control/border-control-dropdown/component.tsx +1 -15
  254. package/src/border-control/stories/index.story.tsx +4 -10
  255. package/src/border-control/styles.ts +0 -1
  256. package/src/border-control/test/index.js +2 -15
  257. package/src/border-control/types.ts +12 -7
  258. package/src/box-control/README.md +9 -12
  259. package/src/box-control/index.tsx +4 -4
  260. package/src/box-control/stories/index.story.tsx +1 -1
  261. package/src/box-control/types.ts +3 -3
  262. package/src/composite/group-label.tsx +7 -5
  263. package/src/composite/group.tsx +7 -7
  264. package/src/composite/hover.tsx +7 -7
  265. package/src/composite/index.tsx +6 -1
  266. package/src/composite/item.tsx +19 -1
  267. package/src/composite/legacy/test/index.tsx +22 -21
  268. package/src/composite/row.tsx +7 -7
  269. package/src/composite/stories/index.story.tsx +42 -0
  270. package/src/composite/test/index.tsx +123 -0
  271. package/src/composite/typeahead.tsx +7 -7
  272. package/src/date-time/date/index.tsx +2 -0
  273. package/src/dropdown/stories/index.story.tsx +1 -0
  274. package/src/dropdown/style.scss +10 -13
  275. package/src/dropdown-menu/stories/index.story.tsx +3 -0
  276. package/src/index.ts +19 -1
  277. package/src/menu-group/style.scss +4 -1
  278. package/src/menu-items-choice/style.scss +2 -0
  279. package/src/navigator/README.md +176 -0
  280. package/src/navigator/index.tsx +131 -0
  281. package/src/navigator/legacy.ts +169 -0
  282. package/src/navigator/{navigator-provider → navigator}/component.tsx +6 -44
  283. package/src/navigator/navigator-back-button/component.tsx +1 -37
  284. package/src/navigator/navigator-back-button/hook.ts +1 -1
  285. package/src/navigator/navigator-button/component.tsx +1 -36
  286. package/src/navigator/navigator-button/hook.ts +1 -1
  287. package/src/navigator/navigator-screen/component.tsx +48 -76
  288. package/src/navigator/navigator-screen/use-screen-animate-presence.ts +177 -0
  289. package/src/navigator/navigator-to-parent-button/component.tsx +2 -7
  290. package/src/navigator/stories/index.story.tsx +55 -54
  291. package/src/navigator/styles.ts +112 -41
  292. package/src/navigator/test/index.tsx +47 -47
  293. package/src/navigator/types.ts +19 -1
  294. package/src/navigator/use-navigator.ts +4 -1
  295. package/src/search-control/index.tsx +2 -2
  296. package/src/select-control/stories/index.story.tsx +14 -1
  297. package/src/tabs/stories/index.story.tsx +106 -0
  298. package/src/tabs/styles.ts +54 -20
  299. package/src/tabs/tablist.tsx +60 -26
  300. package/src/tabs/use-track-overflow.ts +76 -0
  301. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +208 -44
  302. package/src/toggle-group-control/toggle-group-control/as-button-group.tsx +18 -10
  303. package/src/toggle-group-control/toggle-group-control/as-radio-group.tsx +19 -9
  304. package/src/toggle-group-control/toggle-group-control/component.tsx +114 -6
  305. package/src/toggle-group-control/toggle-group-control/styles.ts +41 -0
  306. package/src/toggle-group-control/toggle-group-control-option-base/component.tsx +10 -27
  307. package/src/toggle-group-control/toggle-group-control-option-base/styles.ts +0 -11
  308. package/src/toggle-group-control/types.ts +3 -1
  309. package/src/tools-panel/tools-panel/README.md +10 -10
  310. package/src/utils/element-rect.ts +32 -15
  311. package/src/utils/hooks/use-on-value-update.ts +3 -6
  312. package/tsconfig.tsbuildinfo +1 -1
  313. package/build/navigator/navigator-provider/component.js.map +0 -1
  314. package/build/utils/hooks/use-event.js +0 -41
  315. package/build/utils/hooks/use-event.js.map +0 -1
  316. package/build-module/navigator/navigator-provider/component.js.map +0 -1
  317. package/build-module/utils/hooks/use-event.js +0 -35
  318. package/build-module/utils/hooks/use-event.js.map +0 -1
  319. package/build-types/navigator/navigator-provider/component.d.ts +0 -37
  320. package/build-types/navigator/navigator-provider/component.d.ts.map +0 -1
  321. package/build-types/utils/hooks/use-event.d.ts +0 -20
  322. package/build-types/utils/hooks/use-event.d.ts.map +0 -1
  323. package/src/navigator/index.ts +0 -6
  324. package/src/navigator/navigator-back-button/README.md +0 -15
  325. package/src/navigator/navigator-button/README.md +0 -38
  326. package/src/navigator/navigator-provider/README.md +0 -94
  327. package/src/navigator/navigator-screen/README.md +0 -33
  328. package/src/navigator/navigator-to-parent-button/README.md +0 -17
  329. package/src/utils/hooks/use-event.ts +0 -38
@@ -1,7 +1,132 @@
1
- export { NavigatorProvider } from './navigator-provider/component';
2
- export { NavigatorScreen } from './navigator-screen/component';
3
- export { NavigatorButton } from './navigator-button/component';
4
- export { NavigatorBackButton } from './navigator-back-button/component';
5
- export { NavigatorToParentButton } from './navigator-to-parent-button/component';
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import { Navigator as TopLevelNavigator } from './navigator/component';
5
+ import { NavigatorScreen } from './navigator-screen/component';
6
+ import { NavigatorButton } from './navigator-button/component';
7
+ import { NavigatorBackButton } from './navigator-back-button/component';
6
8
  export { useNavigator } from './use-navigator';
9
+
10
+ /**
11
+ * The `Navigator` component allows rendering nested views/panels/menus
12
+ * (via the `Navigator.Screen` component) and navigate between them
13
+ * (via the `Navigator.Button` and `Navigator.BackButton` components).
14
+ *
15
+ * ```jsx
16
+ * import { Navigator } from '@wordpress/components';
17
+ *
18
+ * const MyNavigation = () => (
19
+ * <Navigator initialPath="/">
20
+ * <Navigator.Screen path="/">
21
+ * <p>This is the home screen.</p>
22
+ * <Navigator.Button path="/child">
23
+ * Navigate to child screen.
24
+ * </Navigator.Button>
25
+ * </Navigator.Screen>
26
+ *
27
+ * <Navigator.Screen path="/child">
28
+ * <p>This is the child screen.</p>
29
+ * <Navigator.BackButton>
30
+ * Go back
31
+ * </Navigator.BackButton>
32
+ * </Navigator.Screen>
33
+ * </Navigator>
34
+ * );
35
+ * ```
36
+ */
37
+ export const Navigator = Object.assign(TopLevelNavigator, {
38
+ /**
39
+ * The `Navigator.Screen` component represents a single view/screen/panel and
40
+ * should be used in combination with the `Navigator`, the `Navigator.Button`
41
+ * and the `Navigator.BackButton` components.
42
+ *
43
+ * @example
44
+ * ```jsx
45
+ * import { Navigator } from '@wordpress/components';
46
+ *
47
+ * const MyNavigation = () => (
48
+ * <Navigator initialPath="/">
49
+ * <Navigator.Screen path="/">
50
+ * <p>This is the home screen.</p>
51
+ * <Navigator.Button path="/child">
52
+ * Navigate to child screen.
53
+ * </Navigator.Button>
54
+ * </Navigator.Screen>
55
+ *
56
+ * <Navigator.Screen path="/child">
57
+ * <p>This is the child screen.</p>
58
+ * <Navigator.BackButton>
59
+ * Go back
60
+ * </Navigator.BackButton>
61
+ * </Navigator.Screen>
62
+ * </Navigator>
63
+ * );
64
+ * ```
65
+ */
66
+ Screen: Object.assign(NavigatorScreen, {
67
+ displayName: 'Navigator.Screen'
68
+ }),
69
+ /**
70
+ * The `Navigator.Button` component can be used to navigate to a screen and
71
+ * should be used in combination with the `Navigator`, the `Navigator.Screen`
72
+ * and the `Navigator.BackButton` components.
73
+ *
74
+ * @example
75
+ * ```jsx
76
+ * import { Navigator } from '@wordpress/components';
77
+ *
78
+ * const MyNavigation = () => (
79
+ * <Navigator initialPath="/">
80
+ * <Navigator.Screen path="/">
81
+ * <p>This is the home screen.</p>
82
+ * <Navigator.Button path="/child">
83
+ * Navigate to child screen.
84
+ * </Navigator.Button>
85
+ * </Navigator.Screen>
86
+ *
87
+ * <Navigator.Screen path="/child">
88
+ * <p>This is the child screen.</p>
89
+ * <Navigator.BackButton>
90
+ * Go back
91
+ * </Navigator.BackButton>
92
+ * </Navigator.Screen>
93
+ * </Navigator>
94
+ * );
95
+ * ```
96
+ */
97
+ Button: Object.assign(NavigatorButton, {
98
+ displayName: 'Navigator.Button'
99
+ }),
100
+ /**
101
+ * The `Navigator.BackButton` component can be used to navigate to a screen and
102
+ * should be used in combination with the `Navigator`, the `Navigator.Screen`
103
+ * and the `Navigator.Button` components.
104
+ *
105
+ * @example
106
+ * ```jsx
107
+ * import { Navigator } from '@wordpress/components';
108
+ *
109
+ * const MyNavigation = () => (
110
+ * <Navigator initialPath="/">
111
+ * <Navigator.Screen path="/">
112
+ * <p>This is the home screen.</p>
113
+ * <Navigator.Button path="/child">
114
+ * Navigate to child screen.
115
+ * </Navigator.Button>
116
+ * </Navigator.Screen>
117
+ *
118
+ * <Navigator.Screen path="/child">
119
+ * <p>This is the child screen.</p>
120
+ * <Navigator.BackButton>
121
+ * Go back
122
+ * </Navigator.BackButton>
123
+ * </Navigator.Screen>
124
+ * </Navigator>
125
+ * );
126
+ * ```
127
+ */
128
+ BackButton: Object.assign(NavigatorBackButton, {
129
+ displayName: 'Navigator.BackButton'
130
+ })
131
+ });
7
132
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NavigatorProvider","NavigatorScreen","NavigatorButton","NavigatorBackButton","NavigatorToParentButton","useNavigator"],"sources":["@wordpress/components/src/navigator/index.ts"],"sourcesContent":["export { NavigatorProvider } from './navigator-provider/component';\nexport { NavigatorScreen } from './navigator-screen/component';\nexport { NavigatorButton } from './navigator-button/component';\nexport { NavigatorBackButton } from './navigator-back-button/component';\nexport { NavigatorToParentButton } from './navigator-to-parent-button/component';\nexport { useNavigator } from './use-navigator';\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,gCAAgC;AAClE,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,mBAAmB,QAAQ,mCAAmC;AACvE,SAASC,uBAAuB,QAAQ,wCAAwC;AAChF,SAASC,YAAY,QAAQ,iBAAiB","ignoreList":[]}
1
+ {"version":3,"names":["Navigator","TopLevelNavigator","NavigatorScreen","NavigatorButton","NavigatorBackButton","useNavigator","Object","assign","Screen","displayName","Button","BackButton"],"sources":["@wordpress/components/src/navigator/index.tsx"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { Navigator as TopLevelNavigator } from './navigator/component';\nimport { NavigatorScreen } from './navigator-screen/component';\nimport { NavigatorButton } from './navigator-button/component';\nimport { NavigatorBackButton } from './navigator-back-button/component';\nexport { useNavigator } from './use-navigator';\n\n/**\n * The `Navigator` component allows rendering nested views/panels/menus\n * (via the `Navigator.Screen` component) and navigate between them\n * (via the `Navigator.Button` and `Navigator.BackButton` components).\n *\n * ```jsx\n * import { Navigator } from '@wordpress/components';\n *\n * const MyNavigation = () => (\n * <Navigator initialPath=\"/\">\n * <Navigator.Screen path=\"/\">\n * <p>This is the home screen.</p>\n * <Navigator.Button path=\"/child\">\n * Navigate to child screen.\n * </Navigator.Button>\n * </Navigator.Screen>\n *\n * <Navigator.Screen path=\"/child\">\n * <p>This is the child screen.</p>\n * <Navigator.BackButton>\n * Go back\n * </Navigator.BackButton>\n * </Navigator.Screen>\n * </Navigator>\n * );\n * ```\n */\nexport const Navigator = Object.assign( TopLevelNavigator, {\n\t/**\n\t * The `Navigator.Screen` component represents a single view/screen/panel and\n\t * should be used in combination with the `Navigator`, the `Navigator.Button`\n\t * and the `Navigator.BackButton` components.\n\t *\n\t * @example\n\t * ```jsx\n\t * import { Navigator } from '@wordpress/components';\n\t *\n\t * const MyNavigation = () => (\n\t * <Navigator initialPath=\"/\">\n\t * <Navigator.Screen path=\"/\">\n\t * <p>This is the home screen.</p>\n\t * <Navigator.Button path=\"/child\">\n\t * Navigate to child screen.\n\t * </Navigator.Button>\n\t * </Navigator.Screen>\n\t *\n\t * <Navigator.Screen path=\"/child\">\n\t * <p>This is the child screen.</p>\n\t * <Navigator.BackButton>\n\t * Go back\n\t * </Navigator.BackButton>\n\t * </Navigator.Screen>\n\t * </Navigator>\n\t * );\n\t * ```\n\t */\n\tScreen: Object.assign( NavigatorScreen, {\n\t\tdisplayName: 'Navigator.Screen',\n\t} ),\n\t/**\n\t * The `Navigator.Button` component can be used to navigate to a screen and\n\t * should be used in combination with the `Navigator`, the `Navigator.Screen`\n\t * and the `Navigator.BackButton` components.\n\t *\n\t * @example\n\t * ```jsx\n\t * import { Navigator } from '@wordpress/components';\n\t *\n\t * const MyNavigation = () => (\n\t * <Navigator initialPath=\"/\">\n\t * <Navigator.Screen path=\"/\">\n\t * <p>This is the home screen.</p>\n\t * <Navigator.Button path=\"/child\">\n\t * Navigate to child screen.\n\t * </Navigator.Button>\n\t * </Navigator.Screen>\n\t *\n\t * <Navigator.Screen path=\"/child\">\n\t * <p>This is the child screen.</p>\n\t * <Navigator.BackButton>\n\t * Go back\n\t * </Navigator.BackButton>\n\t * </Navigator.Screen>\n\t * </Navigator>\n\t * );\n\t * ```\n\t */\n\tButton: Object.assign( NavigatorButton, {\n\t\tdisplayName: 'Navigator.Button',\n\t} ),\n\t/**\n\t * The `Navigator.BackButton` component can be used to navigate to a screen and\n\t * should be used in combination with the `Navigator`, the `Navigator.Screen`\n\t * and the `Navigator.Button` components.\n\t *\n\t * @example\n\t * ```jsx\n\t * import { Navigator } from '@wordpress/components';\n\t *\n\t * const MyNavigation = () => (\n\t * <Navigator initialPath=\"/\">\n\t * <Navigator.Screen path=\"/\">\n\t * <p>This is the home screen.</p>\n\t * <Navigator.Button path=\"/child\">\n\t * Navigate to child screen.\n\t * </Navigator.Button>\n\t * </Navigator.Screen>\n\t *\n\t * <Navigator.Screen path=\"/child\">\n\t * <p>This is the child screen.</p>\n\t * <Navigator.BackButton>\n\t * Go back\n\t * </Navigator.BackButton>\n\t * </Navigator.Screen>\n\t * </Navigator>\n\t * );\n\t * ```\n\t */\n\tBackButton: Object.assign( NavigatorBackButton, {\n\t\tdisplayName: 'Navigator.BackButton',\n\t} ),\n} );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,IAAIC,iBAAiB,QAAQ,uBAAuB;AACtE,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,eAAe,QAAQ,8BAA8B;AAC9D,SAASC,mBAAmB,QAAQ,mCAAmC;AACvE,SAASC,YAAY,QAAQ,iBAAiB;;AAE9C;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,OAAO,MAAML,SAAS,GAAGM,MAAM,CAACC,MAAM,CAAEN,iBAAiB,EAAE;EAC1D;AACD;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;EACCO,MAAM,EAAEF,MAAM,CAACC,MAAM,CAAEL,eAAe,EAAE;IACvCO,WAAW,EAAE;EACd,CAAE,CAAC;EACH;AACD;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;EACCC,MAAM,EAAEJ,MAAM,CAACC,MAAM,CAAEJ,eAAe,EAAE;IACvCM,WAAW,EAAE;EACd,CAAE,CAAC;EACH;AACD;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;EACCE,UAAU,EAAEL,MAAM,CAACC,MAAM,CAAEH,mBAAmB,EAAE;IAC/CK,WAAW,EAAE;EACd,CAAE;AACH,CAAE,CAAC","ignoreList":[]}
@@ -0,0 +1,167 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import { Navigator as InternalNavigator } from './navigator/component';
5
+ import { NavigatorScreen as InternalNavigatorScreen } from './navigator-screen/component';
6
+ import { NavigatorButton as InternalNavigatorButton } from './navigator-button/component';
7
+ import { NavigatorBackButton as InternalNavigatorBackButton } from './navigator-back-button/component';
8
+ import { NavigatorToParentButton as InternalNavigatorToParentButton } from './navigator-to-parent-button/component';
9
+ export { useNavigator } from './use-navigator';
10
+
11
+ /**
12
+ * The `NavigatorProvider` component allows rendering nested views/panels/menus
13
+ * (via the `NavigatorScreen` component and navigate between them
14
+ * (via the `NavigatorButton` and `NavigatorBackButton` components).
15
+ *
16
+ * ```jsx
17
+ * import {
18
+ * __experimentalNavigatorProvider as NavigatorProvider,
19
+ * __experimentalNavigatorScreen as NavigatorScreen,
20
+ * __experimentalNavigatorButton as NavigatorButton,
21
+ * __experimentalNavigatorBackButton as NavigatorBackButton,
22
+ * } from '@wordpress/components';
23
+ *
24
+ * const MyNavigation = () => (
25
+ * <NavigatorProvider initialPath="/">
26
+ * <NavigatorScreen path="/">
27
+ * <p>This is the home screen.</p>
28
+ * <NavigatorButton path="/child">
29
+ * Navigate to child screen.
30
+ * </NavigatorButton>
31
+ * </NavigatorScreen>
32
+ *
33
+ * <NavigatorScreen path="/child">
34
+ * <p>This is the child screen.</p>
35
+ * <NavigatorBackButton>
36
+ * Go back
37
+ * </NavigatorBackButton>
38
+ * </NavigatorScreen>
39
+ * </NavigatorProvider>
40
+ * );
41
+ * ```
42
+ */
43
+ export const NavigatorProvider = Object.assign(InternalNavigator, {
44
+ displayName: 'NavigatorProvider'
45
+ });
46
+
47
+ /**
48
+ * The `NavigatorScreen` component represents a single view/screen/panel and
49
+ * should be used in combination with the `NavigatorProvider`, the
50
+ * `NavigatorButton` and the `NavigatorBackButton` components.
51
+ *
52
+ * @example
53
+ * ```jsx
54
+ * import {
55
+ * __experimentalNavigatorProvider as NavigatorProvider,
56
+ * __experimentalNavigatorScreen as NavigatorScreen,
57
+ * __experimentalNavigatorButton as NavigatorButton,
58
+ * __experimentalNavigatorBackButton as NavigatorBackButton,
59
+ * } from '@wordpress/components';
60
+ *
61
+ * const MyNavigation = () => (
62
+ * <NavigatorProvider initialPath="/">
63
+ * <NavigatorScreen path="/">
64
+ * <p>This is the home screen.</p>
65
+ * <NavigatorButton path="/child">
66
+ * Navigate to child screen.
67
+ * </NavigatorButton>
68
+ * </NavigatorScreen>
69
+ *
70
+ * <NavigatorScreen path="/child">
71
+ * <p>This is the child screen.</p>
72
+ * <NavigatorBackButton>
73
+ * Go back
74
+ * </NavigatorBackButton>
75
+ * </NavigatorScreen>
76
+ * </NavigatorProvider>
77
+ * );
78
+ * ```
79
+ */
80
+ export const NavigatorScreen = Object.assign(InternalNavigatorScreen, {
81
+ displayName: 'NavigatorScreen'
82
+ });
83
+
84
+ /**
85
+ * The `NavigatorButton` component can be used to navigate to a screen and should
86
+ * be used in combination with the `NavigatorProvider`, the `NavigatorScreen`
87
+ * and the `NavigatorBackButton` components.
88
+ *
89
+ * @example
90
+ * ```jsx
91
+ * import {
92
+ * __experimentalNavigatorProvider as NavigatorProvider,
93
+ * __experimentalNavigatorScreen as NavigatorScreen,
94
+ * __experimentalNavigatorButton as NavigatorButton,
95
+ * __experimentalNavigatorBackButton as NavigatorBackButton,
96
+ * } from '@wordpress/components';
97
+ *
98
+ * const MyNavigation = () => (
99
+ * <NavigatorProvider initialPath="/">
100
+ * <NavigatorScreen path="/">
101
+ * <p>This is the home screen.</p>
102
+ * <NavigatorButton path="/child">
103
+ * Navigate to child screen.
104
+ * </NavigatorButton>
105
+ * </NavigatorScreen>
106
+ *
107
+ * <NavigatorScreen path="/child">
108
+ * <p>This is the child screen.</p>
109
+ * <NavigatorBackButton>
110
+ * Go back
111
+ * </NavigatorBackButton>
112
+ * </NavigatorScreen>
113
+ * </NavigatorProvider>
114
+ * );
115
+ * ```
116
+ */
117
+ export const NavigatorButton = Object.assign(InternalNavigatorButton, {
118
+ displayName: 'NavigatorButton'
119
+ });
120
+
121
+ /**
122
+ * The `NavigatorBackButton` component can be used to navigate to a screen and
123
+ * should be used in combination with the `NavigatorProvider`, the
124
+ * `NavigatorScreen` and the `NavigatorButton` components.
125
+ *
126
+ * @example
127
+ * ```jsx
128
+ * import {
129
+ * __experimentalNavigatorProvider as NavigatorProvider,
130
+ * __experimentalNavigatorScreen as NavigatorScreen,
131
+ * __experimentalNavigatorButton as NavigatorButton,
132
+ * __experimentalNavigatorBackButton as NavigatorBackButton,
133
+ * } from '@wordpress/components';
134
+ *
135
+ * const MyNavigation = () => (
136
+ * <NavigatorProvider initialPath="/">
137
+ * <NavigatorScreen path="/">
138
+ * <p>This is the home screen.</p>
139
+ * <NavigatorButton path="/child">
140
+ * Navigate to child screen.
141
+ * </NavigatorButton>
142
+ * </NavigatorScreen>
143
+ *
144
+ * <NavigatorScreen path="/child">
145
+ * <p>This is the child screen.</p>
146
+ * <NavigatorBackButton>
147
+ * Go back (to parent)
148
+ * </NavigatorBackButton>
149
+ * </NavigatorScreen>
150
+ * </NavigatorProvider>
151
+ * );
152
+ * ```
153
+ */
154
+ export const NavigatorBackButton = Object.assign(InternalNavigatorBackButton, {
155
+ displayName: 'NavigatorBackButton'
156
+ });
157
+
158
+ /**
159
+ * _Note: this component is deprecated. Please use the `NavigatorBackButton`
160
+ * component instead._
161
+ *
162
+ * @deprecated
163
+ */
164
+ export const NavigatorToParentButton = Object.assign(InternalNavigatorToParentButton, {
165
+ displayName: 'NavigatorToParentButton'
166
+ });
167
+ //# sourceMappingURL=legacy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Navigator","InternalNavigator","NavigatorScreen","InternalNavigatorScreen","NavigatorButton","InternalNavigatorButton","NavigatorBackButton","InternalNavigatorBackButton","NavigatorToParentButton","InternalNavigatorToParentButton","useNavigator","NavigatorProvider","Object","assign","displayName"],"sources":["@wordpress/components/src/navigator/legacy.ts"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport { Navigator as InternalNavigator } from './navigator/component';\nimport { NavigatorScreen as InternalNavigatorScreen } from './navigator-screen/component';\nimport { NavigatorButton as InternalNavigatorButton } from './navigator-button/component';\nimport { NavigatorBackButton as InternalNavigatorBackButton } from './navigator-back-button/component';\nimport { NavigatorToParentButton as InternalNavigatorToParentButton } from './navigator-to-parent-button/component';\nexport { useNavigator } from './use-navigator';\n\n/**\n * The `NavigatorProvider` component allows rendering nested views/panels/menus\n * (via the `NavigatorScreen` component and navigate between them\n * (via the `NavigatorButton` and `NavigatorBackButton` components).\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 = Object.assign( InternalNavigator, {\n\tdisplayName: 'NavigatorProvider',\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.\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 = Object.assign( InternalNavigatorScreen, {\n\tdisplayName: 'NavigatorScreen',\n} );\n\n/**\n * The `NavigatorButton` component can be used to navigate to a screen and should\n * be used in combination with the `NavigatorProvider`, the `NavigatorScreen`\n * and the `NavigatorBackButton` components.\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 NavigatorButton = Object.assign( InternalNavigatorButton, {\n\tdisplayName: 'NavigatorButton',\n} );\n\n/**\n * The `NavigatorBackButton` component can be used to navigate to a screen and\n * should be used in combination with the `NavigatorProvider`, the\n * `NavigatorScreen` and the `NavigatorButton` components.\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 (to parent)\n * </NavigatorBackButton>\n * </NavigatorScreen>\n * </NavigatorProvider>\n * );\n * ```\n */\nexport const NavigatorBackButton = Object.assign( InternalNavigatorBackButton, {\n\tdisplayName: 'NavigatorBackButton',\n} );\n\n/**\n * _Note: this component is deprecated. Please use the `NavigatorBackButton`\n * component instead._\n *\n * @deprecated\n */\nexport const NavigatorToParentButton = Object.assign(\n\tInternalNavigatorToParentButton,\n\t{\n\t\tdisplayName: 'NavigatorToParentButton',\n\t}\n);\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,SAAS,IAAIC,iBAAiB,QAAQ,uBAAuB;AACtE,SAASC,eAAe,IAAIC,uBAAuB,QAAQ,8BAA8B;AACzF,SAASC,eAAe,IAAIC,uBAAuB,QAAQ,8BAA8B;AACzF,SAASC,mBAAmB,IAAIC,2BAA2B,QAAQ,mCAAmC;AACtG,SAASC,uBAAuB,IAAIC,+BAA+B,QAAQ,wCAAwC;AACnH,SAASC,YAAY,QAAQ,iBAAiB;;AAE9C;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;AACA;AACA,OAAO,MAAMC,iBAAiB,GAAGC,MAAM,CAACC,MAAM,CAAEZ,iBAAiB,EAAE;EAClEa,WAAW,EAAE;AACd,CAAE,CAAC;;AAEH;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;AACA;AACA;AACA,OAAO,MAAMZ,eAAe,GAAGU,MAAM,CAACC,MAAM,CAAEV,uBAAuB,EAAE;EACtEW,WAAW,EAAE;AACd,CAAE,CAAC;;AAEH;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;AACA;AACA;AACA,OAAO,MAAMV,eAAe,GAAGQ,MAAM,CAACC,MAAM,CAAER,uBAAuB,EAAE;EACtES,WAAW,EAAE;AACd,CAAE,CAAC;;AAEH;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;AACA;AACA;AACA,OAAO,MAAMR,mBAAmB,GAAGM,MAAM,CAACC,MAAM,CAAEN,2BAA2B,EAAE;EAC9EO,WAAW,EAAE;AACd,CAAE,CAAC;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMN,uBAAuB,GAAGI,MAAM,CAACC,MAAM,CACnDJ,+BAA+B,EAC/B;EACCK,WAAW,EAAE;AACd,CACD,CAAC","ignoreList":[]}
@@ -175,13 +175,13 @@ function routerReducer(state, action) {
175
175
  focusSelectors
176
176
  };
177
177
  }
178
- function UnconnectedNavigatorProvider(props, forwardedRef) {
178
+ function UnconnectedNavigator(props, forwardedRef) {
179
179
  const {
180
180
  initialPath: initialPathProp,
181
181
  children,
182
182
  className,
183
183
  ...otherProps
184
- } = useContextSystem(props, 'NavigatorProvider');
184
+ } = useContextSystem(props, 'Navigator');
185
185
  const [routerState, dispatch] = useReducer(routerReducer, initialPathProp, path => ({
186
186
  screens: [],
187
187
  currentLocation: {
@@ -240,7 +240,7 @@ function UnconnectedNavigatorProvider(props, forwardedRef) {
240
240
  };
241
241
  }, [currentLocation, matchedPath, methods]);
242
242
  const cx = useCx();
243
- const classes = useMemo(() => cx(styles.navigatorProviderWrapper, className), [className, cx]);
243
+ const classes = useMemo(() => cx(styles.navigatorWrapper, className), [className, cx]);
244
244
  return /*#__PURE__*/_jsx(View, {
245
245
  ref: forwardedRef,
246
246
  className: classes,
@@ -251,40 +251,5 @@ function UnconnectedNavigatorProvider(props, forwardedRef) {
251
251
  })
252
252
  });
253
253
  }
254
-
255
- /**
256
- * The `NavigatorProvider` component allows rendering nested views/panels/menus
257
- * (via the `NavigatorScreen` component and navigate between these different
258
- * view (via the `NavigatorButton` and `NavigatorBackButton` components or the
259
- * `useNavigator` hook).
260
- *
261
- * ```jsx
262
- * import {
263
- * __experimentalNavigatorProvider as NavigatorProvider,
264
- * __experimentalNavigatorScreen as NavigatorScreen,
265
- * __experimentalNavigatorButton as NavigatorButton,
266
- * __experimentalNavigatorBackButton as NavigatorBackButton,
267
- * } from '@wordpress/components';
268
- *
269
- * const MyNavigation = () => (
270
- * <NavigatorProvider initialPath="/">
271
- * <NavigatorScreen path="/">
272
- * <p>This is the home screen.</p>
273
- * <NavigatorButton path="/child">
274
- * Navigate to child screen.
275
- * </NavigatorButton>
276
- * </NavigatorScreen>
277
- *
278
- * <NavigatorScreen path="/child">
279
- * <p>This is the child screen.</p>
280
- * <NavigatorBackButton>
281
- * Go back
282
- * </NavigatorBackButton>
283
- * </NavigatorScreen>
284
- * </NavigatorProvider>
285
- * );
286
- * ```
287
- */
288
- export const NavigatorProvider = contextConnect(UnconnectedNavigatorProvider, 'NavigatorProvider');
289
- export default NavigatorProvider;
254
+ export const Navigator = contextConnect(UnconnectedNavigator, 'Navigator');
290
255
  //# sourceMappingURL=component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useMemo","useReducer","isShallowEqual","warning","contextConnect","useContextSystem","useCx","patternMatch","findParent","View","NavigatorContext","styles","deprecated","jsx","_jsx","addScreen","screens","screen","some","s","path","globalThis","SCRIPT_DEBUG","id","removeScreen","filter","goTo","state","options","_focusSelectorsCopy2","focusSelectors","currentLocation","isBack","skipFocus","replace","focusTargetSelector","restOptions","focusSelectorsCopy","getFocusSelectorsCopy","_focusSelectorsCopy","Map","set","currentFocusSelector","get","delete","isInitial","hasRestoredFocus","goToParent","currentPath","undefined","parentPath","routerReducer","action","matchedPath","restState","type","params","UnconnectedNavigator","props","forwardedRef","initialPath","initialPathProp","children","className","otherProps","routerState","dispatch","methods","goBack","since","alternative","navigatorContextValue","_matchedPath$params","location","match","cx","classes","navigatorWrapper","ref","Provider","value","Navigator"],"sources":["@wordpress/components/src/navigator/navigator/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo, useReducer } from '@wordpress/element';\nimport isShallowEqual from '@wordpress/is-shallow-equal';\nimport warning from '@wordpress/warning';\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\tNavigatorProps,\n\tNavigatorLocation,\n\tNavigatorContext as NavigatorContextType,\n\tNavigateOptions,\n\tScreen,\n\tNavigateToParentOptions,\n} from '../types';\nimport deprecated from '@wordpress/deprecated';\n\ntype MatchedPath = ReturnType< typeof patternMatch >;\n\ntype RouterAction =\n\t| { type: 'add' | 'remove'; screen: Screen }\n\t| { type: 'goto'; path: string; options?: NavigateOptions }\n\t| { type: 'gotoparent'; options?: NavigateToParentOptions };\n\ntype RouterState = {\n\tinitialPath: string;\n\tscreens: Screen[];\n\tcurrentLocation: NavigatorLocation;\n\tmatchedPath: MatchedPath;\n\tfocusSelectors: Map< string, string >;\n};\n\nfunction addScreen( { screens }: RouterState, screen: Screen ) {\n\tif ( screens.some( ( s ) => s.path === screen.path ) ) {\n\t\twarning(\n\t\t\t`Navigator: a screen with path ${ screen.path } already exists.\nThe screen with id ${ screen.id } will not be added.`\n\t\t);\n\t\treturn screens;\n\t}\n\treturn [ ...screens, screen ];\n}\n\nfunction removeScreen( { screens }: RouterState, screen: Screen ) {\n\treturn screens.filter( ( s ) => s.id !== screen.id );\n}\n\nfunction goTo(\n\tstate: RouterState,\n\tpath: string,\n\toptions: NavigateOptions = {}\n) {\n\tconst { focusSelectors } = state;\n\tconst currentLocation = { ...state.currentLocation };\n\n\tconst {\n\t\t// Default assignments\n\t\tisBack = false,\n\t\tskipFocus = false,\n\t\t// Extract to avoid forwarding\n\t\treplace,\n\t\tfocusTargetSelector,\n\t\t// Rest\n\t\t...restOptions\n\t} = options;\n\n\tif ( currentLocation.path === path ) {\n\t\treturn { currentLocation, focusSelectors };\n\t}\n\n\tlet focusSelectorsCopy: typeof focusSelectors | undefined;\n\tfunction getFocusSelectorsCopy() {\n\t\tfocusSelectorsCopy =\n\t\t\tfocusSelectorsCopy ?? new Map( state.focusSelectors );\n\t\treturn focusSelectorsCopy;\n\t}\n\n\t// Set a focus selector that will be used when navigating\n\t// back to the current location.\n\tif ( focusTargetSelector && currentLocation.path ) {\n\t\tgetFocusSelectorsCopy().set(\n\t\t\tcurrentLocation.path,\n\t\t\tfocusTargetSelector\n\t\t);\n\t}\n\n\t// Get the focus selector for the new location.\n\tlet currentFocusSelector;\n\tif ( focusSelectors.get( path ) ) {\n\t\tif ( isBack ) {\n\t\t\t// Use the found focus selector only when navigating back.\n\t\t\tcurrentFocusSelector = focusSelectors.get( path );\n\t\t}\n\t\t// Make a copy of the focusSelectors map to remove the focus selector\n\t\t// only if necessary (ie. a focus selector was found).\n\t\tgetFocusSelectorsCopy().delete( path );\n\t}\n\n\treturn {\n\t\tcurrentLocation: {\n\t\t\t...restOptions,\n\t\t\tisInitial: false,\n\t\t\tpath,\n\t\t\tisBack,\n\t\t\thasRestoredFocus: false,\n\t\t\tfocusTargetSelector: currentFocusSelector,\n\t\t\tskipFocus,\n\t\t},\n\t\tfocusSelectors: focusSelectorsCopy ?? focusSelectors,\n\t};\n}\n\nfunction goToParent(\n\tstate: RouterState,\n\toptions: NavigateToParentOptions = {}\n) {\n\tconst { screens, focusSelectors } = state;\n\tconst currentLocation = { ...state.currentLocation };\n\tconst currentPath = currentLocation.path;\n\tif ( currentPath === undefined ) {\n\t\treturn { currentLocation, focusSelectors };\n\t}\n\tconst parentPath = findParent( currentPath, screens );\n\tif ( parentPath === undefined ) {\n\t\treturn { currentLocation, focusSelectors };\n\t}\n\treturn goTo( state, parentPath, {\n\t\t...options,\n\t\tisBack: true,\n\t} );\n}\n\nfunction routerReducer(\n\tstate: RouterState,\n\taction: RouterAction\n): RouterState {\n\tlet {\n\t\tscreens,\n\t\tcurrentLocation,\n\t\tmatchedPath,\n\t\tfocusSelectors,\n\t\t...restState\n\t} = state;\n\tswitch ( action.type ) {\n\t\tcase 'add':\n\t\t\tscreens = addScreen( state, action.screen );\n\t\t\tbreak;\n\t\tcase 'remove':\n\t\t\tscreens = removeScreen( state, action.screen );\n\t\t\tbreak;\n\t\tcase 'goto':\n\t\t\t( { currentLocation, focusSelectors } = goTo(\n\t\t\t\tstate,\n\t\t\t\taction.path,\n\t\t\t\taction.options\n\t\t\t) );\n\t\t\tbreak;\n\t\tcase 'gotoparent':\n\t\t\t( { currentLocation, focusSelectors } = goToParent(\n\t\t\t\tstate,\n\t\t\t\taction.options\n\t\t\t) );\n\t\t\tbreak;\n\t}\n\n\t// Return early in case there is no change\n\tif (\n\t\tscreens === state.screens &&\n\t\tcurrentLocation === state.currentLocation\n\t) {\n\t\treturn state;\n\t}\n\n\t// Compute the matchedPath\n\tconst currentPath = currentLocation.path;\n\tmatchedPath =\n\t\tcurrentPath !== undefined\n\t\t\t? patternMatch( currentPath, screens )\n\t\t\t: undefined;\n\n\t// If the new match is the same as the previous match,\n\t// return the previous one to keep immutability.\n\tif (\n\t\tmatchedPath &&\n\t\tstate.matchedPath &&\n\t\tmatchedPath.id === state.matchedPath.id &&\n\t\tisShallowEqual( matchedPath.params, state.matchedPath.params )\n\t) {\n\t\tmatchedPath = state.matchedPath;\n\t}\n\n\treturn {\n\t\t...restState,\n\t\tscreens,\n\t\tcurrentLocation,\n\t\tmatchedPath,\n\t\tfocusSelectors,\n\t};\n}\n\nfunction UnconnectedNavigator(\n\tprops: WordPressComponentProps< NavigatorProps, 'div' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst {\n\t\tinitialPath: initialPathProp,\n\t\tchildren,\n\t\tclassName,\n\t\t...otherProps\n\t} = useContextSystem( props, 'Navigator' );\n\n\tconst [ routerState, dispatch ] = useReducer(\n\t\trouterReducer,\n\t\tinitialPathProp,\n\t\t( path ) => ( {\n\t\t\tscreens: [],\n\t\t\tcurrentLocation: { path, isInitial: true },\n\t\t\tmatchedPath: undefined,\n\t\t\tfocusSelectors: new Map(),\n\t\t\tinitialPath: initialPathProp,\n\t\t} )\n\t);\n\n\t// The methods are constant forever, create stable references to them.\n\tconst methods = useMemo(\n\t\t() => ( {\n\t\t\t// Note: calling goBack calls `goToParent` internally, as it was established\n\t\t\t// that `goBack` should behave like `goToParent`, and `goToParent` should\n\t\t\t// be marked as deprecated.\n\t\t\tgoBack: ( options: NavigateToParentOptions | undefined ) =>\n\t\t\t\tdispatch( { type: 'gotoparent', options } ),\n\t\t\tgoTo: ( path: string, options?: NavigateOptions ) =>\n\t\t\t\tdispatch( { type: 'goto', path, options } ),\n\t\t\tgoToParent: ( options: NavigateToParentOptions | undefined ) => {\n\t\t\t\tdeprecated( `wp.components.useNavigator().goToParent`, {\n\t\t\t\t\tsince: '6.7',\n\t\t\t\t\talternative: 'wp.components.useNavigator().goBack',\n\t\t\t\t} );\n\t\t\t\tdispatch( { type: 'gotoparent', options } );\n\t\t\t},\n\t\t\taddScreen: ( screen: Screen ) =>\n\t\t\t\tdispatch( { type: 'add', screen } ),\n\t\t\tremoveScreen: ( screen: Screen ) =>\n\t\t\t\tdispatch( { type: 'remove', screen } ),\n\t\t} ),\n\t\t[]\n\t);\n\n\tconst { currentLocation, matchedPath } = routerState;\n\n\tconst navigatorContextValue: NavigatorContextType = useMemo(\n\t\t() => ( {\n\t\t\tlocation: currentLocation,\n\t\t\tparams: matchedPath?.params ?? {},\n\t\t\tmatch: matchedPath?.id,\n\t\t\t...methods,\n\t\t} ),\n\t\t[ currentLocation, matchedPath, methods ]\n\t);\n\n\tconst cx = useCx();\n\tconst classes = useMemo(\n\t\t() => cx( styles.navigatorWrapper, 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\nexport const Navigator = contextConnect( UnconnectedNavigator, 'Navigator' );\n"],"mappings":"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","ignoreList":[]}
@@ -17,41 +17,5 @@ function UnconnectedNavigatorBackButton(props, forwardedRef) {
17
17
  ...navigatorBackButtonProps
18
18
  });
19
19
  }
20
-
21
- /**
22
- * The `NavigatorBackButton` component can be used to navigate to a screen and
23
- * should be used in combination with the `NavigatorProvider`, the
24
- * `NavigatorScreen` and the `NavigatorButton` components (or the `useNavigator`
25
- * hook).
26
- *
27
- * @example
28
- * ```jsx
29
- * import {
30
- * __experimentalNavigatorProvider as NavigatorProvider,
31
- * __experimentalNavigatorScreen as NavigatorScreen,
32
- * __experimentalNavigatorButton as NavigatorButton,
33
- * __experimentalNavigatorBackButton as NavigatorBackButton,
34
- * } from '@wordpress/components';
35
- *
36
- * const MyNavigation = () => (
37
- * <NavigatorProvider initialPath="/">
38
- * <NavigatorScreen path="/">
39
- * <p>This is the home screen.</p>
40
- * <NavigatorButton path="/child">
41
- * Navigate to child screen.
42
- * </NavigatorButton>
43
- * </NavigatorScreen>
44
- *
45
- * <NavigatorScreen path="/child">
46
- * <p>This is the child screen.</p>
47
- * <NavigatorBackButton>
48
- * Go back (to parent)
49
- * </NavigatorBackButton>
50
- * </NavigatorScreen>
51
- * </NavigatorProvider>
52
- * );
53
- * ```
54
- */
55
- export const NavigatorBackButton = contextConnect(UnconnectedNavigatorBackButton, 'NavigatorBackButton');
56
- export default NavigatorBackButton;
20
+ export const NavigatorBackButton = contextConnect(UnconnectedNavigatorBackButton, 'Navigator.BackButton');
57
21
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["contextConnect","View","useNavigatorBackButton","jsx","_jsx","UnconnectedNavigatorBackButton","props","forwardedRef","navigatorBackButtonProps","ref","NavigatorBackButton"],"sources":["@wordpress/components/src/navigator/navigator-back-button/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { View } from '../../view';\nimport { useNavigatorBackButton } from './hook';\nimport type { NavigatorBackButtonProps } from '../types';\n\nfunction UnconnectedNavigatorBackButton(\n\tprops: WordPressComponentProps< NavigatorBackButtonProps, 'button' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst navigatorBackButtonProps = useNavigatorBackButton( props );\n\n\treturn <View ref={ forwardedRef } { ...navigatorBackButtonProps } />;\n}\n\n/**\n * The `NavigatorBackButton` component can be used to navigate to a screen and\n * should be used in combination with the `NavigatorProvider`, the\n * `NavigatorScreen` and the `NavigatorButton` 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 (to parent)\n * </NavigatorBackButton>\n * </NavigatorScreen>\n * </NavigatorProvider>\n * );\n * ```\n */\nexport const NavigatorBackButton = contextConnect(\n\tUnconnectedNavigatorBackButton,\n\t'NavigatorBackButton'\n);\n\nexport default NavigatorBackButton;\n"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,eAAe;AAC9C,SAASC,IAAI,QAAQ,YAAY;AACjC,SAASC,sBAAsB,QAAQ,QAAQ;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGhD,SAASC,8BAA8BA,CACtCC,KAAoE,EACpEC,YAAiC,EAChC;EACD,MAAMC,wBAAwB,GAAGN,sBAAsB,CAAEI,KAAM,CAAC;EAEhE,oBAAOF,IAAA,CAACH,IAAI;IAACQ,GAAG,EAAGF,YAAc;IAAA,GAAMC;EAAwB,CAAI,CAAC;AACrE;;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;AACA;AACA;AACA;AACA,OAAO,MAAME,mBAAmB,GAAGV,cAAc,CAChDK,8BAA8B,EAC9B,qBACD,CAAC;AAED,eAAeK,mBAAmB","ignoreList":[]}
1
+ {"version":3,"names":["contextConnect","View","useNavigatorBackButton","jsx","_jsx","UnconnectedNavigatorBackButton","props","forwardedRef","navigatorBackButtonProps","ref","NavigatorBackButton"],"sources":["@wordpress/components/src/navigator/navigator-back-button/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { View } from '../../view';\nimport { useNavigatorBackButton } from './hook';\nimport type { NavigatorBackButtonProps } from '../types';\n\nfunction UnconnectedNavigatorBackButton(\n\tprops: WordPressComponentProps< NavigatorBackButtonProps, 'button' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst navigatorBackButtonProps = useNavigatorBackButton( props );\n\n\treturn <View ref={ forwardedRef } { ...navigatorBackButtonProps } />;\n}\n\nexport const NavigatorBackButton = contextConnect(\n\tUnconnectedNavigatorBackButton,\n\t'Navigator.BackButton'\n);\n"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,eAAe;AAC9C,SAASC,IAAI,QAAQ,YAAY;AACjC,SAASC,sBAAsB,QAAQ,QAAQ;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAGhD,SAASC,8BAA8BA,CACtCC,KAAoE,EACpEC,YAAiC,EAChC;EACD,MAAMC,wBAAwB,GAAGN,sBAAsB,CAAEI,KAAM,CAAC;EAEhE,oBAAOF,IAAA,CAACH,IAAI;IAACQ,GAAG,EAAGF,YAAc;IAAA,GAAMC;EAAwB,CAAI,CAAC;AACrE;AAEA,OAAO,MAAME,mBAAmB,GAAGV,cAAc,CAChDK,8BAA8B,EAC9B,sBACD,CAAC","ignoreList":[]}
@@ -15,7 +15,7 @@ export function useNavigatorBackButton(props) {
15
15
  onClick,
16
16
  as = Button,
17
17
  ...otherProps
18
- } = useContextSystem(props, 'NavigatorBackButton');
18
+ } = useContextSystem(props, 'Navigator.BackButton');
19
19
  const {
20
20
  goBack
21
21
  } = useNavigator();
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","useContextSystem","Button","useNavigator","useNavigatorBackButton","props","onClick","as","otherProps","goBack","handleClick","e","preventDefault"],"sources":["@wordpress/components/src/navigator/navigator-back-button/hook.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { useContextSystem } from '../../context';\nimport Button from '../../button';\nimport { useNavigator } from '../use-navigator';\nimport type { NavigatorBackButtonProps } from '../types';\n\nexport function useNavigatorBackButton(\n\tprops: WordPressComponentProps< NavigatorBackButtonProps, 'button' >\n) {\n\tconst {\n\t\tonClick,\n\t\tas = Button,\n\n\t\t...otherProps\n\t} = useContextSystem( props, 'NavigatorBackButton' );\n\n\tconst { goBack } = useNavigator();\n\tconst handleClick: React.MouseEventHandler< HTMLButtonElement > =\n\t\tuseCallback(\n\t\t\t( e ) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tgoBack();\n\t\t\t\tonClick?.( e );\n\t\t\t},\n\t\t\t[ goBack, onClick ]\n\t\t);\n\n\treturn {\n\t\tas,\n\t\tonClick: handleClick,\n\t\t...otherProps,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;;AAEA,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,YAAY,QAAQ,kBAAkB;AAG/C,OAAO,SAASC,sBAAsBA,CACrCC,KAAoE,EACnE;EACD,MAAM;IACLC,OAAO;IACPC,EAAE,GAAGL,MAAM;IAEX,GAAGM;EACJ,CAAC,GAAGP,gBAAgB,CAAEI,KAAK,EAAE,qBAAsB,CAAC;EAEpD,MAAM;IAAEI;EAAO,CAAC,GAAGN,YAAY,CAAC,CAAC;EACjC,MAAMO,WAAyD,GAC9DV,WAAW,CACRW,CAAC,IAAM;IACRA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClBH,MAAM,CAAC,CAAC;IACRH,OAAO,GAAIK,CAAE,CAAC;EACf,CAAC,EACD,CAAEF,MAAM,EAAEH,OAAO,CAClB,CAAC;EAEF,OAAO;IACNC,EAAE;IACFD,OAAO,EAAEI,WAAW;IACpB,GAAGF;EACJ,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useContextSystem","Button","useNavigator","useNavigatorBackButton","props","onClick","as","otherProps","goBack","handleClick","e","preventDefault"],"sources":["@wordpress/components/src/navigator/navigator-back-button/hook.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { useContextSystem } from '../../context';\nimport Button from '../../button';\nimport { useNavigator } from '../use-navigator';\nimport type { NavigatorBackButtonProps } from '../types';\n\nexport function useNavigatorBackButton(\n\tprops: WordPressComponentProps< NavigatorBackButtonProps, 'button' >\n) {\n\tconst {\n\t\tonClick,\n\t\tas = Button,\n\n\t\t...otherProps\n\t} = useContextSystem( props, 'Navigator.BackButton' );\n\n\tconst { goBack } = useNavigator();\n\tconst handleClick: React.MouseEventHandler< HTMLButtonElement > =\n\t\tuseCallback(\n\t\t\t( e ) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tgoBack();\n\t\t\t\tonClick?.( e );\n\t\t\t},\n\t\t\t[ goBack, onClick ]\n\t\t);\n\n\treturn {\n\t\tas,\n\t\tonClick: handleClick,\n\t\t...otherProps,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;;AAEA,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,YAAY,QAAQ,kBAAkB;AAG/C,OAAO,SAASC,sBAAsBA,CACrCC,KAAoE,EACnE;EACD,MAAM;IACLC,OAAO;IACPC,EAAE,GAAGL,MAAM;IAEX,GAAGM;EACJ,CAAC,GAAGP,gBAAgB,CAAEI,KAAK,EAAE,sBAAuB,CAAC;EAErD,MAAM;IAAEI;EAAO,CAAC,GAAGN,YAAY,CAAC,CAAC;EACjC,MAAMO,WAAyD,GAC9DV,WAAW,CACRW,CAAC,IAAM;IACRA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClBH,MAAM,CAAC,CAAC;IACRH,OAAO,GAAIK,CAAE,CAAC;EACf,CAAC,EACD,CAAEF,MAAM,EAAEH,OAAO,CAClB,CAAC;EAEF,OAAO;IACNC,EAAE;IACFD,OAAO,EAAEI,WAAW;IACpB,GAAGF;EACJ,CAAC;AACF","ignoreList":[]}
@@ -17,40 +17,5 @@ function UnconnectedNavigatorButton(props, forwardedRef) {
17
17
  ...navigatorButtonProps
18
18
  });
19
19
  }
20
-
21
- /**
22
- * The `NavigatorButton` component can be used to navigate to a screen and should
23
- * be used in combination with the `NavigatorProvider`, the `NavigatorScreen`
24
- * and the `NavigatorBackButton` components (or the `useNavigator` hook).
25
- *
26
- * @example
27
- * ```jsx
28
- * import {
29
- * __experimentalNavigatorProvider as NavigatorProvider,
30
- * __experimentalNavigatorScreen as NavigatorScreen,
31
- * __experimentalNavigatorButton as NavigatorButton,
32
- * __experimentalNavigatorBackButton as NavigatorBackButton,
33
- * } from '@wordpress/components';
34
- *
35
- * const MyNavigation = () => (
36
- * <NavigatorProvider initialPath="/">
37
- * <NavigatorScreen path="/">
38
- * <p>This is the home screen.</p>
39
- * <NavigatorButton path="/child">
40
- * Navigate to child screen.
41
- * </NavigatorButton>
42
- * </NavigatorScreen>
43
- *
44
- * <NavigatorScreen path="/child">
45
- * <p>This is the child screen.</p>
46
- * <NavigatorBackButton>
47
- * Go back
48
- * </NavigatorBackButton>
49
- * </NavigatorScreen>
50
- * </NavigatorProvider>
51
- * );
52
- * ```
53
- */
54
- export const NavigatorButton = contextConnect(UnconnectedNavigatorButton, 'NavigatorButton');
55
- export default NavigatorButton;
20
+ export const NavigatorButton = contextConnect(UnconnectedNavigatorButton, 'Navigator.Button');
56
21
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["contextConnect","View","useNavigatorButton","jsx","_jsx","UnconnectedNavigatorButton","props","forwardedRef","navigatorButtonProps","ref","NavigatorButton"],"sources":["@wordpress/components/src/navigator/navigator-button/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { View } from '../../view';\nimport { useNavigatorButton } from './hook';\nimport type { NavigatorButtonProps } from '../types';\n\nfunction UnconnectedNavigatorButton(\n\tprops: WordPressComponentProps< NavigatorButtonProps, 'button' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst navigatorButtonProps = useNavigatorButton( props );\n\n\treturn <View ref={ forwardedRef } { ...navigatorButtonProps } />;\n}\n\n/**\n * The `NavigatorButton` component can be used to navigate to a screen and should\n * be used in combination with the `NavigatorProvider`, the `NavigatorScreen`\n * and the `NavigatorBackButton` components (or the `useNavigator` 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 NavigatorButton = contextConnect(\n\tUnconnectedNavigatorButton,\n\t'NavigatorButton'\n);\n\nexport default NavigatorButton;\n"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,eAAe;AAC9C,SAASC,IAAI,QAAQ,YAAY;AACjC,SAASC,kBAAkB,QAAQ,QAAQ;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG5C,SAASC,0BAA0BA,CAClCC,KAAgE,EAChEC,YAAiC,EAChC;EACD,MAAMC,oBAAoB,GAAGN,kBAAkB,CAAEI,KAAM,CAAC;EAExD,oBAAOF,IAAA,CAACH,IAAI;IAACQ,GAAG,EAAGF,YAAc;IAAA,GAAMC;EAAoB,CAAI,CAAC;AACjE;;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;AACA;AACA;AACA,OAAO,MAAME,eAAe,GAAGV,cAAc,CAC5CK,0BAA0B,EAC1B,iBACD,CAAC;AAED,eAAeK,eAAe","ignoreList":[]}
1
+ {"version":3,"names":["contextConnect","View","useNavigatorButton","jsx","_jsx","UnconnectedNavigatorButton","props","forwardedRef","navigatorButtonProps","ref","NavigatorButton"],"sources":["@wordpress/components/src/navigator/navigator-button/component.tsx"],"sourcesContent":["/**\n * External dependencies\n */\nimport type { ForwardedRef } from 'react';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { contextConnect } from '../../context';\nimport { View } from '../../view';\nimport { useNavigatorButton } from './hook';\nimport type { NavigatorButtonProps } from '../types';\n\nfunction UnconnectedNavigatorButton(\n\tprops: WordPressComponentProps< NavigatorButtonProps, 'button' >,\n\tforwardedRef: ForwardedRef< any >\n) {\n\tconst navigatorButtonProps = useNavigatorButton( props );\n\n\treturn <View ref={ forwardedRef } { ...navigatorButtonProps } />;\n}\n\nexport const NavigatorButton = contextConnect(\n\tUnconnectedNavigatorButton,\n\t'Navigator.Button'\n);\n"],"mappings":"AAAA;AACA;AACA;;AAGA;AACA;AACA;;AAEA,SAASA,cAAc,QAAQ,eAAe;AAC9C,SAASC,IAAI,QAAQ,YAAY;AACjC,SAASC,kBAAkB,QAAQ,QAAQ;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAG5C,SAASC,0BAA0BA,CAClCC,KAAgE,EAChEC,YAAiC,EAChC;EACD,MAAMC,oBAAoB,GAAGN,kBAAkB,CAAEI,KAAM,CAAC;EAExD,oBAAOF,IAAA,CAACH,IAAI;IAACQ,GAAG,EAAGF,YAAc;IAAA,GAAMC;EAAoB,CAAI,CAAC;AACjE;AAEA,OAAO,MAAME,eAAe,GAAGV,cAAc,CAC5CK,0BAA0B,EAC1B,kBACD,CAAC","ignoreList":[]}
@@ -19,7 +19,7 @@ export function useNavigatorButton(props) {
19
19
  as = Button,
20
20
  attributeName = 'id',
21
21
  ...otherProps
22
- } = useContextSystem(props, 'NavigatorButton');
22
+ } = useContextSystem(props, 'Navigator.Button');
23
23
  const escapedPath = escapeAttribute(path);
24
24
  const {
25
25
  goTo
@@ -1 +1 @@
1
- {"version":3,"names":["useCallback","escapeAttribute","useContextSystem","Button","useNavigator","cssSelectorForAttribute","attrName","attrValue","useNavigatorButton","props","path","onClick","as","attributeName","otherProps","escapedPath","goTo","handleClick","e","preventDefault","focusTargetSelector"],"sources":["@wordpress/components/src/navigator/navigator-button/hook.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { escapeAttribute } from '@wordpress/escape-html';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { useContextSystem } from '../../context';\nimport Button from '../../button';\nimport { useNavigator } from '../use-navigator';\nimport type { NavigatorButtonProps } from '../types';\n\nconst cssSelectorForAttribute = ( attrName: string, attrValue: string ) =>\n\t`[${ attrName }=\"${ attrValue }\"]`;\n\nexport function useNavigatorButton(\n\tprops: WordPressComponentProps< NavigatorButtonProps, 'button' >\n) {\n\tconst {\n\t\tpath,\n\t\tonClick,\n\t\tas = Button,\n\t\tattributeName = 'id',\n\t\t...otherProps\n\t} = useContextSystem( props, 'NavigatorButton' );\n\n\tconst escapedPath = escapeAttribute( path );\n\n\tconst { goTo } = useNavigator();\n\tconst handleClick: React.MouseEventHandler< HTMLButtonElement > =\n\t\tuseCallback(\n\t\t\t( e ) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tgoTo( escapedPath, {\n\t\t\t\t\tfocusTargetSelector: cssSelectorForAttribute(\n\t\t\t\t\t\tattributeName,\n\t\t\t\t\t\tescapedPath\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\tonClick?.( e );\n\t\t\t},\n\t\t\t[ goTo, onClick, attributeName, escapedPath ]\n\t\t);\n\n\treturn {\n\t\tas,\n\t\tonClick: handleClick,\n\t\t...otherProps,\n\t\t[ attributeName ]: escapedPath,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,oBAAoB;AAChD,SAASC,eAAe,QAAQ,wBAAwB;;AAExD;AACA;AACA;;AAEA,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,YAAY,QAAQ,kBAAkB;AAG/C,MAAMC,uBAAuB,GAAGA,CAAEC,QAAgB,EAAEC,SAAiB,KACnE,IAAID,QAAU,KAAKC,SAAW,IAAG;AAEnC,OAAO,SAASC,kBAAkBA,CACjCC,KAAgE,EAC/D;EACD,MAAM;IACLC,IAAI;IACJC,OAAO;IACPC,EAAE,GAAGT,MAAM;IACXU,aAAa,GAAG,IAAI;IACpB,GAAGC;EACJ,CAAC,GAAGZ,gBAAgB,CAAEO,KAAK,EAAE,iBAAkB,CAAC;EAEhD,MAAMM,WAAW,GAAGd,eAAe,CAAES,IAAK,CAAC;EAE3C,MAAM;IAAEM;EAAK,CAAC,GAAGZ,YAAY,CAAC,CAAC;EAC/B,MAAMa,WAAyD,GAC9DjB,WAAW,CACRkB,CAAC,IAAM;IACRA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClBH,IAAI,CAAED,WAAW,EAAE;MAClBK,mBAAmB,EAAEf,uBAAuB,CAC3CQ,aAAa,EACbE,WACD;IACD,CAAE,CAAC;IACHJ,OAAO,GAAIO,CAAE,CAAC;EACf,CAAC,EACD,CAAEF,IAAI,EAAEL,OAAO,EAAEE,aAAa,EAAEE,WAAW,CAC5C,CAAC;EAEF,OAAO;IACNH,EAAE;IACFD,OAAO,EAAEM,WAAW;IACpB,GAAGH,UAAU;IACb,CAAED,aAAa,GAAIE;EACpB,CAAC;AACF","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","escapeAttribute","useContextSystem","Button","useNavigator","cssSelectorForAttribute","attrName","attrValue","useNavigatorButton","props","path","onClick","as","attributeName","otherProps","escapedPath","goTo","handleClick","e","preventDefault","focusTargetSelector"],"sources":["@wordpress/components/src/navigator/navigator-button/hook.ts"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { escapeAttribute } from '@wordpress/escape-html';\n\n/**\n * Internal dependencies\n */\nimport type { WordPressComponentProps } from '../../context';\nimport { useContextSystem } from '../../context';\nimport Button from '../../button';\nimport { useNavigator } from '../use-navigator';\nimport type { NavigatorButtonProps } from '../types';\n\nconst cssSelectorForAttribute = ( attrName: string, attrValue: string ) =>\n\t`[${ attrName }=\"${ attrValue }\"]`;\n\nexport function useNavigatorButton(\n\tprops: WordPressComponentProps< NavigatorButtonProps, 'button' >\n) {\n\tconst {\n\t\tpath,\n\t\tonClick,\n\t\tas = Button,\n\t\tattributeName = 'id',\n\t\t...otherProps\n\t} = useContextSystem( props, 'Navigator.Button' );\n\n\tconst escapedPath = escapeAttribute( path );\n\n\tconst { goTo } = useNavigator();\n\tconst handleClick: React.MouseEventHandler< HTMLButtonElement > =\n\t\tuseCallback(\n\t\t\t( e ) => {\n\t\t\t\te.preventDefault();\n\t\t\t\tgoTo( escapedPath, {\n\t\t\t\t\tfocusTargetSelector: cssSelectorForAttribute(\n\t\t\t\t\t\tattributeName,\n\t\t\t\t\t\tescapedPath\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t\tonClick?.( e );\n\t\t\t},\n\t\t\t[ goTo, onClick, attributeName, escapedPath ]\n\t\t);\n\n\treturn {\n\t\tas,\n\t\tonClick: handleClick,\n\t\t...otherProps,\n\t\t[ attributeName ]: escapedPath,\n\t};\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,QAAQ,oBAAoB;AAChD,SAASC,eAAe,QAAQ,wBAAwB;;AAExD;AACA;AACA;;AAEA,SAASC,gBAAgB,QAAQ,eAAe;AAChD,OAAOC,MAAM,MAAM,cAAc;AACjC,SAASC,YAAY,QAAQ,kBAAkB;AAG/C,MAAMC,uBAAuB,GAAGA,CAAEC,QAAgB,EAAEC,SAAiB,KACnE,IAAID,QAAU,KAAKC,SAAW,IAAG;AAEnC,OAAO,SAASC,kBAAkBA,CACjCC,KAAgE,EAC/D;EACD,MAAM;IACLC,IAAI;IACJC,OAAO;IACPC,EAAE,GAAGT,MAAM;IACXU,aAAa,GAAG,IAAI;IACpB,GAAGC;EACJ,CAAC,GAAGZ,gBAAgB,CAAEO,KAAK,EAAE,kBAAmB,CAAC;EAEjD,MAAMM,WAAW,GAAGd,eAAe,CAAES,IAAK,CAAC;EAE3C,MAAM;IAAEM;EAAK,CAAC,GAAGZ,YAAY,CAAC,CAAC;EAC/B,MAAMa,WAAyD,GAC9DjB,WAAW,CACRkB,CAAC,IAAM;IACRA,CAAC,CAACC,cAAc,CAAC,CAAC;IAClBH,IAAI,CAAED,WAAW,EAAE;MAClBK,mBAAmB,EAAEf,uBAAuB,CAC3CQ,aAAa,EACbE,WACD;IACD,CAAE,CAAC;IACHJ,OAAO,GAAIO,CAAE,CAAC;EACf,CAAC,EACD,CAAEF,IAAI,EAAEL,OAAO,EAAEE,aAAa,EAAEE,WAAW,CAC5C,CAAC;EAEF,OAAO;IACNH,EAAE;IACFD,OAAO,EAAEM,WAAW;IACpB,GAAGH,UAAU;IACb,CAAED,aAAa,GAAIE;EACpB,CAAC;AACF","ignoreList":[]}