@wordpress/components 35.0.0 → 35.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/CHANGELOG.md +20 -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/color-palette/index.cjs +3 -0
  7. package/build/color-palette/index.cjs.map +2 -2
  8. package/build/custom-gradient-picker/gradient-bar/index.cjs.map +2 -2
  9. package/build/draggable/index.cjs +1 -1
  10. package/build/draggable/index.cjs.map +2 -2
  11. package/build/navigable-container/container.cjs +15 -21
  12. package/build/navigable-container/container.cjs.map +2 -2
  13. package/build/unit-control/utils.cjs +33 -35
  14. package/build/unit-control/utils.cjs.map +2 -2
  15. package/build-module/alignment-matrix-control/cell.mjs +1 -1
  16. package/build-module/alignment-matrix-control/cell.mjs.map +2 -2
  17. package/build-module/alignment-matrix-control/index.mjs +1 -1
  18. package/build-module/alignment-matrix-control/index.mjs.map +2 -2
  19. package/build-module/color-palette/index.mjs +3 -0
  20. package/build-module/color-palette/index.mjs.map +2 -2
  21. package/build-module/custom-gradient-picker/gradient-bar/index.mjs.map +2 -2
  22. package/build-module/draggable/index.mjs +1 -1
  23. package/build-module/draggable/index.mjs.map +2 -2
  24. package/build-module/navigable-container/container.mjs +16 -22
  25. package/build-module/navigable-container/container.mjs.map +2 -2
  26. package/build-module/unit-control/utils.mjs +33 -35
  27. package/build-module/unit-control/utils.mjs.map +2 -2
  28. package/build-style/style-rtl.css +41 -10
  29. package/build-style/style.css +41 -10
  30. package/build-types/card/context.d.ts +3 -0
  31. package/build-types/card/context.d.ts.map +1 -0
  32. package/build-types/color-palette/index.d.ts.map +1 -1
  33. package/build-types/custom-gradient-picker/gradient-bar/index.d.ts.map +1 -1
  34. package/build-types/date-time/date/index.d.ts +23 -0
  35. package/build-types/date-time/date/index.d.ts.map +1 -0
  36. package/build-types/date-time/date/styles.d.ts +45 -0
  37. package/build-types/date-time/date/styles.d.ts.map +1 -0
  38. package/build-types/date-time/date/test/index.d.ts +2 -0
  39. package/build-types/date-time/date/test/index.d.ts.map +1 -0
  40. package/build-types/date-time/date/test/use-lilius.d.ts +2 -0
  41. package/build-types/date-time/date/test/use-lilius.d.ts.map +1 -0
  42. package/build-types/date-time/date/use-lilius/index.d.ts +169 -0
  43. package/build-types/date-time/date/use-lilius/index.d.ts.map +1 -0
  44. package/build-types/date-time/time/index.d.ts +27 -0
  45. package/build-types/date-time/time/index.d.ts.map +1 -0
  46. package/build-types/date-time/time/styles.d.ts +93 -0
  47. package/build-types/date-time/time/styles.d.ts.map +1 -0
  48. package/build-types/date-time/time/test/index.d.ts +2 -0
  49. package/build-types/date-time/time/test/index.d.ts.map +1 -0
  50. package/build-types/date-time/time/time-input/index.d.ts +4 -0
  51. package/build-types/date-time/time/time-input/index.d.ts.map +1 -0
  52. package/build-types/date-time/time/time-input/test/index.d.ts +2 -0
  53. package/build-types/date-time/time/time-input/test/index.d.ts.map +1 -0
  54. package/build-types/date-time/time/timezone.d.ts +7 -0
  55. package/build-types/date-time/time/timezone.d.ts.map +1 -0
  56. package/build-types/navigable-container/container.d.ts.map +1 -1
  57. package/build-types/navigation/back-button/index.d.ts +7 -0
  58. package/build-types/navigation/back-button/index.d.ts.map +1 -0
  59. package/build-types/navigation/constants.d.ts +3 -0
  60. package/build-types/navigation/constants.d.ts.map +1 -0
  61. package/build-types/navigation/context.d.ts +4 -0
  62. package/build-types/navigation/context.d.ts.map +1 -0
  63. package/build-types/navigation/group/context.d.ts +7 -0
  64. package/build-types/navigation/group/context.d.ts.map +1 -0
  65. package/build-types/navigation/group/index.d.ts +7 -0
  66. package/build-types/navigation/group/index.d.ts.map +1 -0
  67. package/build-types/navigation/index.d.ts +46 -0
  68. package/build-types/navigation/index.d.ts.map +1 -0
  69. package/build-types/navigation/item/base-content.d.ts +3 -0
  70. package/build-types/navigation/item/base-content.d.ts.map +1 -0
  71. package/build-types/navigation/item/base.d.ts +3 -0
  72. package/build-types/navigation/item/base.d.ts.map +1 -0
  73. package/build-types/navigation/item/index.d.ts +7 -0
  74. package/build-types/navigation/item/index.d.ts.map +1 -0
  75. package/build-types/navigation/item/use-navigation-tree-item.d.ts +3 -0
  76. package/build-types/navigation/item/use-navigation-tree-item.d.ts.map +1 -0
  77. package/build-types/navigation/menu/context.d.ts +7 -0
  78. package/build-types/navigation/menu/context.d.ts.map +1 -0
  79. package/build-types/navigation/menu/index.d.ts +7 -0
  80. package/build-types/navigation/menu/index.d.ts.map +1 -0
  81. package/build-types/navigation/menu/menu-title-search.d.ts +3 -0
  82. package/build-types/navigation/menu/menu-title-search.d.ts.map +1 -0
  83. package/build-types/navigation/menu/menu-title.d.ts +3 -0
  84. package/build-types/navigation/menu/menu-title.d.ts.map +1 -0
  85. package/build-types/navigation/menu/search-no-results-found.d.ts +3 -0
  86. package/build-types/navigation/menu/search-no-results-found.d.ts.map +1 -0
  87. package/build-types/navigation/menu/use-navigation-tree-menu.d.ts +3 -0
  88. package/build-types/navigation/menu/use-navigation-tree-menu.d.ts.map +1 -0
  89. package/build-types/navigation/stories/index.story.d.ts +23 -0
  90. package/build-types/navigation/stories/index.story.d.ts.map +1 -0
  91. package/build-types/navigation/stories/utils/controlled-state.d.ts +7 -0
  92. package/build-types/navigation/stories/utils/controlled-state.d.ts.map +1 -0
  93. package/build-types/navigation/stories/utils/default.d.ts +10 -0
  94. package/build-types/navigation/stories/utils/default.d.ts.map +1 -0
  95. package/build-types/navigation/stories/utils/group.d.ts +10 -0
  96. package/build-types/navigation/stories/utils/group.d.ts.map +1 -0
  97. package/build-types/navigation/stories/utils/hide-if-empty.d.ts +10 -0
  98. package/build-types/navigation/stories/utils/hide-if-empty.d.ts.map +1 -0
  99. package/build-types/navigation/stories/utils/more-examples.d.ts +10 -0
  100. package/build-types/navigation/stories/utils/more-examples.d.ts.map +1 -0
  101. package/build-types/navigation/stories/utils/search.d.ts +10 -0
  102. package/build-types/navigation/stories/utils/search.d.ts.map +1 -0
  103. package/build-types/navigation/styles/navigation-styles.d.ts +55 -0
  104. package/build-types/navigation/styles/navigation-styles.d.ts.map +1 -0
  105. package/build-types/navigation/test/index.d.ts +2 -0
  106. package/build-types/navigation/test/index.d.ts.map +1 -0
  107. package/build-types/navigation/types.d.ts +266 -0
  108. package/build-types/navigation/types.d.ts.map +1 -0
  109. package/build-types/navigation/use-create-navigation-tree.d.ts +15 -0
  110. package/build-types/navigation/use-create-navigation-tree.d.ts.map +1 -0
  111. package/build-types/navigation/use-navigation-tree-nodes.d.ts +10 -0
  112. package/build-types/navigation/use-navigation-tree-nodes.d.ts.map +1 -0
  113. package/build-types/navigation/utils.d.ts +3 -0
  114. package/build-types/navigation/utils.d.ts.map +1 -0
  115. package/build-types/unit-control/utils.d.ts.map +1 -1
  116. package/build-types/validated-form-controls/components/combobox-control.d.ts +2 -2
  117. package/build-types/visually-hidden/test/index.d.ts +2 -0
  118. package/build-types/visually-hidden/test/index.d.ts.map +1 -0
  119. package/package.json +34 -32
  120. package/src/card/card/README.md +4 -4
  121. package/src/checkbox-control/README.md +1 -1
  122. package/src/clipboard-button/README.md +4 -4
  123. package/src/color-palette/index.tsx +5 -0
  124. package/src/color-palette/test/index.tsx +30 -0
  125. package/src/combobox-control/README.md +1 -1
  126. package/src/confirm-dialog/README.md +1 -1
  127. package/src/custom-gradient-picker/gradient-bar/index.tsx +1 -1
  128. package/src/flex/flex/README.md +1 -1
  129. package/src/navigable-container/container.tsx +22 -30
  130. package/src/popover/README.md +1 -1
  131. package/src/scrollable/README.md +1 -1
  132. package/src/tooltip/style.scss +1 -1
  133. package/src/unit-control/utils.ts +33 -52
  134. package/build/mobile/image/constants.cjs +0 -34
  135. package/build/mobile/image/constants.cjs.map +0 -7
  136. package/build-module/mobile/image/constants.mjs +0 -9
  137. package/build-module/mobile/image/constants.mjs.map +0 -7
  138. package/src/autocomplete/autocompleter-ui.native.js +0 -211
  139. package/src/autocomplete/background-view.android.js +0 -25
  140. package/src/autocomplete/background-view.ios.js +0 -23
  141. package/src/autocomplete/style.android.scss +0 -7
  142. package/src/autocomplete/style.native.scss +0 -74
  143. package/src/base-control/index.native.js +0 -14
  144. package/src/button/index.native.js +0 -236
  145. package/src/button/style.native.scss +0 -9
  146. package/src/color-control/index.native.js +0 -24
  147. package/src/color-indicator/index.native.js +0 -80
  148. package/src/color-indicator/style.native.scss +0 -51
  149. package/src/color-palette/index.native.js +0 -360
  150. package/src/color-palette/style.native.scss +0 -49
  151. package/src/color-picker/hsv-color-picker.native.js +0 -88
  152. package/src/color-picker/hue-picker.native.js +0 -198
  153. package/src/color-picker/index.native.js +0 -215
  154. package/src/color-picker/saturation-picker.native.js +0 -167
  155. package/src/color-picker/style.native.scss +0 -87
  156. package/src/custom-gradient-picker/index.native.js +0 -110
  157. package/src/custom-gradient-picker/style.native.scss +0 -3
  158. package/src/dashicon/index.native.js +0 -18
  159. package/src/disabled/index.native.js +0 -10
  160. package/src/draggable/index.native.js +0 -234
  161. package/src/draggable/style.native.scss +0 -3
  162. package/src/draggable/test/index.native.js +0 -138
  163. package/src/dropdown/index.native.js +0 -59
  164. package/src/dropdown-menu/index.native.js +0 -152
  165. package/src/external-link/index.native.js +0 -25
  166. package/src/focal-point-picker/focal-point.native.js +0 -30
  167. package/src/focal-point-picker/index.native.js +0 -281
  168. package/src/focal-point-picker/tooltip/index.native.js +0 -144
  169. package/src/focal-point-picker/tooltip/style.native.scss +0 -42
  170. package/src/font-size-picker/index.native.js +0 -190
  171. package/src/font-size-picker/style.native.scss +0 -6
  172. package/src/footer-message-control/index.native.js +0 -14
  173. package/src/higher-order/with-focus-outside/index.native.js +0 -38
  174. package/src/index.native.js +0 -134
  175. package/src/keyboard-shortcuts/index.native.js +0 -2
  176. package/src/mobile/README.md +0 -3
  177. package/src/mobile/autocompletion-items.native.js +0 -11
  178. package/src/mobile/badge/README.md +0 -31
  179. package/src/mobile/badge/index.native.js +0 -27
  180. package/src/mobile/badge/style.scss +0 -18
  181. package/src/mobile/bottom-sheet/borderStyles.android.scss +0 -8
  182. package/src/mobile/bottom-sheet/borderStyles.ios.scss +0 -9
  183. package/src/mobile/bottom-sheet/bottom-sheet-context.native.js +0 -40
  184. package/src/mobile/bottom-sheet/bottom-sheet-navigation/README.md +0 -101
  185. package/src/mobile/bottom-sheet/bottom-sheet-navigation/bottom-sheet-navigation-context.native.js +0 -16
  186. package/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-container.native.js +0 -193
  187. package/src/mobile/bottom-sheet/bottom-sheet-navigation/navigation-screen.native.js +0 -146
  188. package/src/mobile/bottom-sheet/bottom-sheet-navigation/styles.native.scss +0 -11
  189. package/src/mobile/bottom-sheet/bottom-sheet-navigation/test/navigation-container.native.js +0 -197
  190. package/src/mobile/bottom-sheet/button.native.js +0 -19
  191. package/src/mobile/bottom-sheet/cell.native.js +0 -464
  192. package/src/mobile/bottom-sheet/cellStyles.android.scss +0 -15
  193. package/src/mobile/bottom-sheet/cellStyles.ios.scss +0 -19
  194. package/src/mobile/bottom-sheet/chevron-back.native.js +0 -18
  195. package/src/mobile/bottom-sheet/color-cell.native.js +0 -35
  196. package/src/mobile/bottom-sheet/cycle-picker-cell.native.js +0 -31
  197. package/src/mobile/bottom-sheet/footer-message-cell.native.js +0 -23
  198. package/src/mobile/bottom-sheet/footer-message-link/README.md +0 -37
  199. package/src/mobile/bottom-sheet/footer-message-link/footer-message-link.native.js +0 -26
  200. package/src/mobile/bottom-sheet/footer-message-link/styles.native.scss +0 -7
  201. package/src/mobile/bottom-sheet/index.native.js +0 -646
  202. package/src/mobile/bottom-sheet/keyboard-avoiding-view.native.js +0 -125
  203. package/src/mobile/bottom-sheet/link-cell.native.js +0 -35
  204. package/src/mobile/bottom-sheet/link-suggestion-item-cell.native.js +0 -92
  205. package/src/mobile/bottom-sheet/link-suggestion-styles.native.scss +0 -27
  206. package/src/mobile/bottom-sheet/lock-icon/index.native.js +0 -19
  207. package/src/mobile/bottom-sheet/lock-icon/styles.native.scss +0 -8
  208. package/src/mobile/bottom-sheet/nav-bar/README.md +0 -63
  209. package/src/mobile/bottom-sheet/nav-bar/action-button.native.js +0 -30
  210. package/src/mobile/bottom-sheet/nav-bar/apply-button.native.js +0 -53
  211. package/src/mobile/bottom-sheet/nav-bar/back-button.native.js +0 -94
  212. package/src/mobile/bottom-sheet/nav-bar/heading.native.js +0 -33
  213. package/src/mobile/bottom-sheet/nav-bar/index.native.js +0 -23
  214. package/src/mobile/bottom-sheet/nav-bar/styles.native.scss +0 -69
  215. package/src/mobile/bottom-sheet/picker-cell.native.js +0 -40
  216. package/src/mobile/bottom-sheet/radio-cell.native.js +0 -39
  217. package/src/mobile/bottom-sheet/range-cell.native.js +0 -274
  218. package/src/mobile/bottom-sheet/range-cell.native.scss +0 -40
  219. package/src/mobile/bottom-sheet/range-text-input.native.js +0 -248
  220. package/src/mobile/bottom-sheet/ripple.native.js +0 -83
  221. package/src/mobile/bottom-sheet/ripple.native.scss +0 -11
  222. package/src/mobile/bottom-sheet/stepper-cell/index.native.js +0 -264
  223. package/src/mobile/bottom-sheet/stepper-cell/stepper.android.js +0 -78
  224. package/src/mobile/bottom-sheet/stepper-cell/stepper.ios.js +0 -64
  225. package/src/mobile/bottom-sheet/stepper-cell/style.native.scss +0 -89
  226. package/src/mobile/bottom-sheet/styles.native.scss +0 -333
  227. package/src/mobile/bottom-sheet/sub-sheet/README.md +0 -90
  228. package/src/mobile/bottom-sheet/sub-sheet/index.native.js +0 -49
  229. package/src/mobile/bottom-sheet/switch-cell.native.js +0 -75
  230. package/src/mobile/bottom-sheet/test/index.native.js +0 -24
  231. package/src/mobile/bottom-sheet/test/range-cell.native.js +0 -73
  232. package/src/mobile/bottom-sheet-select-control/README.md +0 -97
  233. package/src/mobile/bottom-sheet-select-control/index.native.js +0 -124
  234. package/src/mobile/bottom-sheet-select-control/style.native.scss +0 -3
  235. package/src/mobile/bottom-sheet-text-control/README.md +0 -98
  236. package/src/mobile/bottom-sheet-text-control/index.native.js +0 -104
  237. package/src/mobile/bottom-sheet-text-control/styles.scss +0 -25
  238. package/src/mobile/clipboard/index.native.js +0 -18
  239. package/src/mobile/color-settings/gradient-picker-screen.native.js +0 -37
  240. package/src/mobile/color-settings/index.native.js +0 -88
  241. package/src/mobile/color-settings/palette.screen.native.js +0 -232
  242. package/src/mobile/color-settings/picker-screen.native.js +0 -60
  243. package/src/mobile/color-settings/style.native.scss +0 -62
  244. package/src/mobile/color-settings/utils.native.js +0 -36
  245. package/src/mobile/cycle-select-control/README.md +0 -3
  246. package/src/mobile/cycle-select-control/index.native.js +0 -39
  247. package/src/mobile/dashicons/index.native.js +0 -22
  248. package/src/mobile/focal-point-settings-panel/index.native.js +0 -84
  249. package/src/mobile/focal-point-settings-panel/styles.native.scss +0 -3
  250. package/src/mobile/gradient/index.native.js +0 -188
  251. package/src/mobile/gradient/style.native.scss +0 -8
  252. package/src/mobile/gradient/test/index.native.js +0 -114
  253. package/src/mobile/gridicons/index.native.js +0 -39
  254. package/src/mobile/html-text-input/index.native.js +0 -169
  255. package/src/mobile/html-text-input/style.android.scss +0 -8
  256. package/src/mobile/html-text-input/style.ios.scss +0 -10
  257. package/src/mobile/html-text-input/style.scss +0 -45
  258. package/src/mobile/html-text-input/test/__snapshots__/index.native.js.snap +0 -48
  259. package/src/mobile/html-text-input/test/index.native.js +0 -118
  260. package/src/mobile/image/constants.js +0 -1
  261. package/src/mobile/image/icon-customize.native.js +0 -10
  262. package/src/mobile/image/icon-retry.native.js +0 -11
  263. package/src/mobile/image/image-editing-button.native.js +0 -63
  264. package/src/mobile/image/index.native.js +0 -401
  265. package/src/mobile/image/style.native.scss +0 -179
  266. package/src/mobile/image/utils/index.native.js +0 -58
  267. package/src/mobile/keyboard-avoiding-view/index.android.js +0 -8
  268. package/src/mobile/keyboard-avoiding-view/index.ios.js +0 -143
  269. package/src/mobile/keyboard-avoiding-view/styles.native.scss +0 -9
  270. package/src/mobile/keyboard-aware-flat-list/index.android.js +0 -81
  271. package/src/mobile/keyboard-aware-flat-list/index.ios.js +0 -147
  272. package/src/mobile/keyboard-aware-flat-list/shared.native.js +0 -26
  273. package/src/mobile/keyboard-aware-flat-list/styles.native.scss +0 -8
  274. package/src/mobile/keyboard-aware-flat-list/test/use-keyboard-offset.native.js +0 -203
  275. package/src/mobile/keyboard-aware-flat-list/test/use-scroll-to-section.native.js +0 -142
  276. package/src/mobile/keyboard-aware-flat-list/test/use-scroll.native.js +0 -71
  277. package/src/mobile/keyboard-aware-flat-list/test/use-text-input-caret-position.native.js +0 -82
  278. package/src/mobile/keyboard-aware-flat-list/test/use-text-input-offset.native.js +0 -147
  279. package/src/mobile/keyboard-aware-flat-list/use-keyboard-offset.native.js +0 -87
  280. package/src/mobile/keyboard-aware-flat-list/use-scroll-to-element.native.js +0 -41
  281. package/src/mobile/keyboard-aware-flat-list/use-scroll-to-section.native.js +0 -100
  282. package/src/mobile/keyboard-aware-flat-list/use-scroll.native.js +0 -100
  283. package/src/mobile/keyboard-aware-flat-list/use-text-input-caret-position.native.js +0 -36
  284. package/src/mobile/keyboard-aware-flat-list/use-text-input-offset.native.js +0 -54
  285. package/src/mobile/layout-animation/index.native.js +0 -16
  286. package/src/mobile/link-picker/index.native.js +0 -160
  287. package/src/mobile/link-picker/link-picker-results.native.js +0 -129
  288. package/src/mobile/link-picker/link-picker-screen.native.js +0 -60
  289. package/src/mobile/link-picker/styles.native.scss +0 -45
  290. package/src/mobile/link-picker/test/performance/index.native.js +0 -35
  291. package/src/mobile/link-settings/index.native.js +0 -332
  292. package/src/mobile/link-settings/link-rel.native.js +0 -10
  293. package/src/mobile/link-settings/link-settings-navigation.native.js +0 -50
  294. package/src/mobile/link-settings/link-settings-screen.native.js +0 -44
  295. package/src/mobile/link-settings/style.native.scss +0 -4
  296. package/src/mobile/link-settings/test/edit.native.js +0 -325
  297. package/src/mobile/link-settings/test/link-settings-navigation.native.js +0 -94
  298. package/src/mobile/media-edit/index.native.js +0 -125
  299. package/src/mobile/picker/index.android.js +0 -104
  300. package/src/mobile/picker/index.ios.js +0 -96
  301. package/src/mobile/picker/styles.native.scss +0 -29
  302. package/src/mobile/segmented-control/index.native.js +0 -186
  303. package/src/mobile/segmented-control/style.native.scss +0 -99
  304. package/src/mobile/utils/alignments.native.js +0 -78
  305. package/src/mobile/utils/get-px-from-css-unit.native.js +0 -329
  306. package/src/mobile/utils/index.native.js +0 -12
  307. package/src/mobile/utils/test/get-px-from-css-unit.native.js +0 -172
  308. package/src/mobile/utils/test/index.native.js +0 -134
  309. package/src/mobile/utils/use-is-floating-keyboard.native.js +0 -31
  310. package/src/mobile/utils/use-unit-converter-to-mobile.native.js +0 -90
  311. package/src/notice/index.native.js +0 -123
  312. package/src/notice/list.native.js +0 -55
  313. package/src/notice/style.native.scss +0 -60
  314. package/src/panel/actions.native.js +0 -46
  315. package/src/panel/actions.native.scss +0 -12
  316. package/src/panel/body.native.js +0 -29
  317. package/src/panel/body.native.scss +0 -11
  318. package/src/panel/bottom-separator-cover.native.js +0 -27
  319. package/src/panel/bottom-separator-cover.native.scss +0 -9
  320. package/src/private-apis.native.js +0 -13
  321. package/src/query-controls/index.native.js +0 -103
  322. package/src/radio-control/index.native.js +0 -24
  323. package/src/range-control/index.native.js +0 -73
  324. package/src/resizable-box/index.native.js +0 -32
  325. package/src/resizable-box/style.native.scss +0 -14
  326. package/src/sandbox/index.native.js +0 -392
  327. package/src/sandbox/style.native.scss +0 -7
  328. package/src/search-control/index.native.js +0 -274
  329. package/src/search-control/platform-style.android.scss +0 -57
  330. package/src/search-control/platform-style.ios.scss +0 -43
  331. package/src/search-control/style.native.scss +0 -63
  332. package/src/select-control/index.native.js +0 -41
  333. package/src/slot-fill/index.native.js +0 -25
  334. package/src/spinner/index.native.js +0 -22
  335. package/src/spinner/style.native.scss +0 -4
  336. package/src/style-provider/index.native.js +0 -3
  337. package/src/text/index.native.js +0 -13
  338. package/src/text/styles/emotion-css.native.js +0 -6
  339. package/src/text/styles/font-family.native.js +0 -1
  340. package/src/text/styles/text-mixins.native.js +0 -163
  341. package/src/text-control/index.native.js +0 -41
  342. package/src/textarea-control/index.native.js +0 -26
  343. package/src/toggle-control/index.native.js +0 -31
  344. package/src/toolbar/toolbar/style.native.scss +0 -11
  345. package/src/toolbar/toolbar/toolbar-container.native.js +0 -8
  346. package/src/toolbar/toolbar-button/toolbar-button-container.native.js +0 -8
  347. package/src/toolbar/toolbar-group/style.native.scss +0 -10
  348. package/src/toolbar/toolbar-group/toolbar-group-collapsed.native.js +0 -36
  349. package/src/toolbar/toolbar-group/toolbar-group-container.native.js +0 -26
  350. package/src/toolbar/toolbar-item/index.native.js +0 -17
  351. package/src/tooltip/index.native.js +0 -292
  352. package/src/tooltip/style.native.scss +0 -39
  353. package/src/tooltip/test/index.native.js +0 -98
  354. package/src/unit-control/index.native.js +0 -202
  355. package/src/unit-control/style.native.scss +0 -19
