@wordpress/components 35.0.0 → 35.1.1-next.v.202606191442.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 (434) hide show
  1. package/CHANGELOG.md +47 -1
  2. package/build/alignment-matrix-control/cell.cjs +1 -1
  3. package/build/alignment-matrix-control/cell.cjs.map +2 -2
  4. package/build/alignment-matrix-control/index.cjs +1 -1
  5. package/build/alignment-matrix-control/index.cjs.map +2 -2
  6. package/build/angle-picker-control/angle-circle.cjs +1 -1
  7. package/build/angle-picker-control/angle-circle.cjs.map +2 -2
  8. package/build/angle-picker-control/index.cjs +2 -2
  9. package/build/autocomplete/get-autocomplete-match.cjs.map +1 -1
  10. package/build/autocomplete/index.cjs.map +1 -1
  11. package/build/base-control/styles/base-control-styles.cjs +6 -6
  12. package/build/base-control/styles/base-control-styles.cjs.map +2 -2
  13. package/build/border-control/styles.cjs +17 -14
  14. package/build/border-control/styles.cjs.map +2 -2
  15. package/build/button/index.cjs +3 -7
  16. package/build/button/index.cjs.map +2 -2
  17. package/build/card/card-divider/hook.cjs.map +2 -2
  18. package/build/color-palette/index.cjs +3 -0
  19. package/build/color-palette/index.cjs.map +2 -2
  20. package/build/color-picker/component.cjs.map +1 -1
  21. package/build/custom-gradient-picker/gradient-bar/index.cjs.map +2 -2
  22. package/build/date-time/utils.cjs.map +1 -1
  23. package/build/draggable/index.cjs +1 -1
  24. package/build/draggable/index.cjs.map +2 -2
  25. package/build/external-link/index.cjs +1 -1
  26. package/build/external-link/index.cjs.map +1 -1
  27. package/build/menu/popover.cjs.map +1 -1
  28. package/build/menu/styles.cjs +17 -17
  29. package/build/menu/styles.cjs.map +2 -2
  30. package/build/modal/index.cjs.map +1 -1
  31. package/build/modal/use-modal-exit-animation.cjs +37 -52
  32. package/build/modal/use-modal-exit-animation.cjs.map +2 -2
  33. package/build/navigable-container/container.cjs +15 -21
  34. package/build/navigable-container/container.cjs.map +2 -2
  35. package/build/palette-edit/index.cjs +1 -1
  36. package/build/progress-bar/index.cjs +1 -1
  37. package/build/progress-bar/index.cjs.map +2 -2
  38. package/build/query-controls/index.cjs +2 -2
  39. package/build/query-controls/index.cjs.map +2 -2
  40. package/build/range-control/index.cjs.map +1 -1
  41. package/build/sandbox/index.cjs +7 -1
  42. package/build/sandbox/index.cjs.map +2 -2
  43. package/build/snackbar/index.cjs +1 -1
  44. package/build/spinner/styles.cjs +4 -4
  45. package/build/spinner/styles.cjs.map +2 -2
  46. package/build/tabs/index.cjs +0 -18
  47. package/build/tabs/index.cjs.map +2 -2
  48. package/build/tabs/tablist.cjs +5 -15
  49. package/build/tabs/tablist.cjs.map +2 -2
  50. package/build/tools-panel/styles.cjs +13 -13
  51. package/build/tools-panel/styles.cjs.map +2 -2
  52. package/build/tools-panel/tools-panel/hook.cjs.map +1 -1
  53. package/build/tree-select/index.cjs +1 -1
  54. package/build/tree-select/index.cjs.map +1 -1
  55. package/build/truncate/utils.cjs +1 -1
  56. package/build/truncate/utils.cjs.map +1 -1
  57. package/build/unit-control/utils.cjs +33 -35
  58. package/build/unit-control/utils.cjs.map +2 -2
  59. package/build/utils/colors-values.cjs +12 -12
  60. package/build/utils/colors-values.cjs.map +2 -2
  61. package/build/utils/config-values.cjs +2 -2
  62. package/build/utils/config-values.cjs.map +2 -2
  63. package/build/utils/dropdown-motion.cjs.map +2 -2
  64. package/build/utils/strings.cjs.map +1 -1
  65. package/build-module/alignment-matrix-control/cell.mjs +1 -1
  66. package/build-module/alignment-matrix-control/cell.mjs.map +2 -2
  67. package/build-module/alignment-matrix-control/index.mjs +1 -1
  68. package/build-module/alignment-matrix-control/index.mjs.map +2 -2
  69. package/build-module/angle-picker-control/angle-circle.mjs +1 -1
  70. package/build-module/angle-picker-control/angle-circle.mjs.map +2 -2
  71. package/build-module/angle-picker-control/index.mjs +2 -2
  72. package/build-module/autocomplete/get-autocomplete-match.mjs.map +1 -1
  73. package/build-module/autocomplete/index.mjs.map +1 -1
  74. package/build-module/base-control/styles/base-control-styles.mjs +6 -6
  75. package/build-module/base-control/styles/base-control-styles.mjs.map +2 -2
  76. package/build-module/border-control/styles.mjs +17 -14
  77. package/build-module/border-control/styles.mjs.map +2 -2
  78. package/build-module/button/index.mjs +2 -5
  79. package/build-module/button/index.mjs.map +2 -2
  80. package/build-module/card/card-divider/hook.mjs.map +2 -2
  81. package/build-module/color-palette/index.mjs +3 -0
  82. package/build-module/color-palette/index.mjs.map +2 -2
  83. package/build-module/color-picker/component.mjs.map +1 -1
  84. package/build-module/custom-gradient-picker/gradient-bar/index.mjs.map +2 -2
  85. package/build-module/date-time/utils.mjs.map +1 -1
  86. package/build-module/draggable/index.mjs +1 -1
  87. package/build-module/draggable/index.mjs.map +2 -2
  88. package/build-module/external-link/index.mjs +1 -1
  89. package/build-module/external-link/index.mjs.map +1 -1
  90. package/build-module/menu/popover.mjs.map +1 -1
  91. package/build-module/menu/styles.mjs +17 -17
  92. package/build-module/menu/styles.mjs.map +2 -2
  93. package/build-module/modal/index.mjs.map +1 -1
  94. package/build-module/modal/use-modal-exit-animation.mjs +37 -52
  95. package/build-module/modal/use-modal-exit-animation.mjs.map +2 -2
  96. package/build-module/navigable-container/container.mjs +16 -22
  97. package/build-module/navigable-container/container.mjs.map +2 -2
  98. package/build-module/palette-edit/index.mjs +1 -1
  99. package/build-module/progress-bar/index.mjs +1 -1
  100. package/build-module/progress-bar/index.mjs.map +2 -2
  101. package/build-module/query-controls/index.mjs +2 -2
  102. package/build-module/query-controls/index.mjs.map +2 -2
  103. package/build-module/range-control/index.mjs.map +1 -1
  104. package/build-module/sandbox/index.mjs +3 -1
  105. package/build-module/sandbox/index.mjs.map +2 -2
  106. package/build-module/snackbar/index.mjs +1 -1
  107. package/build-module/spinner/styles.mjs +4 -4
  108. package/build-module/spinner/styles.mjs.map +2 -2
  109. package/build-module/tabs/index.mjs +1 -19
  110. package/build-module/tabs/index.mjs.map +2 -2
  111. package/build-module/tabs/tablist.mjs +5 -15
  112. package/build-module/tabs/tablist.mjs.map +2 -2
  113. package/build-module/tools-panel/styles.mjs +13 -13
  114. package/build-module/tools-panel/styles.mjs.map +2 -2
  115. package/build-module/tools-panel/tools-panel/hook.mjs.map +1 -1
  116. package/build-module/tree-select/index.mjs +1 -1
  117. package/build-module/tree-select/index.mjs.map +1 -1
  118. package/build-module/truncate/utils.mjs +1 -1
  119. package/build-module/truncate/utils.mjs.map +1 -1
  120. package/build-module/unit-control/utils.mjs +33 -35
  121. package/build-module/unit-control/utils.mjs.map +2 -2
  122. package/build-module/utils/colors-values.mjs +12 -12
  123. package/build-module/utils/colors-values.mjs.map +2 -2
  124. package/build-module/utils/config-values.mjs +2 -2
  125. package/build-module/utils/config-values.mjs.map +2 -2
  126. package/build-module/utils/dropdown-motion.mjs.map +2 -2
  127. package/build-module/utils/strings.mjs.map +1 -1
  128. package/build-style/style-rtl.css +122 -91
  129. package/build-style/style.css +122 -91
  130. package/build-types/base-control/styles/base-control-styles.d.ts.map +1 -1
  131. package/build-types/border-control/styles.d.ts.map +1 -1
  132. package/build-types/button/index.d.ts +0 -2
  133. package/build-types/button/index.d.ts.map +1 -1
  134. package/build-types/card/card-divider/hook.d.ts +1 -274
  135. package/build-types/card/card-divider/hook.d.ts.map +1 -1
  136. package/build-types/color-palette/index.d.ts.map +1 -1
  137. package/build-types/composite/stories/index.story.d.ts.map +1 -1
  138. package/build-types/confirm-dialog/stories/index.story.d.ts.map +1 -1
  139. package/build-types/custom-gradient-picker/gradient-bar/index.d.ts.map +1 -1
  140. package/build-types/dropdown/stories/index.story.d.ts.map +1 -1
  141. package/build-types/menu/styles.d.ts.map +1 -1
  142. package/build-types/menu/types.d.ts +2 -2
  143. package/build-types/navigable-container/container.d.ts.map +1 -1
  144. package/build-types/sandbox/index.d.ts +15 -0
  145. package/build-types/sandbox/index.d.ts.map +1 -1
  146. package/build-types/spinner/styles.d.ts.map +1 -1
  147. package/build-types/tabs/index.d.ts.map +1 -1
  148. package/build-types/tabs/tablist.d.ts.map +1 -1
  149. package/build-types/tools-panel/styles.d.ts.map +1 -1
  150. package/build-types/unit-control/utils.d.ts.map +1 -1
  151. package/build-types/utils/colors-values.d.ts.map +1 -1
  152. package/build-types/utils/dropdown-motion.d.ts.map +1 -1
  153. package/build-types/validated-form-controls/components/combobox-control.d.ts +1 -1
  154. package/package.json +44 -36
  155. package/src/angle-picker-control/angle-circle.tsx +3 -3
  156. package/src/base-control/README.md +2 -2
  157. package/src/base-control/styles/base-control-styles.ts +1 -0
  158. package/src/border-control/styles.ts +1 -0
  159. package/src/button/index.tsx +2 -4
  160. package/src/button/style.scss +3 -3
  161. package/src/card/card/README.md +4 -4
  162. package/src/card/card-divider/hook.ts +5 -1
  163. package/src/card/test/__snapshots__/index.tsx.snap +3 -3
  164. package/src/checkbox-control/README.md +1 -1
  165. package/src/clipboard-button/README.md +4 -4
  166. package/src/color-palette/index.tsx +5 -0
  167. package/src/color-palette/test/index.tsx +30 -0
  168. package/src/combobox-control/README.md +1 -1
  169. package/src/composite/stories/index.story.tsx +5 -0
  170. package/src/confirm-dialog/README.md +1 -1
  171. package/src/confirm-dialog/stories/index.story.tsx +1 -0
  172. package/src/custom-gradient-picker/gradient-bar/index.tsx +1 -1
  173. package/src/dropdown/stories/index.story.tsx +5 -0
  174. package/src/dropdown-menu/style.scss +1 -1
  175. package/src/external-link/style.scss +4 -4
  176. package/src/flex/flex/README.md +1 -1
  177. package/src/form-toggle/style.scss +1 -1
  178. package/src/heading/test/__snapshots__/index.tsx.snap +4 -4
  179. package/src/menu/README.md +2 -2
  180. package/src/menu/styles.ts +2 -0
  181. package/src/menu/test/index.tsx +120 -87
  182. package/src/menu/types.ts +2 -2
  183. package/src/modal/style.scss +1 -1
  184. package/src/modal/use-modal-exit-animation.ts +2 -2
  185. package/src/navigable-container/container.tsx +22 -30
  186. package/src/notice/style.scss +11 -13
  187. package/src/panel/README.md +2 -0
  188. package/src/panel/stories/index.story.tsx +2 -2
  189. package/src/panel/style.scss +1 -1
  190. package/src/popover/README.md +1 -1
  191. package/src/radio-control/style.scss +1 -1
  192. package/src/sandbox/index.tsx +18 -1
  193. package/src/sandbox/test/index.tsx +44 -1
  194. package/src/scrollable/README.md +1 -1
  195. package/src/spinner/styles.ts +1 -0
  196. package/src/tab-panel/style.scss +6 -6
  197. package/src/tabs/index.tsx +1 -26
  198. package/src/tabs/tablist.tsx +5 -21
  199. package/src/tabs/test/index.tsx +16 -27
  200. package/src/text/test/__snapshots__/index.tsx.snap +3 -3
  201. package/src/toggle-group-control/test/__snapshots__/index.tsx.snap +34 -26
  202. package/src/toolbar/toolbar-group/style.scss +2 -2
  203. package/src/tools-panel/styles.ts +1 -1
  204. package/src/tooltip/stories/index.story.tsx +2 -2
  205. package/src/tooltip/style.scss +1 -1
  206. package/src/unit-control/utils.ts +33 -52
  207. package/src/utils/colors-values.js +36 -16
  208. package/src/utils/config-values.js +2 -2
  209. package/src/utils/dropdown-motion.ts +6 -4
  210. package/src/utils/theme-variables.scss +18 -13
  211. package/build/mobile/image/constants.cjs +0 -34
  212. package/build/mobile/image/constants.cjs.map +0 -7
  213. package/build-module/mobile/image/constants.mjs +0 -9
  214. package/build-module/mobile/image/constants.mjs.map +0 -7
  215. package/build-types/mobile/image/constants.d.ts +0 -5
  216. package/build-types/mobile/image/constants.d.ts.map +0 -1
  217. package/src/autocomplete/autocompleter-ui.native.js +0 -211
  218. package/src/autocomplete/background-view.android.js +0 -25
  219. package/src/autocomplete/background-view.ios.js +0 -23
  220. package/src/autocomplete/style.android.scss +0 -7
  221. package/src/autocomplete/style.native.scss +0 -74
  222. package/src/base-control/index.native.js +0 -14
  223. package/src/button/index.native.js +0 -236
  224. package/src/button/style.native.scss +0 -9
  225. package/src/color-control/index.native.js +0 -24
  226. package/src/color-indicator/index.native.js +0 -80
  227. package/src/color-indicator/style.native.scss +0 -51
  228. package/src/color-palette/index.native.js +0 -360
  229. package/src/color-palette/style.native.scss +0 -49
  230. package/src/color-picker/hsv-color-picker.native.js +0 -88
  231. package/src/color-picker/hue-picker.native.js +0 -198
  232. package/src/color-picker/index.native.js +0 -215
  233. package/src/color-picker/saturation-picker.native.js +0 -167
  234. package/src/color-picker/style.native.scss +0 -87
  235. package/src/custom-gradient-picker/index.native.js +0 -110
  236. package/src/custom-gradient-picker/style.native.scss +0 -3
  237. package/src/dashicon/index.native.js +0 -18
  238. package/src/disabled/index.native.js +0 -10
  239. package/src/draggable/index.native.js +0 -234
  240. package/src/draggable/style.native.scss +0 -3
  241. package/src/draggable/test/index.native.js +0 -138
  242. package/src/dropdown/index.native.js +0 -59
  243. package/src/dropdown-menu/index.native.js +0 -152
  244. package/src/external-link/index.native.js +0 -25
  245. package/src/focal-point-picker/focal-point.native.js +0 -30
  246. package/src/focal-point-picker/index.native.js +0 -281
  247. package/src/focal-point-picker/tooltip/index.native.js +0 -144
  248. package/src/focal-point-picker/tooltip/style.native.scss +0 -42
  249. package/src/font-size-picker/index.native.js +0 -190
  250. package/src/font-size-picker/style.native.scss +0 -6
  251. package/src/footer-message-control/index.native.js +0 -14
  252. package/src/higher-order/with-focus-outside/index.native.js +0 -38
  253. package/src/index.native.js +0 -134
  254. package/src/keyboard-shortcuts/index.native.js +0 -2
  255. package/src/mobile/README.md +0 -3
  256. package/src/mobile/autocompletion-items.native.js +0 -11
  257. package/src/mobile/badge/README.md +0 -31
  258. package/src/mobile/badge/index.native.js +0 -27
  259. package/src/mobile/badge/style.scss +0 -18
  260. package/src/mobile/bottom-sheet/borderStyles.android.scss +0 -8
  261. package/src/mobile/bottom-sheet/borderStyles.ios.scss +0 -9
  262. package/src/mobile/bottom-sheet/bottom-sheet-context.native.js +0 -40
  263. package/src/mobile/bottom-sheet/bottom-sheet-navigation/README.md +0 -101
  264. package/src/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js +0 -16
  265. package/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +0 -193
  266. package/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +0 -146
  267. package/src/mobile/bottom-sheet/bottom-sheet-navigation/styles.native.scss +0 -11
  268. package/src/mobile/bottom-sheet/bottom-sheet-navigation/test/navigation-container.native.js +0 -197
  269. package/src/mobile/bottom-sheet/button.native.js +0 -19
  270. package/src/mobile/bottom-sheet/cell.native.js +0 -464
  271. package/src/mobile/bottom-sheet/cellStyles.android.scss +0 -15
  272. package/src/mobile/bottom-sheet/cellStyles.ios.scss +0 -19
  273. package/src/mobile/bottom-sheet/chevron-back.native.js +0 -18
  274. package/src/mobile/bottom-sheet/color-cell.native.js +0 -35
  275. package/src/mobile/bottom-sheet/cycle-picker-cell.native.js +0 -31
  276. package/src/mobile/bottom-sheet/footer-message-cell.native.js +0 -23
  277. package/src/mobile/bottom-sheet/footer-message-link/README.md +0 -37
  278. package/src/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +0 -26
  279. package/src/mobile/bottom-sheet/footer-message-link/styles.native.scss +0 -7
  280. package/src/mobile/bottom-sheet/index.native.js +0 -646
  281. package/src/mobile/bottom-sheet/keyboard-avoiding-view.native.js +0 -125
  282. package/src/mobile/bottom-sheet/link-cell.native.js +0 -35
  283. package/src/mobile/bottom-sheet/link-suggestion-item-cell.native.js +0 -92
  284. package/src/mobile/bottom-sheet/link-suggestion-styles.native.scss +0 -27
  285. package/src/mobile/bottom-sheet/lock-icon/index.native.js +0 -19
  286. package/src/mobile/bottom-sheet/lock-icon/styles.native.scss +0 -8
  287. package/src/mobile/bottom-sheet/nav-bar/README.md +0 -63
  288. package/src/mobile/bottom-sheet/nav-bar/action-button.native.js +0 -30
  289. package/src/mobile/bottom-sheet/nav-bar/apply-button.native.js +0 -53
  290. package/src/mobile/bottom-sheet/nav-bar/back-button.native.js +0 -94
  291. package/src/mobile/bottom-sheet/nav-bar/heading.native.js +0 -33
  292. package/src/mobile/bottom-sheet/nav-bar/index.native.js +0 -23
  293. package/src/mobile/bottom-sheet/nav-bar/styles.native.scss +0 -69
  294. package/src/mobile/bottom-sheet/picker-cell.native.js +0 -40
  295. package/src/mobile/bottom-sheet/radio-cell.native.js +0 -39
  296. package/src/mobile/bottom-sheet/range-cell.native.js +0 -274
  297. package/src/mobile/bottom-sheet/range-cell.native.scss +0 -40
  298. package/src/mobile/bottom-sheet/range-text-input.native.js +0 -248
  299. package/src/mobile/bottom-sheet/ripple.native.js +0 -83
  300. package/src/mobile/bottom-sheet/ripple.native.scss +0 -11
  301. package/src/mobile/bottom-sheet/stepper-cell/index.native.js +0 -264
  302. package/src/mobile/bottom-sheet/stepper-cell/stepper.android.js +0 -78
  303. package/src/mobile/bottom-sheet/stepper-cell/stepper.ios.js +0 -64
  304. package/src/mobile/bottom-sheet/stepper-cell/style.native.scss +0 -89
  305. package/src/mobile/bottom-sheet/styles.native.scss +0 -333
  306. package/src/mobile/bottom-sheet/sub-sheet/README.md +0 -90
  307. package/src/mobile/bottom-sheet/sub-sheet/index.native.js +0 -49
  308. package/src/mobile/bottom-sheet/switch-cell.native.js +0 -75
  309. package/src/mobile/bottom-sheet/test/index.native.js +0 -24
  310. package/src/mobile/bottom-sheet/test/range-cell.native.js +0 -73
  311. package/src/mobile/bottom-sheet-select-control/README.md +0 -97
  312. package/src/mobile/bottom-sheet-select-control/index.native.js +0 -124
  313. package/src/mobile/bottom-sheet-select-control/style.native.scss +0 -3
  314. package/src/mobile/bottom-sheet-text-control/README.md +0 -98
  315. package/src/mobile/bottom-sheet-text-control/index.native.js +0 -104
  316. package/src/mobile/bottom-sheet-text-control/styles.scss +0 -25
  317. package/src/mobile/clipboard/index.native.js +0 -18
  318. package/src/mobile/color-settings/gradient-picker-screen.native.js +0 -37
  319. package/src/mobile/color-settings/index.native.js +0 -88
  320. package/src/mobile/color-settings/palette.screen.native.js +0 -232
  321. package/src/mobile/color-settings/picker-screen.native.js +0 -60
  322. package/src/mobile/color-settings/style.native.scss +0 -62
  323. package/src/mobile/color-settings/utils.native.js +0 -36
  324. package/src/mobile/cycle-select-control/README.md +0 -3
  325. package/src/mobile/cycle-select-control/index.native.js +0 -39
  326. package/src/mobile/dashicons/index.native.js +0 -22
  327. package/src/mobile/focal-point-settings-panel/index.native.js +0 -84
  328. package/src/mobile/focal-point-settings-panel/styles.native.scss +0 -3
  329. package/src/mobile/gradient/index.native.js +0 -188
  330. package/src/mobile/gradient/style.native.scss +0 -8
  331. package/src/mobile/gradient/test/index.native.js +0 -114
  332. package/src/mobile/gridicons/index.native.js +0 -39
  333. package/src/mobile/html-text-input/index.native.js +0 -169
  334. package/src/mobile/html-text-input/style.android.scss +0 -8
  335. package/src/mobile/html-text-input/style.ios.scss +0 -10
  336. package/src/mobile/html-text-input/style.scss +0 -45
  337. package/src/mobile/html-text-input/test/__snapshots__/index.native.js.snap +0 -48
  338. package/src/mobile/html-text-input/test/index.native.js +0 -118
  339. package/src/mobile/image/constants.js +0 -1
  340. package/src/mobile/image/icon-customize.native.js +0 -10
  341. package/src/mobile/image/icon-retry.native.js +0 -11
  342. package/src/mobile/image/image-editing-button.native.js +0 -63
  343. package/src/mobile/image/index.native.js +0 -401
  344. package/src/mobile/image/style.native.scss +0 -179
  345. package/src/mobile/image/utils/index.native.js +0 -58
  346. package/src/mobile/keyboard-avoiding-view/index.android.js +0 -8
  347. package/src/mobile/keyboard-avoiding-view/index.ios.js +0 -143
  348. package/src/mobile/keyboard-avoiding-view/styles.native.scss +0 -9
  349. package/src/mobile/keyboard-aware-flat-list/index.android.js +0 -81
  350. package/src/mobile/keyboard-aware-flat-list/index.ios.js +0 -147
  351. package/src/mobile/keyboard-aware-flat-list/shared.native.js +0 -26
  352. package/src/mobile/keyboard-aware-flat-list/styles.native.scss +0 -8
  353. package/src/mobile/keyboard-aware-flat-list/test/use-keyboard-offset.native.js +0 -203
  354. package/src/mobile/keyboard-aware-flat-list/test/use-scroll-to-section.native.js +0 -142
  355. package/src/mobile/keyboard-aware-flat-list/test/use-scroll.native.js +0 -71
  356. package/src/mobile/keyboard-aware-flat-list/test/use-text-input-caret-position.native.js +0 -82
  357. package/src/mobile/keyboard-aware-flat-list/test/use-text-input-offset.native.js +0 -147
  358. package/src/mobile/keyboard-aware-flat-list/use-keyboard-offset.native.js +0 -87
  359. package/src/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +0 -41
  360. package/src/mobile/keyboard-aware-flat-list/use-scroll-to-section.native.js +0 -100
  361. package/src/mobile/keyboard-aware-flat-list/use-scroll.native.js +0 -100
  362. package/src/mobile/keyboard-aware-flat-list/use-text-input-caret-position.native.js +0 -36
  363. package/src/mobile/keyboard-aware-flat-list/use-text-input-offset.native.js +0 -54
  364. package/src/mobile/layout-animation/index.native.js +0 -16
  365. package/src/mobile/link-picker/index.native.js +0 -160
  366. package/src/mobile/link-picker/link-picker-results.native.js +0 -129
  367. package/src/mobile/link-picker/link-picker-screen.native.js +0 -60
  368. package/src/mobile/link-picker/styles.native.scss +0 -45
  369. package/src/mobile/link-picker/test/performance/index.native.js +0 -35
  370. package/src/mobile/link-settings/index.native.js +0 -332
  371. package/src/mobile/link-settings/link-rel.native.js +0 -10
  372. package/src/mobile/link-settings/link-settings-navigation.native.js +0 -50
  373. package/src/mobile/link-settings/link-settings-screen.native.js +0 -44
  374. package/src/mobile/link-settings/style.native.scss +0 -4
  375. package/src/mobile/link-settings/test/edit.native.js +0 -325
  376. package/src/mobile/link-settings/test/link-settings-navigation.native.js +0 -94
  377. package/src/mobile/media-edit/index.native.js +0 -125
  378. package/src/mobile/picker/index.android.js +0 -104
  379. package/src/mobile/picker/index.ios.js +0 -96
  380. package/src/mobile/picker/styles.native.scss +0 -29
  381. package/src/mobile/segmented-control/index.native.js +0 -186
  382. package/src/mobile/segmented-control/style.native.scss +0 -99
  383. package/src/mobile/utils/alignments.native.js +0 -78
  384. package/src/mobile/utils/get-px-from-css-unit.native.js +0 -329
  385. package/src/mobile/utils/index.native.js +0 -12
  386. package/src/mobile/utils/test/get-px-from-css-unit.native.js +0 -172
  387. package/src/mobile/utils/test/index.native.js +0 -134
  388. package/src/mobile/utils/use-is-floating-keyboard.native.js +0 -31
  389. package/src/mobile/utils/use-unit-converter-to-mobile.native.js +0 -90
  390. package/src/notice/index.native.js +0 -123
  391. package/src/notice/list.native.js +0 -55
  392. package/src/notice/style.native.scss +0 -60
  393. package/src/panel/actions.native.js +0 -46
  394. package/src/panel/actions.native.scss +0 -12
  395. package/src/panel/body.native.js +0 -29
  396. package/src/panel/body.native.scss +0 -11
  397. package/src/panel/bottom-separator-cover.native.js +0 -27
  398. package/src/panel/bottom-separator-cover.native.scss +0 -9
  399. package/src/private-apis.native.js +0 -13
  400. package/src/query-controls/index.native.js +0 -103
  401. package/src/radio-control/index.native.js +0 -24
  402. package/src/range-control/index.native.js +0 -73
  403. package/src/resizable-box/index.native.js +0 -32
  404. package/src/resizable-box/style.native.scss +0 -14
  405. package/src/sandbox/index.native.js +0 -392
  406. package/src/sandbox/style.native.scss +0 -7
  407. package/src/search-control/index.native.js +0 -274
  408. package/src/search-control/platform-style.android.scss +0 -57
  409. package/src/search-control/platform-style.ios.scss +0 -43
  410. package/src/search-control/style.native.scss +0 -63
  411. package/src/select-control/index.native.js +0 -41
  412. package/src/slot-fill/index.native.js +0 -25
  413. package/src/spinner/index.native.js +0 -22
  414. package/src/spinner/style.native.scss +0 -4
  415. package/src/style-provider/index.native.js +0 -3
  416. package/src/text/index.native.js +0 -13
  417. package/src/text/styles/emotion-css.native.js +0 -6
  418. package/src/text/styles/font-family.native.js +0 -1
  419. package/src/text/styles/text-mixins.native.js +0 -163
  420. package/src/text-control/index.native.js +0 -41
  421. package/src/textarea-control/index.native.js +0 -26
  422. package/src/toggle-control/index.native.js +0 -31
  423. package/src/toolbar/toolbar/style.native.scss +0 -11
  424. package/src/toolbar/toolbar/toolbar-container.native.js +0 -8
  425. package/src/toolbar/toolbar-button/toolbar-button-container.native.js +0 -8
  426. package/src/toolbar/toolbar-group/style.native.scss +0 -10
  427. package/src/toolbar/toolbar-group/toolbar-group-collapsed.native.js +0 -36
  428. package/src/toolbar/toolbar-group/toolbar-group-container.native.js +0 -26
  429. package/src/toolbar/toolbar-item/index.native.js +0 -17
  430. package/src/tooltip/index.native.js +0 -292
  431. package/src/tooltip/style.native.scss +0 -39
  432. package/src/tooltip/test/index.native.js +0 -98
  433. package/src/unit-control/index.native.js +0 -202
  434. package/src/unit-control/style.native.scss +0 -19