@@ -1,329 +0,0 @@
1
- /**
2
- * Converts string to object { value, unit }.
3
- *
4
- * @param {string} cssUnit
5
- * @return {Object} parsedUnit
6
- */
7
- function parseUnit( cssUnit ) {
8
- const match = cssUnit
9
- ?.trim()
10
- .match(
11
- /^(0?[-.]?\d*\.?\d+)(r?e[m|x]|v[h|w|min|max]+|p[x|t|c]|[c|m]m|%|in|ch|Q|lh)$/
12
- );
13
- if ( ! isNaN( cssUnit ) && ! isNaN( parseFloat( cssUnit ) ) ) {
14
- return { value: parseFloat( cssUnit ), unit: 'px' };
15
- }
16
- return match
17
- ? { value: parseFloat( match[ 1 ] ) || match[ 1 ], unit: match[ 2 ] }
18
- : { value: cssUnit, unit: undefined };
19
- }
20
- /**
21
- * Evaluate a math expression.
22
- *
23
- * @param {string} expression
24
- * @return {number} evaluated expression.
25
- */
26
- function calculate( expression ) {
27
- try {
28
- return Function( `'use strict'; return (${ expression })` )();
29
- } catch {
30
- return null;
31
- }
32
- }
33
-
34
- /**
35
- * Calculates the css function value for the supported css functions such as max, min, clamp and calc.
36
- *
37
- * @param {string} functionUnitValue string should be in a particular format (for example min(12px,12px) ) no nested loops.
38
- * @param {Object} options
39
- * @return {string} unit containing the unit in PX.
40
- */
41
- function getFunctionUnitValue( functionUnitValue, options ) {
42
- const functionUnit = functionUnitValue.split( /[(),]/g ).filter( Boolean );
43
-
44
- const units = functionUnit
45
- .slice( 1 )
46
- .map( ( unit ) => parseUnit( getPxFromCssUnit( unit, options ) ).value )
47
- .filter( Boolean );
48
-
49
- switch ( functionUnit[ 0 ] ) {
50
- case 'min':
51
- return Math.min( ...units ) + 'px';
52
- case 'max':
53
- return Math.max( ...units ) + 'px';
54
- case 'clamp':
55
- if ( units.length !== 3 ) {
56
- return null;
57
- }
58
- if ( units[ 1 ] < units[ 0 ] ) {
59
- return units[ 0 ] + 'px';
60
- }
61
- if ( units[ 1 ] > units[ 2 ] ) {
62
- return units[ 2 ] + 'px';
63
- }
64
- return units[ 1 ] + 'px';
65
- case 'calc':
66
- return units[ 0 ] + 'px';
67
- }
68
- }
69
-
70
- /**
71
- * Take a css function such as min, max, calc, clamp and returns parsedUnit
72
- *
73
- * How this works for the nested function is that it first replaces the inner function call.
74
- * Then it tackles the outer ones.
75
- * So for example: min( max(25px, 35px), 40px )
76
- * in the first pass we would replace max(25px, 35px) with 35px.
77
- * then we would try to evaluate min( 35px, 40px )
78
- * and then finally return 35px.
79
- *
80
- * @param {string} cssUnit
81
- * @return {Object} parsedUnit object.
82
- */
83
- function parseUnitFunction( cssUnit ) {
84
- while ( true ) {
85
- const currentCssUnit = cssUnit;
86
- const regExp = /(max|min|calc|clamp)\(([^()]*)\)/g;
87
- const matches = regExp.exec( cssUnit ) || [];
88
- if ( matches[ 0 ] ) {
89
- const functionUnitValue = getFunctionUnitValue( matches[ 0 ] );
90
- cssUnit = cssUnit.replace( matches[ 0 ], functionUnitValue );
91
- }
92
-
93
- // If the unit hasn't been modified or we have a single value break free.
94
- if ( cssUnit === currentCssUnit || parseFloat( cssUnit ) ) {
95
- break;
96
- }
97
- }
98
-
99
- return parseUnit( cssUnit );
100
- }
101
- /**
102
- * Return true if we think this is a math expression.
103
- *
104
- * @param {string} cssUnit the cssUnit value being evaluated.
105
- * @return {boolean} Whether the cssUnit is a math expression.
106
- */
107
- function isMathExpression( cssUnit ) {
108
- for ( let i = 0; i < cssUnit.length; i++ ) {
109
- if ( [ '+', '-', '/', '*' ].includes( cssUnit[ i ] ) ) {
110
- return true;
111
- }
112
- }
113
- return false;
114
- }
115
- /**
116
- * Evaluates the math expression and return a px value.
117
- *
118
- * @param {string} cssUnit the cssUnit value being evaluated.
119
- * @return {string} return a converted value to px.
120
- */
121
- function evalMathExpression( cssUnit ) {
122
- let errorFound = false;
123
- // Convert every part of the expression to px values.
124
- // The following regex matches numbers that have a following unit
125
- // E.g. 5.25rem, 1vw
126
- const cssUnitsBits = cssUnit.match( /\d+\.?\d*[a-zA-Z]+|\.\d+[a-zA-Z]+/g );
127
- if ( cssUnitsBits ) {
128
- for ( const unit of cssUnitsBits ) {
129
- // Standardize the unit to px and extract the value.
130
- const parsedUnit = parseUnit( getPxFromCssUnit( unit ) );
131
- if ( ! parseFloat( parsedUnit.value ) ) {
132
- errorFound = true;
133
- // End early since we are dealing with a null value.
134
- break;
135
- }
136
- cssUnit = cssUnit.replace( unit, parsedUnit.value );
137
- }
138
- } else {
139
- errorFound = true;
140
- }
141
-
142
- // For mixed math expressions wrapped within CSS expressions
143
- const expressionsMatches = cssUnit.match( /(max|min|clamp)/g );
144
- if ( ! errorFound && expressionsMatches ) {
145
- const values = cssUnit.split( ',' );
146
- for ( const currentValue of values ) {
147
- // Check for nested calc() and remove them to calculate the value.
148
- const rawCurrentValue = currentValue.replace( /\s|calc/g, '' );
149
-
150
- if ( isMathExpression( rawCurrentValue ) ) {
151
- const calculatedExpression = calculate( rawCurrentValue );
152
-
153
- if ( calculatedExpression ) {
154
- const calculatedValue =
155
- calculatedExpression.toFixed( 0 ) + 'px';
156
- cssUnit = cssUnit.replace( currentValue, calculatedValue );
157
- }
158
- }
159
- }
160
- const parsedValue = parseUnitFunction( cssUnit );
161
- return ! parsedValue ? null : parsedValue.value + parsedValue.unit;
162
- }
163
-
164
- if ( errorFound ) {
165
- return null;
166
- }
167
-
168
- const calculatedResult = calculate( cssUnit );
169
- return calculatedResult ? calculatedResult.toFixed( 0 ) + 'px' : null;
170
- }
171
-
172
- /**
173
- * Convert a parsedUnit object to px value.
174
- *
175
- * @param {Object} parsedUnit
176
- * @param {Object} options
177
- * @return {string} or {null} returns the converted with in a px value format.
178
- */
179
- function convertParsedUnitToPx( parsedUnit, options ) {
180
- const PIXELS_PER_INCH = 96;
181
- const ONE_PERCENT = 0.01;
182
-
183
- const defaultProperties = {
184
- fontSize: 16,
185
- lineHeight: 16,
186
- width: 375,
187
- height: 812,
188
- type: 'font',
189
- };
190
-
191
- const setOptions = Object.assign( {}, defaultProperties, options );
192
-
193
- const relativeUnits = {
194
- em: setOptions.fontSize,
195
- rem: setOptions.fontSize,
196
- vh: setOptions.height * ONE_PERCENT,
197
- vw: setOptions.width * ONE_PERCENT,
198
- vmin:
199
- ( setOptions.width < setOptions.height
200
- ? setOptions.width
201
- : setOptions.height ) * ONE_PERCENT,
202
- vmax:
203
- ( setOptions.width > setOptions.height
204
- ? setOptions.width
205
- : setOptions.height ) * ONE_PERCENT,
206
- '%':
207
- ( setOptions.type === 'font'
208
- ? setOptions.fontSize
209
- : setOptions.width ) * ONE_PERCENT,
210
- ch: 8, // The advance measure (width) of the glyph "0" of the element's font. Approximate
211
- ex: 7.15625, // X-height of the element's font. Approximate.
212
- lh: setOptions.lineHeight,
213
- };
214
- relativeUnits.svw = relativeUnits.vmin;
215
- relativeUnits.lvw = relativeUnits.vmax;
216
- relativeUnits.dvw = relativeUnits.vw;
217
- relativeUnits.svh = relativeUnits.vmin;
218
- relativeUnits.lvh = relativeUnits.vmax;
219
- relativeUnits.dvh = relativeUnits.vh;
220
- relativeUnits.vi = relativeUnits.vh;
221
- relativeUnits.svi = relativeUnits.vmin;
222
- relativeUnits.lvi = relativeUnits.vmax;
223
- relativeUnits.dvi = relativeUnits.vw;
224
- relativeUnits.vb = relativeUnits.vh;
225
- relativeUnits.svb = relativeUnits.vmin;
226
- relativeUnits.lvb = relativeUnits.vmax;
227
- relativeUnits.dvb = relativeUnits.vh;
228
- relativeUnits.svmin = relativeUnits.vmin;
229
- relativeUnits.lvmin = relativeUnits.vmin;
230
- relativeUnits.dvmin = relativeUnits.vmin;
231
- relativeUnits.svmax = relativeUnits.vmax;
232
- relativeUnits.lvmax = relativeUnits.vmax;
233
- relativeUnits.dvmax = relativeUnits.vmax;
234
-
235
- const absoluteUnits = {
236
- in: PIXELS_PER_INCH,
237
- cm: PIXELS_PER_INCH / 2.54,
238
- mm: PIXELS_PER_INCH / 25.4,
239
- pt: PIXELS_PER_INCH / 72,
240
- pc: PIXELS_PER_INCH / 6,
241
- px: 1,
242
- Q: PIXELS_PER_INCH / 2.54 / 40,
243
- };
244
-
245
- if ( relativeUnits[ parsedUnit.unit ] ) {
246
- return (
247
- ( relativeUnits[ parsedUnit.unit ] * parsedUnit.value ).toFixed(
248
- 0
249
- ) + 'px'
250
- );
251
- }
252
-
253
- if ( absoluteUnits[ parsedUnit.unit ] ) {
254
- return (
255
- ( absoluteUnits[ parsedUnit.unit ] * parsedUnit.value ).toFixed(
256
- 0
257
- ) + 'px'
258
- );
259
- }
260
-
261
- return null;
262
- }
263
-
264
- /**
265
- * Returns the px value of a cssUnit.
266
- *
267
- * @param {string} cssUnit
268
- * @param {Object} options
269
- * @return {string} returns the cssUnit value in a simple px format.
270
- */
271
- export function getPxFromCssUnit( cssUnit, options = {} ) {
272
- if ( Number.isFinite( cssUnit ) ) {
273
- return cssUnit.toFixed( 0 ) + 'px';
274
- }
275
- if ( cssUnit === undefined ) {
276
- return null;
277
- }
278
- let parsedUnit = parseUnit( cssUnit );
279
-
280
- if ( ! parsedUnit.unit ) {
281
- parsedUnit = parseUnitFunction( cssUnit );
282
- }
283
-
284
- if ( isMathExpression( cssUnit ) && ! parsedUnit.unit ) {
285
- return evalMathExpression( cssUnit );
286
- }
287
-
288
- return convertParsedUnitToPx( parsedUnit, options );
289
- }
290
-
291
- // Use simple cache.
292
- const cache = {};
293
- /**
294
- * Returns the px value of a cssUnit. The memoized version of getPxFromCssUnit;
295
- *
296
- * @param {string} cssUnit
297
- * @param {Object} options
298
- * @return {string} returns the cssUnit value in a simple px format.
299
- */
300
- function memoizedGetPxFromCssUnit( cssUnit, options = {} ) {
301
- const hash = cssUnit + hashOptions( options );
302
-
303
- if ( ! cache[ hash ] ) {
304
- cache[ hash ] = getPxFromCssUnit( cssUnit, options );
305
- }
306
- return cache[ hash ];
307
- }
308
-
309
- function hashOptions( options ) {
310
- let hash = '';
311
- if ( options.hasOwnProperty( 'fontSize' ) ) {
312
- hash = ':' + options.width;
313
- }
314
- if ( options.hasOwnProperty( 'lineHeight' ) ) {
315
- hash = ':' + options.lineHeight;
316
- }
317
- if ( options.hasOwnProperty( 'width' ) ) {
318
- hash = ':' + options.width;
319
- }
320
- if ( options.hasOwnProperty( 'height' ) ) {
321
- hash = ':' + options.height;
322
- }
323
- if ( options.hasOwnProperty( 'type' ) ) {
324
- hash = ':' + options.type;
325
- }
326
- return hash;
327
- }
328
-
329
- export default memoizedGetPxFromCssUnit;
@@ -1,12 +0,0 @@
1
- export function removeNonDigit( text, decimalNum ) {
2
- const regex = decimalNum > 0 ? /^(\d+\.?\,?(\d+)?)/ : /([\d]+)/;
3
- const result = text.match( regex );
4
- return result ? result[ 0 ] : '';
5
- }
6
-
7
- export function toFixed( num, decimalNum = 0 ) {
8
- const decimalOffset = decimalNum < 0 ? 0 : decimalNum;
9
- return Number.parseFloat(
10
- Number.parseFloat( num ).toFixed( decimalOffset )
11
- );
12
- }
@@ -1,172 +0,0 @@
1
- /**
2
- * Internal dependencies
3
- */
4
- import {
5
- default as memoizedGetPxFromCssUnit,
6
- getPxFromCssUnit,
7
- } from '../get-px-from-css-unit';
8
-
9
- describe( 'getPxFromCssUnit', () => {
10
- // Absolute units.
11
- describe( 'absolute unites should return px values', () => {
12
- const testData = [
13
- [ '25px', '25px' ],
14
- [ '25.5', '26px' ],
15
- [ '1cm', '38px' ],
16
- [ '10mm', '38px' ],
17
- [ '1in', '96px' ],
18
- [ '12pt', '16px' ],
19
- [ '1pc', '16px' ],
20
- [ '40Q', '38px' ], // 40 Q should be 1 cm.
21
- ];
22
-
23
- test.each( testData )( 'getPxFromCssUnit( %s )', ( unit, expected ) => {
24
- expect( getPxFromCssUnit( unit ) ).toBe( expected );
25
- } );
26
- test.each( testData )(
27
- 'memoizedGetPxFromCssUnit( %s )',
28
- ( unit, expected ) => {
29
- expect( memoizedGetPxFromCssUnit( unit ) ).toBe( expected );
30
- }
31
- );
32
- test.each( testData )(
33
- 'cached memoizedGetPxFromCssUnit( %s )',
34
- ( unit, expected ) => {
35
- expect( memoizedGetPxFromCssUnit( unit ) ).toBe( expected );
36
- }
37
- );
38
- } );
39
-
40
- describe( 'relative unites should return px values', () => {
41
- const settings = {
42
- fontSize: 10,
43
- width: 100,
44
- height: 200,
45
- lineHeight: 2,
46
- type: 'font',
47
- };
48
-
49
- const testData = [
50
- [ '2em', '20px' ],
51
- [ '2rem', '20px' ],
52
- [ '1.125rem', '11px' ],
53
- [ '20vw', '20px' ],
54
- [ '20vh', '40px' ],
55
- [ '20vmin', '20px' ],
56
- [ '20vmax', '40px' ],
57
- [ '20lh', '40px' ],
58
- [ '120%', '12px' ],
59
- ];
60
-
61
- test.each( testData )( 'getPxFromCssUnit( %s )', ( unit, expected ) => {
62
- expect( getPxFromCssUnit( unit, settings ) ).toBe( expected );
63
- } );
64
- test.each( testData )(
65
- 'memoizedGetPxFromCssUnit( %s )',
66
- ( unit, expected ) => {
67
- expect( memoizedGetPxFromCssUnit( unit, settings ) ).toBe(
68
- expected
69
- );
70
- }
71
- );
72
- test.each( testData )(
73
- 'cached memoizedGetPxFromCssUnit( %s )',
74
- ( unit, expected ) => {
75
- expect( memoizedGetPxFromCssUnit( unit, settings ) ).toBe(
76
- expected
77
- );
78
- }
79
- );
80
- } );
81
-
82
- // Function units.
83
-
84
- describe( 'function unites should return px values', () => {
85
- const settings = {
86
- fontSize: 10,
87
- width: 100,
88
- height: 200,
89
- lineHeight: 2,
90
- type: 'font',
91
- };
92
-
93
- const testData = [
94
- [ 'min(20px, 25px)', '20px' ],
95
- [ 'min(20px, 9px, 12pt, 25px)', '9px' ],
96
- [ 'max(20px, 25px)', '25px' ],
97
- [ 'clamp(10px, 9px, 25px)', '10px' ],
98
- [ 'clamp(10px, 35px, 25px)', '25px' ],
99
- [ 'clamp(10px, 15px, 25px)', '15px' ],
100
- [ 'min(max(20px,25px), 35px)', '25px' ],
101
- [ 'max(min(20px,25px), 35px)', '35px' ],
102
- [ '10px + 25px', '35px' ],
103
- [ 'calc(10px + 25px)', '35px' ],
104
- [ 'calc( 2 * 20px)', '40px' ],
105
- [ 'calc(25px - 10px)', '15px' ],
106
- [ 'min(10px + 25px, 55pt)', '35px' ],
107
- [ 'calc(12vw * 10px)', '450px' ],
108
- [ 'calc(45vw / 10px)', '17px' ],
109
- [ '', null ],
110
- [ undefined, null ],
111
- [ 123, '123px' ],
112
- [ 123.456, '123px' ],
113
- [ 'abc', null ],
114
- [ 'console.log("howdy"); + 10px', null ],
115
- [ 'calc(12vw * 10px', null ], // Missing closing bracket.
116
- [ 'calc( 1em + 0.875rem )', '30px' ], // Decimals
117
- [
118
- 'clamp(1.8rem, 1.8rem + ((1vw / 0.48rem + 1rem) * 2.885), 3rem)',
119
- '48px',
120
- ],
121
- [
122
- 'clamp(5rem, 5.25rem + ((1vw - 0.48rem) * 9.096), 8rem)',
123
- '80px',
124
- ],
125
- [
126
- 'clamp(2.625rem, calc(2.625rem + ((1vw - 0.48rem) * 8.4135)), 3.25rem)',
127
- '42px',
128
- ],
129
- [ 'var:preset|font-size|medium', null ],
130
- ];
131
-
132
- test.each( testData )( 'getPxFromCssUnit( %s )', ( unit, expected ) => {
133
- expect( getPxFromCssUnit( unit, settings ) ).toBe( expected );
134
- } );
135
- test.each( testData )(
136
- 'memoizedGetPxFromCssUnit( %s )',
137
- ( unit, expected ) => {
138
- expect( memoizedGetPxFromCssUnit( unit, settings ) ).toBe(
139
- expected
140
- );
141
- }
142
- );
143
- test.each( testData )(
144
- 'cached memoizedGetPxFromCssUnit( %s )',
145
- ( unit, expected ) => {
146
- expect( memoizedGetPxFromCssUnit( unit, settings ) ).toBe(
147
- expected
148
- );
149
- }
150
- );
151
- } );
152
- // Skip this test it might be useful in dev.
153
- it.skip( 'test performance of memoizedGetPxFromCssUnit function', () => {
154
- const start = Date.now();
155
- let i = 0;
156
- const intervals = 1000;
157
- while ( i < intervals ) {
158
- getPxFromCssUnit( 'max(25px, 35px)', { width: 200 } );
159
- i++;
160
- }
161
- const rawDuration = Date.now() - start;
162
-
163
- const startM = Date.now();
164
- i = 0;
165
- // The memoized Version should be at 10X better then the non default one.
166
- while ( i < intervals * 10 ) {
167
- memoizedGetPxFromCssUnit( 'max(25px, 35px)', { width: 201 } );
168
- i++;
169
- }
170
- expect( rawDuration > Date.now() - startM ).toBe( true );
171
- } );
172
- } );
@@ -1,134 +0,0 @@
1
- /**
2
- * Internal dependencies
3
- */
4
- import { removeNonDigit, toFixed } from '../';
5
- import { alignmentHelpers } from '../alignments.native.js';
6
-
7
- /**
8
- * WordPress dependencies
9
- */
10
- import {
11
- getBlockTypes,
12
- registerBlockType,
13
- unregisterBlockType,
14
- } from '@wordpress/blocks';
15
-
16
- const { isContainerRelated } = alignmentHelpers;
17
-
18
- describe( 'removeNonDigit', () => {
19
- it( 'function returns empty string if passed text does not contain digit characters', () => {
20
- const result = removeNonDigit( 'test' );
21
- expect( result ).toBe( '' );
22
- } );
23
-
24
- it( 'function removes non digit characters from passed text', () => {
25
- const result = removeNonDigit( 'test123' );
26
- expect( result ).toBe( '123' );
27
- } );
28
-
29
- it( 'function accepts dot character', () => {
30
- const result = removeNonDigit( '12.34', 2 );
31
- expect( result ).toBe( '12.34' );
32
- } );
33
-
34
- it( 'function accepts comma character', () => {
35
- const result = removeNonDigit( '12,34', 2 );
36
- expect( result ).toBe( '12,34' );
37
- } );
38
- } );
39
-
40
- describe( 'toFixed', () => {
41
- it( 'function returns the passed number if `decimalNum` is not specified', () => {
42
- const result = toFixed( '123' );
43
- expect( result ).toBe( 123 );
44
- } );
45
-
46
- it( 'function returns the number without decimals if `decimalNum` is not specified', () => {
47
- const result = toFixed( '123.4567' );
48
- expect( result ).toBe( 123 );
49
- } );
50
-
51
- it( 'function returns the number applying `decimalNum`', () => {
52
- const result = toFixed( '123.4567', 2 );
53
- expect( result ).toBe( 123.46 );
54
- } );
55
-
56
- it( 'function returns the number applying `decimalNum` all point numbers', () => {
57
- const toCheck = [
58
- 1.01, 1.02, 1.03, 1.04, 1.05, 1.06, 1.07, 1.08, 1.09, 1.1,
59
- ];
60
- toCheck.forEach( ( num ) => {
61
- const result = toFixed( num, 2 );
62
- expect( result ).toBe( num );
63
- } );
64
- } );
65
-
66
- it( 'function returns number without decimals if `decimalNum` is negative', () => {
67
- const result = toFixed( '12.34', -12 );
68
- expect( result ).toBe( 12 );
69
- } );
70
- } );
71
-
72
- describe( 'isContainerRelated', () => {
73
- const currentlySupportedBlocks = [
74
- 'core/group',
75
- 'core/columns',
76
- 'core/column',
77
- 'core/buttons',
78
- 'core/button',
79
- ];
80
-
81
- beforeAll( () => {
82
- const registerCoreBlocks =
83
- require( '@wordpress/block-library' ).registerCoreBlocks;
84
- registerCoreBlocks();
85
- } );
86
-
87
- afterAll( () => {
88
- getBlockTypes().forEach( ( blockname ) => {
89
- unregisterBlockType( blockname.name );
90
- } );
91
- } );
92
-
93
- it( 'function returns True for currently supported block types', () => {
94
- currentlySupportedBlocks.forEach( ( blockName ) => {
95
- const result = isContainerRelated( blockName );
96
- expect( result ).toBe( true );
97
- } );
98
- } );
99
-
100
- it( 'function returns false for currently NOT supported Blocks types', () => {
101
- getBlockTypes().forEach( ( blockType ) => {
102
- if ( currentlySupportedBlocks.includes( blockType.name ) ) {
103
- return;
104
- }
105
- const result = isContainerRelated( blockType.name );
106
- expect( result ).toBe( false );
107
- } );
108
- } );
109
-
110
- it( 'function return true from no core blocks if they meet the criteria', () => {
111
- registerBlockType( 'foo/bar', {
112
- title: 'Foo block',
113
- attributes: {},
114
- supports: {
115
- align: [ 'full' ],
116
- },
117
- } );
118
-
119
- const resultFoo = isContainerRelated( 'foo/bar' );
120
- expect( resultFoo ).toBe( true );
121
-
122
- registerBlockType( 'foo/bar-sup', {
123
- title: 'bar block',
124
- attributes: {},
125
- parent: [ 'foo/bar' ],
126
- } );
127
-
128
- const resultBar = isContainerRelated( 'foo/bar-sup' );
129
- expect( resultBar ).toBe( true );
130
-
131
- unregisterBlockType( 'foo/bar' );
132
- unregisterBlockType( 'foo/bar-sup' );
133
- } );
134
- } );
@@ -1,31 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { Keyboard, Dimensions } from 'react-native';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { useEffect, useState } from '@wordpress/element';
10
-
11
- export default function useIsFloatingKeyboard() {
12
- const windowWidth = Dimensions.get( 'window' ).width;
13
-
14
- const [ floating, setFloating ] = useState( false );
15
-
16
- useEffect( () => {
17
- const onKeyboardWillChangeFrame = ( event ) => {
18
- setFloating( event.endCoordinates.width !== windowWidth );
19
- };
20
-
21
- const keyboardChangeSubscription = Keyboard.addListener(
22
- 'keyboardWillChangeFrame',
23
- onKeyboardWillChangeFrame
24
- );
25
- return () => {
26
- keyboardChangeSubscription.remove();
27
- };
28
- }, [ windowWidth ] );
29
-
30
- return floating;
31
- }