@@ -1,281 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { Animated, PanResponder, StyleSheet, View } from 'react-native';
5
- import Video from 'react-native-video';
6
-
7
- /**
8
- * WordPress dependencies
9
- */
10
- import {
11
- requestFocalPointPickerTooltipShown,
12
- setFocalPointPickerTooltipShown,
13
- } from '@wordpress/react-native-bridge';
14
- import { __ } from '@wordpress/i18n';
15
- import { useRef, useState, useMemo, useEffect } from '@wordpress/element';
16
- import { usePreferredColorSchemeStyle } from '@wordpress/compose';
17
-
18
- /**
19
- * Internal dependencies
20
- */
21
- import FocalPoint from './focal-point';
22
- import Tooltip from './tooltip';
23
- import styles from './style.scss';
24
- import { isVideoType } from './utils';
25
- import { clamp } from '../utils/math';
26
- import Image from '../mobile/image';
27
- import UnitControl from '../unit-control';
28
-
29
- const MIN_POSITION_VALUE = 0;
30
- const MAX_POSITION_VALUE = 100;
31
- const FOCAL_POINT_UNITS = [ { default: 50, label: '%', value: '%' } ];
32
-
33
- function FocalPointPicker( props ) {
34
- const { focalPoint, onChange, shouldEnableBottomSheetScroll, url } = props;
35
-
36
- const isVideo = isVideoType( url );
37
-
38
- const [ containerSize, setContainerSize ] = useState( null );
39
- const [ sliderKey, setSliderKey ] = useState( 0 );
40
- const [ displayPlaceholder, setDisplayPlaceholder ] = useState( true );
41
- const [ videoNaturalSize, setVideoNaturalSize ] = useState( null );
42
- const [ tooltipVisible, setTooltipVisible ] = useState( false );
43
-
44
- const locationPageOffsetX = useRef();
45
- const locationPageOffsetY = useRef();
46
- const videoRef = useRef( null );
47
-
48
- useEffect( () => {
49
- requestFocalPointPickerTooltipShown( ( tooltipShown ) => {
50
- if ( ! tooltipShown ) {
51
- setTooltipVisible( true );
52
- setFocalPointPickerTooltipShown( true );
53
- }
54
- } );
55
- }, [] );
56
-
57
- // Animated coordinates for drag handle.
58
- const pan = useRef( new Animated.ValueXY() ).current;
59
-
60
- /**
61
- * Set drag handle position anytime focal point coordinates change.
62
- * E.g. initial render, dragging range sliders.
63
- */
64
- useEffect( () => {
65
- if ( containerSize ) {
66
- pan.setValue( {
67
- x: focalPoint.x * containerSize.width,
68
- y: focalPoint.y * containerSize.height,
69
- } );
70
- }
71
- }, [ focalPoint, containerSize, pan ] );
72
-
73
- // Pan responder to manage drag handle interactivity.
74
- const panResponder = useMemo(
75
- () =>
76
- PanResponder.create( {
77
- onStartShouldSetPanResponder: () => true,
78
- onStartShouldSetPanResponderCapture: () => true,
79
- onMoveShouldSetPanResponder: () => true,
80
- onMoveShouldSetPanResponderCapture: () => true,
81
-
82
- onPanResponderGrant: ( event ) => {
83
- shouldEnableBottomSheetScroll( false );
84
- const {
85
- locationX: x,
86
- locationY: y,
87
- pageX,
88
- pageY,
89
- } = event.nativeEvent;
90
- locationPageOffsetX.current = pageX - x;
91
- locationPageOffsetY.current = pageY - y;
92
- pan.setValue( { x, y } ); // Set cursor to tap location.
93
- pan.extractOffset(); // Set offset to current value.
94
- },
95
- // Move cursor to match delta drag.
96
- onPanResponderMove: Animated.event(
97
- [ null, { dx: pan.x, dy: pan.y } ],
98
- { useNativeDriver: false }
99
- ),
100
- onPanResponderRelease: ( event ) => {
101
- shouldEnableBottomSheetScroll( true );
102
- pan.flattenOffset(); // Flatten offset into value.
103
- const { pageX, pageY } = event.nativeEvent;
104
- // Ideally, x and y below are merely locationX and locationY from the
105
- // nativeEvent. However, we are required to compute these relative
106
- // coordinates to workaround a bug affecting Android's PanResponder.
107
- // Specifically, dragging the handle outside the bounds of the image
108
- // results in inaccurate locationX and locationY coordinates to be
109
- // reported. https://github.com/facebook/react-native/issues/15290#issuecomment-435494944
110
- const x = pageX - locationPageOffsetX.current;
111
- const y = pageY - locationPageOffsetY.current;
112
- onChange( {
113
- x: clamp( x / containerSize?.width, 0, 1 ).toFixed( 2 ),
114
- y: clamp( y / containerSize?.height, 0, 1 ).toFixed(
115
- 2
116
- ),
117
- } );
118
- // Slider (child of RangeCell) is uncontrolled, so we must increment a
119
- // key to re-mount and sync the pan gesture values to the sliders
120
- // https://github.com/callstack/react-native-slider/tree/v3.0.3#value
121
- setSliderKey( ( prevState ) => prevState + 1 );
122
- },
123
- } ),
124
- [ containerSize, pan, onChange, shouldEnableBottomSheetScroll ]
125
- );
126
-
127
- const mediaBackground = usePreferredColorSchemeStyle(
128
- styles.mediaBackground,
129
- styles.mediaBackgroundDark
130
- );
131
- const imagePreviewStyles = [
132
- displayPlaceholder && styles.mediaPlaceholder,
133
- styles.image,
134
- ];
135
- const videoPreviewStyles = [
136
- {
137
- aspectRatio:
138
- videoNaturalSize &&
139
- videoNaturalSize.width / videoNaturalSize.height,
140
- // Hide Video component since it has black background while loading the source
141
- opacity: displayPlaceholder ? 0 : 1,
142
- },
143
- styles.video,
144
- displayPlaceholder && styles.mediaPlaceholder,
145
- ];
146
- const focalPointGroupStyles = [
147
- styles.focalPointGroup,
148
- {
149
- transform: [
150
- {
151
- translateX: pan.x.interpolate( {
152
- inputRange: [ 0, containerSize?.width || 0 ],
153
- outputRange: [ 0, containerSize?.width || 0 ],
154
- extrapolate: 'clamp',
155
- } ),
156
- },
157
- {
158
- translateY: pan.y.interpolate( {
159
- inputRange: [ 0, containerSize?.height || 0 ],
160
- outputRange: [ 0, containerSize?.height || 0 ],
161
- extrapolate: 'clamp',
162
- } ),
163
- },
164
- ],
165
- },
166
- ];
167
- const FOCAL_POINT_SIZE = 50;
168
- const focalPointStyles = StyleSheet.flatten( [
169
- styles.focalPoint,
170
- {
171
- height: FOCAL_POINT_SIZE,
172
- marginLeft: -( FOCAL_POINT_SIZE / 2 ),
173
- marginTop: -( FOCAL_POINT_SIZE / 2 ),
174
- width: FOCAL_POINT_SIZE,
175
- },
176
- ] );
177
-
178
- const onTooltipPress = () => setTooltipVisible( false );
179
- const onMediaLayout = ( event ) => {
180
- const { height, width } = event.nativeEvent.layout;
181
-
182
- if (
183
- width !== 0 &&
184
- height !== 0 &&
185
- ( containerSize?.width !== width ||
186
- containerSize?.height !== height )
187
- ) {
188
- setContainerSize( { width, height } );
189
- }
190
- };
191
- const onImageDataLoad = () => setDisplayPlaceholder( false );
192
- const onVideoLoad = ( event ) => {
193
- const { height, width } = event.naturalSize;
194
- setVideoNaturalSize( { height, width } );
195
- setDisplayPlaceholder( false );
196
- // Avoid invisible, paused video on Android, presumably related to
197
- // https://github.com/react-native-video/react-native-video/issues/1979
198
- videoRef?.current.seek( 0 );
199
- };
200
- const onXCoordinateChange = ( x ) =>
201
- onChange( { x: ( x / 100 ).toFixed( 2 ) } );
202
- const onYCoordinateChange = ( y ) =>
203
- onChange( { y: ( y / 100 ).toFixed( 2 ) } );
204
-
205
- return (
206
- <View style={ styles.container }>
207
- <Tooltip onPress={ onTooltipPress } visible={ tooltipVisible }>
208
- <View style={ [ styles.media, mediaBackground ] }>
209
- <View
210
- { ...panResponder.panHandlers }
211
- onLayout={ onMediaLayout }
212
- style={ styles.mediaContainer }
213
- >
214
- { ! isVideo && (
215
- <Image
216
- editButton={ false }
217
- highlightSelected={ false }
218
- isSelected={ ! displayPlaceholder }
219
- height="100%"
220
- url={ url }
221
- style={ imagePreviewStyles }
222
- onImageDataLoad={ onImageDataLoad }
223
- />
224
- ) }
225
- { isVideo && (
226
- <Video
227
- muted
228
- paused
229
- disableFocus
230
- onLoad={ onVideoLoad }
231
- ref={ videoRef }
232
- resizeMode="contain"
233
- source={ { uri: url } }
234
- style={ videoPreviewStyles }
235
- />
236
- ) }
237
- { ! displayPlaceholder && (
238
- <Animated.View
239
- pointerEvents="none"
240
- style={ focalPointGroupStyles }
241
- >
242
- <Tooltip.Label
243
- text={ __( 'Drag to adjust focal point' ) }
244
- yOffset={ -( FOCAL_POINT_SIZE / 2 ) }
245
- />
246
- <FocalPoint
247
- height={ focalPointStyles.height }
248
- style={ focalPointStyles }
249
- testID="focal-point-picker-handle"
250
- width={ focalPointStyles.width }
251
- />
252
- </Animated.View>
253
- ) }
254
- </View>
255
- </View>
256
- <UnitControl
257
- key={ `xAxis-${ sliderKey }` }
258
- label={ __( 'X-Axis Position' ) }
259
- max={ MAX_POSITION_VALUE }
260
- min={ MIN_POSITION_VALUE }
261
- onChange={ onXCoordinateChange }
262
- unit="%"
263
- units={ FOCAL_POINT_UNITS }
264
- value={ Math.round( focalPoint.x * 100 ) }
265
- />
266
- <UnitControl
267
- key={ `yAxis-${ sliderKey }` }
268
- label={ __( 'Y-Axis Position' ) }
269
- max={ MAX_POSITION_VALUE }
270
- min={ MIN_POSITION_VALUE }
271
- onChange={ onYCoordinateChange }
272
- unit="%"
273
- units={ FOCAL_POINT_UNITS }
274
- value={ Math.round( focalPoint.y * 100 ) }
275
- />
276
- </Tooltip>
277
- </View>
278
- );
279
- }
280
-
281
- export default FocalPointPicker;
@@ -1,144 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { Animated, Easing, PanResponder, Text, View } from 'react-native';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import {
10
- createContext,
11
- useEffect,
12
- useRef,
13
- useState,
14
- useContext,
15
- } from '@wordpress/element';
16
-
17
- /**
18
- * Internal dependencies
19
- */
20
- import styles from './style.scss';
21
-
22
- const TooltipContext = createContext();
23
-
24
- function Tooltip( { children, onPress, style, visible } ) {
25
- const panResponder = useRef(
26
- PanResponder.create( {
27
- /**
28
- * To allow dimissing the tooltip on press while also avoiding blocking
29
- * interactivity within the child context, we place this `onPress` side
30
- * effect within the `onStartShouldSetPanResponderCapture` callback.
31
- *
32
- * This is a bit unorthodox, but may be the simplest approach to achieving
33
- * this outcome. This is effectively a gesture responder that never
34
- * becomes the controlling responder. https://bit.ly/2J3ugKF
35
- */
36
- onStartShouldSetPanResponderCapture: () => {
37
- if ( onPress ) {
38
- onPress();
39
- }
40
- return false;
41
- },
42
- } )
43
- ).current;
44
-
45
- return (
46
- <TooltipContext.Provider value={ visible }>
47
- <View
48
- { ...( visible ? panResponder.panHandlers : {} ) }
49
- style={ style }
50
- >
51
- { children }
52
- </View>
53
- </TooltipContext.Provider>
54
- );
55
- }
56
-
57
- function Label( { align = 'center', text, xOffset = 0, yOffset = 0 } ) {
58
- const animationValue = useRef( new Animated.Value( 0 ) ).current;
59
- const [ dimensions, setDimensions ] = useState( null );
60
- const visible = useContext( TooltipContext );
61
-
62
- if ( typeof visible === 'undefined' ) {
63
- throw new Error(
64
- 'Tooltip.Label cannot be rendered outside of the Tooltip component'
65
- );
66
- }
67
-
68
- useEffect( () => {
69
- const startAnimation = () => {
70
- Animated.timing( animationValue, {
71
- toValue: visible ? 1 : 0,
72
- duration: visible ? 300 : 150,
73
- useNativeDriver: true,
74
- delay: visible ? 500 : 0,
75
- easing: Easing.out( Easing.quad ),
76
- } ).start();
77
- };
78
- startAnimation();
79
- }, [ animationValue, visible ] );
80
-
81
- // Transforms rely upon onLayout to enable custom offsets additions.
82
- let tooltipTransforms;
83
- if ( dimensions ) {
84
- tooltipTransforms = [
85
- {
86
- translateX:
87
- ( align === 'center' ? -dimensions.width / 2 : 0 ) +
88
- xOffset,
89
- },
90
- { translateY: -dimensions.height + yOffset },
91
- ];
92
- }
93
-
94
- const tooltipStyles = [
95
- styles.tooltip,
96
- {
97
- shadowColor: styles.tooltipShadow?.color,
98
- shadowOffset: {
99
- width: 0,
100
- height: 2,
101
- },
102
- shadowOpacity: 0.25,
103
- shadowRadius: 2,
104
- elevation: 2,
105
- transform: tooltipTransforms,
106
- },
107
- align === 'left' && styles.tooltipLeftAlign,
108
- ];
109
- const arrowStyles = [
110
- styles.arrow,
111
- align === 'left' && styles.arrowLeftAlign,
112
- ];
113
-
114
- return (
115
- <Animated.View
116
- style={ {
117
- opacity: animationValue,
118
- transform: [
119
- {
120
- translateY: animationValue.interpolate( {
121
- inputRange: [ 0, 1 ],
122
- outputRange: [ visible ? 4 : -8, -8 ],
123
- } ),
124
- },
125
- ],
126
- } }
127
- >
128
- <View
129
- onLayout={ ( { nativeEvent } ) => {
130
- const { height, width } = nativeEvent.layout;
131
- setDimensions( { height, width } );
132
- } }
133
- style={ tooltipStyles }
134
- >
135
- <Text style={ styles.text }>{ text }</Text>
136
- <View style={ arrowStyles } />
137
- </View>
138
- </Animated.View>
139
- );
140
- }
141
-
142
- Tooltip.Label = Label;
143
-
144
- export default Tooltip;
@@ -1,42 +0,0 @@
1
- $tooltipColor: #121212;
2
- $tooltipArrowSize: 6px;
3
- $tooltipArrowOffset: -($tooltipArrowSize - 1);
4
-
5
- .tooltip {
6
- background-color: $tooltipColor;
7
- border-radius: 4px;
8
- left: 50%;
9
- position: absolute;
10
- top: $tooltipArrowOffset;
11
- z-index: 1;
12
- }
13
-
14
- .tooltipLeftAlign {
15
- left: 0;
16
- }
17
-
18
- .tooltipShadow {
19
- color: $black;
20
- }
21
-
22
- .text {
23
- color: $white;
24
- padding: 12px 16px;
25
- }
26
-
27
- .arrow {
28
- border-color: $tooltipColor transparent transparent transparent;
29
- border-style: solid;
30
- border-width: $tooltipArrowSize $tooltipArrowSize 0 $tooltipArrowSize;
31
- bottom: $tooltipArrowOffset;
32
- height: 0;
33
- left: 50%;
34
- margin-left: -$tooltipArrowSize;
35
- position: absolute;
36
- top: 100%;
37
- width: 0;
38
- }
39
-
40
- .arrowLeftAlign {
41
- left: 16px;
42
- }
@@ -1,190 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { View, useWindowDimensions } from 'react-native';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { useNavigation } from '@react-navigation/native';
10
- import { useState } from '@wordpress/element';
11
- import { Icon, chevronRight, check } from '@wordpress/icons';
12
- import { __, _x, sprintf } from '@wordpress/i18n';
13
-
14
- /**
15
- * Internal dependencies
16
- */
17
- import { default as getPxFromCssUnit } from '../mobile/utils/get-px-from-css-unit';
18
- import { default as UnitControl, useCustomUnits } from '../unit-control';
19
- import styles from './style.scss';
20
- import BottomSheet from '../mobile/bottom-sheet';
21
-
22
- const DEFAULT_FONT_SIZE = 16;
23
-
24
- function FontSizePicker( {
25
- fontSizes = [],
26
- disableCustomFontSizes = false,
27
- onChange,
28
- value: selectedValue,
29
- } ) {
30
- const [ showSubSheet, setShowSubSheet ] = useState( false );
31
- const navigation = useNavigation();
32
-
33
- const { height, width } = useWindowDimensions();
34
- const cssUnitOptions = { height, width, fontSize: DEFAULT_FONT_SIZE };
35
- // We need to always convert to px units because the selected value
36
- // could be coming from the web where it could be stored as a different unit.
37
- const selectedPxValue = getPxFromCssUnit( selectedValue, cssUnitOptions );
38
-
39
- const onChangeValue = ( value ) => {
40
- return () => {
41
- goBack();
42
- onChange( value );
43
- };
44
- };
45
-
46
- const selectedOption = fontSizes.find(
47
- ( option ) => option.sizePx === selectedPxValue
48
- ) ?? { name: 'Custom' };
49
-
50
- const goBack = () => {
51
- setShowSubSheet( false );
52
- navigation.goBack();
53
- };
54
-
55
- const openSubSheet = () => {
56
- navigation.navigate( BottomSheet.SubSheet.screenName );
57
- setShowSubSheet( true );
58
- };
59
- const label = __( 'Font Size' );
60
-
61
- const units = useCustomUnits( {
62
- availableUnits: [ 'px', 'em', 'rem', 'vw', 'vh' ],
63
- } );
64
-
65
- const accessibilityLabel = sprintf(
66
- // translators: %s: Font size name e.g. Small
67
- __( 'Font Size, %s' ),
68
- selectedOption.name
69
- );
70
-
71
- return (
72
- <BottomSheet.SubSheet
73
- navigationButton={
74
- <BottomSheet.Cell
75
- label={ label }
76
- separatorType="none"
77
- value={
78
- selectedValue
79
- ? sprintf(
80
- // translators: 1: Select control font size name e.g. Small. 2: Select control font size e.g. 12px
81
- _x( '%1$s (%2$s)', 'font size' ),
82
- selectedOption.name,
83
- selectedPxValue
84
- )
85
- : __( 'Default' )
86
- }
87
- onPress={ openSubSheet }
88
- accessibilityRole="button"
89
- accessibilityLabel={ accessibilityLabel }
90
- accessibilityHint={ sprintf(
91
- // translators: %s: Select control button label e.g. "Button width"
92
- __( 'Navigates to select %s' ),
93
- selectedOption.name
94
- ) }
95
- >
96
- <Icon icon={ chevronRight }></Icon>
97
- </BottomSheet.Cell>
98
- }
99
- showSheet={ showSubSheet }
100
- >
101
- <>
102
- <BottomSheet.NavBar>
103
- <BottomSheet.NavBar.BackButton onPress={ goBack } />
104
- <BottomSheet.NavBar.Heading>
105
- { label }
106
- </BottomSheet.NavBar.Heading>
107
- </BottomSheet.NavBar>
108
- <View style={ styles[ 'components-font-size-picker' ] }>
109
- <BottomSheet.Cell
110
- customActionButton
111
- separatorType="none"
112
- label={ __( 'Default' ) }
113
- onPress={ onChangeValue( undefined ) }
114
- leftAlign
115
- key="default"
116
- accessibilityRole="button"
117
- accessibilityLabel={ __( 'Selected: Default' ) }
118
- accessibilityHint={ __(
119
- 'Double tap to select default font size'
120
- ) }
121
- >
122
- <View>
123
- { selectedValue === undefined && (
124
- <Icon icon={ check }></Icon>
125
- ) }
126
- </View>
127
- </BottomSheet.Cell>
128
- { fontSizes.map( ( item, index ) => {
129
- // Only display a choice that we can currently select.
130
- if ( ! parseFloat( item.sizePx ) ) {
131
- return null;
132
- }
133
- return (
134
- <BottomSheet.Cell
135
- customActionButton
136
- separatorType="none"
137
- label={ item.name }
138
- subLabel={ item.sizePx }
139
- onPress={ onChangeValue( item.sizePx ) }
140
- leftAlign
141
- key={ index }
142
- accessibilityRole="button"
143
- accessibilityLabel={
144
- item.sizePx === selectedValue
145
- ? sprintf(
146
- // translators: %s: The selected option.
147
- __( 'Selected: %s' ),
148
- item.name
149
- )
150
- : item.name
151
- }
152
- accessibilityHint={ __(
153
- 'Double tap to select font size'
154
- ) }
155
- >
156
- <View>
157
- { item.sizePx === selectedPxValue && (
158
- <Icon icon={ check }></Icon>
159
- ) }
160
- </View>
161
- </BottomSheet.Cell>
162
- );
163
- } ) }
164
- { ! disableCustomFontSizes && (
165
- <UnitControl
166
- label={ __( 'Custom' ) }
167
- min={ 0 }
168
- max={ 200 }
169
- step={ 1 }
170
- value={ selectedValue }
171
- onChange={ ( nextSize ) => {
172
- if (
173
- 0 === parseFloat( nextSize ) ||
174
- ! nextSize
175
- ) {
176
- onChange( undefined );
177
- } else {
178
- onChange( nextSize );
179
- }
180
- } }
181
- units={ units }
182
- />
183
- ) }
184
- </View>
185
- </>
186
- </BottomSheet.SubSheet>
187
- );
188
- }
189
-
190
- export default FontSizePicker;
@@ -1,6 +0,0 @@
1
- .components-font-size-picker {
2
- padding: 0 $block-edge-to-content;
3
- }
4
- .components-font-size-picker__font-size {
5
- font-size: 11px;
6
- }
@@ -1,14 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { memo } from '@wordpress/element';
5
- /**
6
- * Internal dependencies
7
- */
8
- import FooterMessageCell from '../mobile/bottom-sheet/footer-message-cell';
9
-
10
- function FooterMessageControl( { ...props } ) {
11
- return <FooterMessageCell { ...props } />;
12
- }
13
-
14
- export default memo( FooterMessageControl );