@wordpress/block-editor 12.11.1 → 12.12.2-next.f8d8eceb.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 (453) hide show
  1. package/CHANGELOG.md +14 -10
  2. package/README.md +35 -3
  3. package/build/components/block-alignment-control/use-available-alignments.js +30 -28
  4. package/build/components/block-alignment-control/use-available-alignments.js.map +1 -1
  5. package/build/components/block-controls/hook.js +4 -1
  6. package/build/components/block-controls/hook.js.map +1 -1
  7. package/build/components/block-list/block-outline.native.js +1 -1
  8. package/build/components/block-list/block-outline.native.js.map +1 -1
  9. package/build/components/block-list/block.js +2 -0
  10. package/build/components/block-list/block.js.map +1 -1
  11. package/build/components/block-list/block.native.js +4 -4
  12. package/build/components/block-list/block.native.js.map +1 -1
  13. package/build/components/block-list/layout.js +2 -3
  14. package/build/components/block-list/layout.js.map +1 -1
  15. package/build/components/block-preview/index.js +4 -1
  16. package/build/components/block-preview/index.js.map +1 -1
  17. package/build/components/block-styles/index.js +1 -2
  18. package/build/components/block-styles/index.js.map +1 -1
  19. package/build/components/block-switcher/pattern-transformations-menu.js +2 -4
  20. package/build/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  21. package/build/components/block-tools/block-contextual-toolbar.js +1 -0
  22. package/build/components/block-tools/block-contextual-toolbar.js.map +1 -1
  23. package/build/components/border-radius-control/index.js +3 -2
  24. package/build/components/border-radius-control/index.js.map +1 -1
  25. package/build/components/color-palette/with-color-context.js +6 -6
  26. package/build/components/color-palette/with-color-context.js.map +1 -1
  27. package/build/components/colors/with-colors.js +2 -8
  28. package/build/components/colors/with-colors.js.map +1 -1
  29. package/build/components/colors-gradients/control.js +6 -7
  30. package/build/components/colors-gradients/control.js.map +1 -1
  31. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +5 -13
  32. package/build/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  33. package/build/components/dimensions-tool/index.js +22 -22
  34. package/build/components/dimensions-tool/index.js.map +1 -1
  35. package/build/components/dimensions-tool/scale-tool.js +1 -1
  36. package/build/components/dimensions-tool/scale-tool.js.map +1 -1
  37. package/build/components/font-family/index.js +2 -3
  38. package/build/components/font-family/index.js.map +1 -1
  39. package/build/components/font-sizes/font-size-picker.js +3 -5
  40. package/build/components/font-sizes/font-size-picker.js.map +1 -1
  41. package/build/components/font-sizes/with-font-sizes.js +3 -4
  42. package/build/components/font-sizes/with-font-sizes.js.map +1 -1
  43. package/build/components/global-styles/filters-panel.js +7 -8
  44. package/build/components/global-styles/filters-panel.js.map +1 -1
  45. package/build/components/global-styles/image-settings-panel.js +2 -2
  46. package/build/components/global-styles/image-settings-panel.js.map +1 -1
  47. package/build/components/global-styles/typography-panel.js +1 -1
  48. package/build/components/global-styles/typography-panel.js.map +1 -1
  49. package/build/components/gradients/use-gradient.js +2 -5
  50. package/build/components/gradients/use-gradient.js.map +1 -1
  51. package/build/components/height-control/index.js +93 -5
  52. package/build/components/height-control/index.js.map +1 -1
  53. package/build/components/iframe/index.js +9 -1
  54. package/build/components/iframe/index.js.map +1 -1
  55. package/build/components/image-editor/aspect-ratio-dropdown.js +0 -6
  56. package/build/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  57. package/build/components/index.js +9 -2
  58. package/build/components/index.js.map +1 -1
  59. package/build/components/index.native.js +17 -2
  60. package/build/components/index.native.js.map +1 -1
  61. package/build/components/inner-blocks/index.js +2 -2
  62. package/build/components/inner-blocks/index.js.map +1 -1
  63. package/build/components/letter-spacing-control/index.js +3 -3
  64. package/build/components/letter-spacing-control/index.js.map +1 -1
  65. package/build/components/link-control/link-preview.js +5 -2
  66. package/build/components/link-control/link-preview.js.map +1 -1
  67. package/build/components/link-control/search-item.js +11 -0
  68. package/build/components/link-control/search-item.js.map +1 -1
  69. package/build/components/link-control/search-results.js +2 -1
  70. package/build/components/link-control/search-results.js.map +1 -1
  71. package/build/components/link-control/use-internal-value.js +14 -8
  72. package/build/components/link-control/use-internal-value.js.map +1 -1
  73. package/build/components/link-control/use-search-handler.js +10 -5
  74. package/build/components/link-control/use-search-handler.js.map +1 -1
  75. package/build/components/list-view/index.js +6 -5
  76. package/build/components/list-view/index.js.map +1 -1
  77. package/build/components/media-replace-flow/index.js +2 -4
  78. package/build/components/media-replace-flow/index.js.map +1 -1
  79. package/build/components/provider/use-block-sync.js +2 -2
  80. package/build/components/provider/use-block-sync.js.map +1 -1
  81. package/build/components/rich-text/index.js +1 -1
  82. package/build/components/rich-text/index.js.map +1 -1
  83. package/build/components/rich-text/index.native.js +14 -3
  84. package/build/components/rich-text/index.native.js.map +1 -1
  85. package/build/components/rich-text/use-delete.js +1 -1
  86. package/build/components/rich-text/use-delete.js.map +1 -1
  87. package/build/components/rich-text/use-paste-handler.js +25 -22
  88. package/build/components/rich-text/use-paste-handler.js.map +1 -1
  89. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js +6 -3
  90. package/build/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  91. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js +91 -3
  92. package/build/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  93. package/build/components/tool-selector/index.js +1 -2
  94. package/build/components/tool-selector/index.js.map +1 -1
  95. package/build/components/unit-control/index.js +3 -3
  96. package/build/components/unit-control/index.js.map +1 -1
  97. package/build/components/use-block-commands/index.js +96 -47
  98. package/build/components/use-block-commands/index.js.map +1 -1
  99. package/build/components/use-settings/index.js +212 -0
  100. package/build/components/use-settings/index.js.map +1 -0
  101. package/build/components/writing-flow/use-arrow-nav.js +4 -0
  102. package/build/components/writing-flow/use-arrow-nav.js.map +1 -1
  103. package/build/hooks/align.js +51 -35
  104. package/build/hooks/align.js.map +1 -1
  105. package/build/hooks/anchor.js +37 -32
  106. package/build/hooks/anchor.js.map +1 -1
  107. package/build/hooks/background.js +4 -4
  108. package/build/hooks/background.js.map +1 -1
  109. package/build/hooks/block-rename-ui.js +5 -5
  110. package/build/hooks/block-rename-ui.js.map +1 -1
  111. package/build/hooks/{metadata-name.js → block-renaming.js} +3 -7
  112. package/build/hooks/block-renaming.js.map +1 -0
  113. package/build/hooks/color.js +2 -4
  114. package/build/hooks/color.js.map +1 -1
  115. package/build/hooks/custom-class-name.js +28 -21
  116. package/build/hooks/custom-class-name.js.map +1 -1
  117. package/build/hooks/duotone.js +33 -8
  118. package/build/hooks/duotone.js.map +1 -1
  119. package/build/hooks/font-size.js +4 -4
  120. package/build/hooks/font-size.js.map +1 -1
  121. package/build/hooks/index.js +1 -1
  122. package/build/hooks/index.js.map +1 -1
  123. package/build/hooks/layout.js +16 -17
  124. package/build/hooks/layout.js.map +1 -1
  125. package/build/hooks/line-height.js +3 -3
  126. package/build/hooks/line-height.js.map +1 -1
  127. package/build/hooks/metadata.js +6 -27
  128. package/build/hooks/metadata.js.map +1 -1
  129. package/build/hooks/position.js +2 -3
  130. package/build/hooks/position.js.map +1 -1
  131. package/build/hooks/use-color-props.js +3 -11
  132. package/build/hooks/use-color-props.js.map +1 -1
  133. package/build/hooks/utils.js +2 -43
  134. package/build/hooks/utils.js.map +1 -1
  135. package/build/layouts/constrained.js +3 -3
  136. package/build/layouts/constrained.js.map +1 -1
  137. package/build/layouts/grid.js +25 -3
  138. package/build/layouts/grid.js.map +1 -1
  139. package/build/layouts/utils.js +1 -1
  140. package/build/layouts/utils.js.map +1 -1
  141. package/build/lock-unlock.js +1 -1
  142. package/build/lock-unlock.js.map +1 -1
  143. package/build/store/actions.js +13 -5
  144. package/build/store/actions.js.map +1 -1
  145. package/build/utils/object.js +4 -1
  146. package/build/utils/object.js.map +1 -1
  147. package/build/utils/parse-css-unit-to-px.js +20 -0
  148. package/build/utils/parse-css-unit-to-px.js.map +1 -1
  149. package/build/utils/pasting.js +1 -1
  150. package/build/utils/pasting.js.map +1 -1
  151. package/build/utils/transform-styles/index.js +19 -24
  152. package/build/utils/transform-styles/index.js.map +1 -1
  153. package/build-module/components/block-alignment-control/use-available-alignments.js +30 -28
  154. package/build-module/components/block-alignment-control/use-available-alignments.js.map +1 -1
  155. package/build-module/components/block-controls/hook.js +4 -1
  156. package/build-module/components/block-controls/hook.js.map +1 -1
  157. package/build-module/components/block-list/block-outline.native.js +1 -1
  158. package/build-module/components/block-list/block-outline.native.js.map +1 -1
  159. package/build-module/components/block-list/block.js +2 -0
  160. package/build-module/components/block-list/block.js.map +1 -1
  161. package/build-module/components/block-list/block.native.js +4 -4
  162. package/build-module/components/block-list/block.native.js.map +1 -1
  163. package/build-module/components/block-list/layout.js +2 -2
  164. package/build-module/components/block-list/layout.js.map +1 -1
  165. package/build-module/components/block-preview/index.js +4 -1
  166. package/build-module/components/block-preview/index.js.map +1 -1
  167. package/build-module/components/block-styles/index.js +1 -2
  168. package/build-module/components/block-styles/index.js.map +1 -1
  169. package/build-module/components/block-switcher/pattern-transformations-menu.js +2 -4
  170. package/build-module/components/block-switcher/pattern-transformations-menu.js.map +1 -1
  171. package/build-module/components/block-tools/block-contextual-toolbar.js +1 -0
  172. package/build-module/components/block-tools/block-contextual-toolbar.js.map +1 -1
  173. package/build-module/components/border-radius-control/index.js +3 -2
  174. package/build-module/components/border-radius-control/index.js.map +1 -1
  175. package/build-module/components/color-palette/with-color-context.js +6 -5
  176. package/build-module/components/color-palette/with-color-context.js.map +1 -1
  177. package/build-module/components/colors/with-colors.js +2 -7
  178. package/build-module/components/colors/with-colors.js.map +1 -1
  179. package/build-module/components/colors-gradients/control.js +6 -7
  180. package/build-module/components/colors-gradients/control.js.map +1 -1
  181. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +5 -12
  182. package/build-module/components/colors-gradients/use-multiple-origin-colors-and-gradients.js.map +1 -1
  183. package/build-module/components/dimensions-tool/index.js +22 -22
  184. package/build-module/components/dimensions-tool/index.js.map +1 -1
  185. package/build-module/components/dimensions-tool/scale-tool.js +1 -1
  186. package/build-module/components/dimensions-tool/scale-tool.js.map +1 -1
  187. package/build-module/components/font-family/index.js +2 -2
  188. package/build-module/components/font-family/index.js.map +1 -1
  189. package/build-module/components/font-sizes/font-size-picker.js +3 -4
  190. package/build-module/components/font-sizes/font-size-picker.js.map +1 -1
  191. package/build-module/components/font-sizes/with-font-sizes.js +3 -3
  192. package/build-module/components/font-sizes/with-font-sizes.js.map +1 -1
  193. package/build-module/components/global-styles/filters-panel.js +7 -8
  194. package/build-module/components/global-styles/filters-panel.js.map +1 -1
  195. package/build-module/components/global-styles/image-settings-panel.js +2 -2
  196. package/build-module/components/global-styles/image-settings-panel.js.map +1 -1
  197. package/build-module/components/global-styles/typography-panel.js +1 -1
  198. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  199. package/build-module/components/gradients/use-gradient.js +2 -4
  200. package/build-module/components/gradients/use-gradient.js.map +1 -1
  201. package/build-module/components/height-control/index.js +93 -4
  202. package/build-module/components/height-control/index.js.map +1 -1
  203. package/build-module/components/iframe/index.js +9 -1
  204. package/build-module/components/iframe/index.js.map +1 -1
  205. package/build-module/components/image-editor/aspect-ratio-dropdown.js +0 -6
  206. package/build-module/components/image-editor/aspect-ratio-dropdown.js.map +1 -1
  207. package/build-module/components/index.js +1 -1
  208. package/build-module/components/index.js.map +1 -1
  209. package/build-module/components/index.native.js +2 -1
  210. package/build-module/components/index.native.js.map +1 -1
  211. package/build-module/components/inner-blocks/index.js +2 -2
  212. package/build-module/components/inner-blocks/index.js.map +1 -1
  213. package/build-module/components/letter-spacing-control/index.js +3 -2
  214. package/build-module/components/letter-spacing-control/index.js.map +1 -1
  215. package/build-module/components/link-control/link-preview.js +6 -3
  216. package/build-module/components/link-control/link-preview.js.map +1 -1
  217. package/build-module/components/link-control/search-item.js +12 -1
  218. package/build-module/components/link-control/search-item.js.map +1 -1
  219. package/build-module/components/link-control/search-results.js +2 -1
  220. package/build-module/components/link-control/search-results.js.map +1 -1
  221. package/build-module/components/link-control/use-internal-value.js +14 -9
  222. package/build-module/components/link-control/use-internal-value.js.map +1 -1
  223. package/build-module/components/link-control/use-search-handler.js +10 -5
  224. package/build-module/components/link-control/use-search-handler.js.map +1 -1
  225. package/build-module/components/list-view/index.js +7 -6
  226. package/build-module/components/list-view/index.js.map +1 -1
  227. package/build-module/components/media-replace-flow/index.js +3 -5
  228. package/build-module/components/media-replace-flow/index.js.map +1 -1
  229. package/build-module/components/provider/use-block-sync.js +2 -2
  230. package/build-module/components/provider/use-block-sync.js.map +1 -1
  231. package/build-module/components/rich-text/index.js +1 -1
  232. package/build-module/components/rich-text/index.js.map +1 -1
  233. package/build-module/components/rich-text/index.native.js +15 -4
  234. package/build-module/components/rich-text/index.native.js.map +1 -1
  235. package/build-module/components/rich-text/use-delete.js +1 -1
  236. package/build-module/components/rich-text/use-delete.js.map +1 -1
  237. package/build-module/components/rich-text/use-paste-handler.js +25 -22
  238. package/build-module/components/rich-text/use-paste-handler.js.map +1 -1
  239. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js +6 -2
  240. package/build-module/components/spacing-sizes-control/hooks/use-spacing-sizes.js.map +1 -1
  241. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js +91 -2
  242. package/build-module/components/spacing-sizes-control/input-controls/spacing-input-control.js.map +1 -1
  243. package/build-module/components/tool-selector/index.js +1 -2
  244. package/build-module/components/tool-selector/index.js.map +1 -1
  245. package/build-module/components/unit-control/index.js +3 -2
  246. package/build-module/components/unit-control/index.js.map +1 -1
  247. package/build-module/components/use-block-commands/index.js +95 -47
  248. package/build-module/components/use-block-commands/index.js.map +1 -1
  249. package/build-module/components/use-settings/index.js +203 -0
  250. package/build-module/components/use-settings/index.js.map +1 -0
  251. package/build-module/components/writing-flow/use-arrow-nav.js +4 -0
  252. package/build-module/components/writing-flow/use-arrow-nav.js.map +1 -1
  253. package/build-module/hooks/align.js +51 -35
  254. package/build-module/hooks/align.js.map +1 -1
  255. package/build-module/hooks/anchor.js +37 -32
  256. package/build-module/hooks/anchor.js.map +1 -1
  257. package/build-module/hooks/background.js +4 -4
  258. package/build-module/hooks/background.js.map +1 -1
  259. package/build-module/hooks/block-rename-ui.js +6 -6
  260. package/build-module/hooks/block-rename-ui.js.map +1 -1
  261. package/build-module/hooks/{metadata-name.js → block-renaming.js} +3 -6
  262. package/build-module/hooks/block-renaming.js.map +1 -0
  263. package/build-module/hooks/color.js +2 -4
  264. package/build-module/hooks/color.js.map +1 -1
  265. package/build-module/hooks/custom-class-name.js +28 -21
  266. package/build-module/hooks/custom-class-name.js.map +1 -1
  267. package/build-module/hooks/duotone.js +34 -9
  268. package/build-module/hooks/duotone.js.map +1 -1
  269. package/build-module/hooks/font-size.js +4 -4
  270. package/build-module/hooks/font-size.js.map +1 -1
  271. package/build-module/hooks/index.js +1 -1
  272. package/build-module/hooks/index.js.map +1 -1
  273. package/build-module/hooks/layout.js +16 -17
  274. package/build-module/hooks/layout.js.map +1 -1
  275. package/build-module/hooks/line-height.js +3 -3
  276. package/build-module/hooks/line-height.js.map +1 -1
  277. package/build-module/hooks/metadata.js +6 -25
  278. package/build-module/hooks/metadata.js.map +1 -1
  279. package/build-module/hooks/position.js +2 -3
  280. package/build-module/hooks/position.js.map +1 -1
  281. package/build-module/hooks/use-color-props.js +3 -11
  282. package/build-module/hooks/use-color-props.js.map +1 -1
  283. package/build-module/hooks/utils.js +3 -44
  284. package/build-module/hooks/utils.js.map +1 -1
  285. package/build-module/layouts/constrained.js +3 -2
  286. package/build-module/layouts/constrained.js.map +1 -1
  287. package/build-module/layouts/grid.js +25 -3
  288. package/build-module/layouts/grid.js.map +1 -1
  289. package/build-module/layouts/utils.js +1 -1
  290. package/build-module/layouts/utils.js.map +1 -1
  291. package/build-module/lock-unlock.js +1 -1
  292. package/build-module/lock-unlock.js.map +1 -1
  293. package/build-module/store/actions.js +14 -6
  294. package/build-module/store/actions.js.map +1 -1
  295. package/build-module/utils/object.js +3 -1
  296. package/build-module/utils/object.js.map +1 -1
  297. package/build-module/utils/parse-css-unit-to-px.js +20 -0
  298. package/build-module/utils/parse-css-unit-to-px.js.map +1 -1
  299. package/build-module/utils/pasting.js +1 -1
  300. package/build-module/utils/pasting.js.map +1 -1
  301. package/build-module/utils/transform-styles/index.js +20 -24
  302. package/build-module/utils/transform-styles/index.js.map +1 -1
  303. package/build-style/style-rtl.css +24 -12
  304. package/build-style/style.css +24 -12
  305. package/package.json +36 -34
  306. package/src/components/block-alignment-control/use-available-alignments.js +49 -34
  307. package/src/components/block-controls/hook.js +6 -3
  308. package/src/components/block-list/block-outline.native.js +1 -1
  309. package/src/components/block-list/block.js +2 -0
  310. package/src/components/block-list/block.native.js +4 -4
  311. package/src/components/block-list/layout.js +2 -2
  312. package/src/components/block-preview/index.js +7 -1
  313. package/src/components/block-styles/index.js +1 -4
  314. package/src/components/block-styles/style.scss +1 -1
  315. package/src/components/block-switcher/pattern-transformations-menu.js +1 -4
  316. package/src/components/block-switcher/style.scss +6 -0
  317. package/src/components/block-tools/block-contextual-toolbar.js +1 -0
  318. package/src/components/block-tools/style.scss +0 -1
  319. package/src/components/border-radius-control/index.js +3 -2
  320. package/src/components/color-palette/test/__snapshots__/control.js.snap +3 -1
  321. package/src/components/color-palette/with-color-context.js +9 -9
  322. package/src/components/colors/with-colors.js +6 -7
  323. package/src/components/colors-gradients/control.js +10 -7
  324. package/src/components/colors-gradients/style.scss +4 -2
  325. package/src/components/colors-gradients/use-multiple-origin-colors-and-gradients.js +29 -15
  326. package/src/components/dimensions-tool/index.js +25 -25
  327. package/src/components/dimensions-tool/scale-tool.js +1 -1
  328. package/src/components/font-family/index.js +2 -2
  329. package/src/components/font-sizes/font-size-picker.js +6 -4
  330. package/src/components/font-sizes/with-font-sizes.js +3 -5
  331. package/src/components/global-styles/filters-panel.js +9 -15
  332. package/src/components/global-styles/image-settings-panel.js +2 -2
  333. package/src/components/global-styles/typography-panel.js +1 -1
  334. package/src/components/gradients/use-gradient.js +10 -4
  335. package/src/components/height-control/index.js +53 -4
  336. package/src/components/iframe/index.js +8 -1
  337. package/src/components/image-editor/aspect-ratio-dropdown.js +0 -8
  338. package/src/components/index.js +1 -1
  339. package/src/components/index.native.js +2 -1
  340. package/src/components/inner-blocks/index.js +2 -2
  341. package/src/components/inserter/style.scss +9 -1
  342. package/src/components/letter-spacing-control/index.js +3 -2
  343. package/src/components/link-control/README.md +43 -0
  344. package/src/components/link-control/link-preview.js +11 -5
  345. package/src/components/link-control/search-item.js +14 -0
  346. package/src/components/link-control/search-results.js +1 -0
  347. package/src/components/link-control/style.scss +3 -3
  348. package/src/components/link-control/test/index.js +19 -0
  349. package/src/components/link-control/use-internal-value.js +14 -10
  350. package/src/components/link-control/use-search-handler.js +22 -15
  351. package/src/components/list-view/index.js +13 -3
  352. package/src/components/media-replace-flow/index.js +9 -14
  353. package/src/components/provider/test/use-block-sync.js +1 -1
  354. package/src/components/provider/use-block-sync.js +2 -2
  355. package/src/components/rich-text/index.js +1 -1
  356. package/src/components/rich-text/index.native.js +19 -3
  357. package/src/components/rich-text/use-delete.js +1 -1
  358. package/src/components/rich-text/use-paste-handler.js +27 -24
  359. package/src/components/spacing-sizes-control/hooks/use-spacing-sizes.js +7 -5
  360. package/src/components/spacing-sizes-control/input-controls/spacing-input-control.js +25 -2
  361. package/src/components/tool-selector/index.js +1 -1
  362. package/src/components/unit-control/index.js +3 -8
  363. package/src/components/use-block-commands/index.js +93 -47
  364. package/src/components/{use-setting → use-settings}/README.md +9 -10
  365. package/src/components/use-settings/index.js +272 -0
  366. package/src/components/{use-setting → use-settings}/test/index.js +47 -5
  367. package/src/components/writing-flow/use-arrow-nav.js +4 -0
  368. package/src/hooks/align.js +79 -54
  369. package/src/hooks/anchor.js +75 -65
  370. package/src/hooks/background.js +7 -9
  371. package/src/hooks/block-rename-ui.js +5 -14
  372. package/src/hooks/{metadata-name.js → block-renaming.js} +4 -7
  373. package/src/hooks/color.js +7 -4
  374. package/src/hooks/custom-class-name.js +36 -31
  375. package/src/hooks/duotone.js +51 -14
  376. package/src/hooks/font-size.js +4 -4
  377. package/src/hooks/index.js +1 -1
  378. package/src/hooks/layout.js +17 -17
  379. package/src/hooks/line-height.js +3 -3
  380. package/src/hooks/metadata.js +6 -38
  381. package/src/hooks/position.js +5 -3
  382. package/src/hooks/use-color-props.js +21 -14
  383. package/src/hooks/utils.js +90 -43
  384. package/src/layouts/constrained.js +3 -8
  385. package/src/layouts/grid.js +50 -2
  386. package/src/layouts/utils.js +2 -1
  387. package/src/lock-unlock.js +1 -1
  388. package/src/store/actions.js +25 -8
  389. package/src/utils/object.js +4 -1
  390. package/src/utils/parse-css-unit-to-px.js +20 -0
  391. package/src/utils/pasting.js +1 -4
  392. package/src/utils/test/__snapshots__/transform-styles.js.snap +103 -0
  393. package/src/utils/test/pasting.js +12 -19
  394. package/src/utils/test/transform-styles.js +217 -0
  395. package/src/utils/transform-styles/index.js +25 -25
  396. package/build/components/use-setting/index.js +0 -159
  397. package/build/components/use-setting/index.js.map +0 -1
  398. package/build/hooks/metadata-name.js.map +0 -1
  399. package/build/utils/transform-styles/ast/index.js +0 -21
  400. package/build/utils/transform-styles/ast/index.js.map +0 -1
  401. package/build/utils/transform-styles/ast/parse.js +0 -660
  402. package/build/utils/transform-styles/ast/parse.js.map +0 -1
  403. package/build/utils/transform-styles/ast/stringify/compiler.js +0 -52
  404. package/build/utils/transform-styles/ast/stringify/compiler.js.map +0 -1
  405. package/build/utils/transform-styles/ast/stringify/compress.js +0 -178
  406. package/build/utils/transform-styles/ast/stringify/compress.js.map +0 -1
  407. package/build/utils/transform-styles/ast/stringify/identity.js +0 -207
  408. package/build/utils/transform-styles/ast/stringify/identity.js.map +0 -1
  409. package/build/utils/transform-styles/ast/stringify/index.js +0 -36
  410. package/build/utils/transform-styles/ast/stringify/index.js.map +0 -1
  411. package/build/utils/transform-styles/transforms/url-rewrite.js +0 -130
  412. package/build/utils/transform-styles/transforms/url-rewrite.js.map +0 -1
  413. package/build/utils/transform-styles/transforms/wrap.js +0 -59
  414. package/build/utils/transform-styles/transforms/wrap.js.map +0 -1
  415. package/build/utils/transform-styles/traverse.js +0 -37
  416. package/build/utils/transform-styles/traverse.js.map +0 -1
  417. package/build-module/components/use-setting/index.js +0 -152
  418. package/build-module/components/use-setting/index.js.map +0 -1
  419. package/build-module/hooks/metadata-name.js.map +0 -1
  420. package/build-module/utils/transform-styles/ast/index.js +0 -6
  421. package/build-module/utils/transform-styles/ast/index.js.map +0 -1
  422. package/build-module/utils/transform-styles/ast/parse.js +0 -654
  423. package/build-module/utils/transform-styles/ast/parse.js.map +0 -1
  424. package/build-module/utils/transform-styles/ast/stringify/compiler.js +0 -49
  425. package/build-module/utils/transform-styles/ast/stringify/compiler.js.map +0 -1
  426. package/build-module/utils/transform-styles/ast/stringify/compress.js +0 -176
  427. package/build-module/utils/transform-styles/ast/stringify/compress.js.map +0 -1
  428. package/build-module/utils/transform-styles/ast/stringify/identity.js +0 -206
  429. package/build-module/utils/transform-styles/ast/stringify/identity.js.map +0 -1
  430. package/build-module/utils/transform-styles/ast/stringify/index.js +0 -29
  431. package/build-module/utils/transform-styles/ast/stringify/index.js.map +0 -1
  432. package/build-module/utils/transform-styles/transforms/url-rewrite.js +0 -123
  433. package/build-module/utils/transform-styles/transforms/url-rewrite.js.map +0 -1
  434. package/build-module/utils/transform-styles/transforms/wrap.js +0 -52
  435. package/build-module/utils/transform-styles/transforms/wrap.js.map +0 -1
  436. package/build-module/utils/transform-styles/traverse.js +0 -28
  437. package/build-module/utils/transform-styles/traverse.js.map +0 -1
  438. package/src/components/use-setting/index.js +0 -213
  439. package/src/utils/transform-styles/ast/index.js +0 -5
  440. package/src/utils/transform-styles/ast/parse.js +0 -732
  441. package/src/utils/transform-styles/ast/stringify/compiler.js +0 -50
  442. package/src/utils/transform-styles/ast/stringify/compress.js +0 -238
  443. package/src/utils/transform-styles/ast/stringify/identity.js +0 -286
  444. package/src/utils/transform-styles/ast/stringify/index.js +0 -32
  445. package/src/utils/transform-styles/test/__snapshots__/traverse.js.snap +0 -7
  446. package/src/utils/transform-styles/test/traverse.js +0 -24
  447. package/src/utils/transform-styles/transforms/test/__snapshots__/url-rewrite.js.snap +0 -25
  448. package/src/utils/transform-styles/transforms/test/__snapshots__/wrap.js.snap +0 -64
  449. package/src/utils/transform-styles/transforms/test/url-rewrite.js +0 -39
  450. package/src/utils/transform-styles/transforms/test/wrap.js +0 -95
  451. package/src/utils/transform-styles/transforms/url-rewrite.js +0 -139
  452. package/src/utils/transform-styles/transforms/wrap.js +0 -56
  453. package/src/utils/transform-styles/traverse.js +0 -32
@@ -1,660 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = _default;
7
- /* eslint-disable @wordpress/no-unused-vars-before-return */
8
-
9
- // Adapted from https://github.com/reworkcss/css
10
- // because we needed to remove source map support.
11
-
12
- // http://www.w3.org/TR/CSS21/grammar.htm
13
- // https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027
14
- const commentre = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g;
15
- function _default(css, options) {
16
- options = options || {};
17
-
18
- /**
19
- * Positional.
20
- */
21
-
22
- let lineno = 1;
23
- let column = 1;
24
-
25
- /**
26
- * Update lineno and column based on `str`.
27
- */
28
-
29
- function updatePosition(str) {
30
- const lines = str.match(/\n/g);
31
- if (lines) {
32
- lineno += lines.length;
33
- }
34
- const i = str.lastIndexOf('\n');
35
- // eslint-disable-next-line no-bitwise
36
- column = ~i ? str.length - i : column + str.length;
37
- }
38
-
39
- /**
40
- * Mark position and patch `node.position`.
41
- */
42
-
43
- function position() {
44
- const start = {
45
- line: lineno,
46
- column
47
- };
48
- return function (node) {
49
- node.position = new Position(start);
50
- whitespace();
51
- return node;
52
- };
53
- }
54
-
55
- /**
56
- * Store position information for a node
57
- */
58
-
59
- function Position(start) {
60
- this.start = start;
61
- this.end = {
62
- line: lineno,
63
- column
64
- };
65
- this.source = options.source;
66
- }
67
-
68
- /**
69
- * Non-enumerable source string
70
- */
71
-
72
- Position.prototype.content = css;
73
-
74
- /**
75
- * Error `msg`.
76
- */
77
-
78
- const errorsList = [];
79
- function error(msg) {
80
- const err = new Error(options.source + ':' + lineno + ':' + column + ': ' + msg);
81
- err.reason = msg;
82
- err.filename = options.source;
83
- err.line = lineno;
84
- err.column = column;
85
- err.source = css;
86
- if (options.silent) {
87
- errorsList.push(err);
88
- } else {
89
- throw err;
90
- }
91
- }
92
-
93
- /**
94
- * Parse stylesheet.
95
- */
96
-
97
- function stylesheet() {
98
- const rulesList = rules();
99
- return {
100
- type: 'stylesheet',
101
- stylesheet: {
102
- source: options.source,
103
- rules: rulesList,
104
- parsingErrors: errorsList
105
- }
106
- };
107
- }
108
-
109
- /**
110
- * Opening brace.
111
- */
112
-
113
- function open() {
114
- return match(/^{\s*/);
115
- }
116
-
117
- /**
118
- * Closing brace.
119
- */
120
-
121
- function close() {
122
- return match(/^}/);
123
- }
124
-
125
- /**
126
- * Parse ruleset.
127
- */
128
-
129
- function rules() {
130
- let node;
131
- const accumulator = [];
132
- whitespace();
133
- comments(accumulator);
134
- while (css.length && css.charAt(0) !== '}' && (node = atrule() || rule())) {
135
- if (node !== false) {
136
- accumulator.push(node);
137
- comments(accumulator);
138
- }
139
- }
140
- return accumulator;
141
- }
142
-
143
- /**
144
- * Match `re` and return captures.
145
- */
146
-
147
- function match(re) {
148
- const m = re.exec(css);
149
- if (!m) {
150
- return;
151
- }
152
- const str = m[0];
153
- updatePosition(str);
154
- css = css.slice(str.length);
155
- return m;
156
- }
157
-
158
- /**
159
- * Parse whitespace.
160
- */
161
-
162
- function whitespace() {
163
- match(/^\s*/);
164
- }
165
-
166
- /**
167
- * Parse comments;
168
- */
169
-
170
- function comments(accumulator) {
171
- let c;
172
- accumulator = accumulator || [];
173
- // eslint-disable-next-line no-cond-assign
174
- while (c = comment()) {
175
- if (c !== false) {
176
- accumulator.push(c);
177
- }
178
- }
179
- return accumulator;
180
- }
181
-
182
- /**
183
- * Parse comment.
184
- */
185
-
186
- function comment() {
187
- const pos = position();
188
- if ('/' !== css.charAt(0) || '*' !== css.charAt(1)) {
189
- return;
190
- }
191
- let i = 2;
192
- while ('' !== css.charAt(i) && ('*' !== css.charAt(i) || '/' !== css.charAt(i + 1))) {
193
- ++i;
194
- }
195
- i += 2;
196
- if ('' === css.charAt(i - 1)) {
197
- return error('End of comment missing');
198
- }
199
- const str = css.slice(2, i - 2);
200
- column += 2;
201
- updatePosition(str);
202
- css = css.slice(i);
203
- column += 2;
204
- return pos({
205
- type: 'comment',
206
- comment: str
207
- });
208
- }
209
-
210
- /**
211
- * Parse selector.
212
- */
213
-
214
- function selector() {
215
- const m = match(/^([^{]+)/);
216
- if (!m) {
217
- return;
218
- }
219
- // FIXME: Remove all comments from selectors http://ostermiller.org/findcomment.html
220
- return trim(m[0]).replace(/\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*\/+/g, '').replace(/"(?:\\"|[^"])*"|'(?:\\'|[^'])*'/g, function (matched) {
221
- return matched.replace(/,/g, '\u200C');
222
- }).split(/\s*(?![^(]*\)),\s*/).map(function (s) {
223
- return s.replace(/\u200C/g, ',');
224
- });
225
- }
226
-
227
- /**
228
- * Parse declaration.
229
- */
230
-
231
- function declaration() {
232
- const pos = position();
233
-
234
- // prop.
235
- let prop = match(/^(\*?[-#\/\*\\\w]+(\[[0-9a-z_-]+\])?)\s*/);
236
- if (!prop) {
237
- return;
238
- }
239
- prop = trim(prop[0]);
240
-
241
- // :
242
- if (!match(/^:\s*/)) {
243
- return error("property missing ':'");
244
- }
245
-
246
- // val.
247
- const val = match(/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^\)]*?\)|[^};])+)/);
248
- const ret = pos({
249
- type: 'declaration',
250
- property: prop.replace(commentre, ''),
251
- value: val ? trim(val[0]).replace(commentre, '') : ''
252
- });
253
-
254
- // ;
255
- match(/^[;\s]*/);
256
- return ret;
257
- }
258
-
259
- /**
260
- * Parse declarations.
261
- */
262
-
263
- function declarations() {
264
- const decls = [];
265
- if (!open()) {
266
- return error("missing '{'");
267
- }
268
- comments(decls);
269
-
270
- // declarations.
271
- let decl;
272
- // eslint-disable-next-line no-cond-assign
273
- while (decl = declaration()) {
274
- if (decl !== false) {
275
- decls.push(decl);
276
- comments(decls);
277
- }
278
- }
279
- if (!close()) {
280
- return error("missing '}'");
281
- }
282
- return decls;
283
- }
284
-
285
- /**
286
- * Parse keyframe.
287
- */
288
-
289
- function keyframe() {
290
- let m;
291
- const vals = [];
292
- const pos = position();
293
-
294
- // eslint-disable-next-line no-cond-assign
295
- while (m = match(/^((\d+\.\d+|\.\d+|\d+)%?|[a-z]+)\s*/)) {
296
- vals.push(m[1]);
297
- match(/^,\s*/);
298
- }
299
- if (!vals.length) {
300
- return;
301
- }
302
- return pos({
303
- type: 'keyframe',
304
- values: vals,
305
- declarations: declarations()
306
- });
307
- }
308
-
309
- /**
310
- * Parse keyframes.
311
- */
312
-
313
- function atkeyframes() {
314
- const pos = position();
315
- let m = match(/^@([-\w]+)?keyframes\s*/);
316
- if (!m) {
317
- return;
318
- }
319
- const vendor = m[1];
320
-
321
- // identifier
322
- m = match(/^([-\w]+)\s*/);
323
- if (!m) {
324
- return error('@keyframes missing name');
325
- }
326
- const name = m[1];
327
- if (!open()) {
328
- return error("@keyframes missing '{'");
329
- }
330
- let frame;
331
- let frames = comments();
332
- // eslint-disable-next-line no-cond-assign
333
- while (frame = keyframe()) {
334
- frames.push(frame);
335
- frames = frames.concat(comments());
336
- }
337
- if (!close()) {
338
- return error("@keyframes missing '}'");
339
- }
340
- return pos({
341
- type: 'keyframes',
342
- name,
343
- vendor,
344
- keyframes: frames
345
- });
346
- }
347
-
348
- /**
349
- * Parse supports.
350
- */
351
-
352
- function atsupports() {
353
- const pos = position();
354
- const m = match(/^@supports *([^{]+)/);
355
- if (!m) {
356
- return;
357
- }
358
- const supports = trim(m[1]);
359
- if (!open()) {
360
- return error("@supports missing '{'");
361
- }
362
- const style = comments().concat(rules());
363
- if (!close()) {
364
- return error("@supports missing '}'");
365
- }
366
- return pos({
367
- type: 'supports',
368
- supports,
369
- rules: style
370
- });
371
- }
372
-
373
- /**
374
- * Parse host.
375
- */
376
-
377
- function athost() {
378
- const pos = position();
379
- const m = match(/^@host\s*/);
380
- if (!m) {
381
- return;
382
- }
383
- if (!open()) {
384
- return error("@host missing '{'");
385
- }
386
- const style = comments().concat(rules());
387
- if (!close()) {
388
- return error("@host missing '}'");
389
- }
390
- return pos({
391
- type: 'host',
392
- rules: style
393
- });
394
- }
395
-
396
- /**
397
- * Parse media.
398
- */
399
-
400
- function atmedia() {
401
- const pos = position();
402
- const m = match(/^@media *([^{]+)/);
403
- if (!m) {
404
- return;
405
- }
406
- const media = trim(m[1]);
407
- if (!open()) {
408
- return error("@media missing '{'");
409
- }
410
- const style = comments().concat(rules());
411
- if (!close()) {
412
- return error("@media missing '}'");
413
- }
414
- return pos({
415
- type: 'media',
416
- media,
417
- rules: style
418
- });
419
- }
420
-
421
- /**
422
- * Parse container.
423
- */
424
-
425
- function atcontainer() {
426
- const pos = position();
427
- const m = match(/^@container *([^{]+)/);
428
- if (!m) {
429
- return;
430
- }
431
- const container = trim(m[1]);
432
- if (!open()) {
433
- return error("@container missing '{'");
434
- }
435
- const style = comments().concat(rules());
436
- if (!close()) {
437
- return error("@container missing '}'");
438
- }
439
- return pos({
440
- type: 'container',
441
- container,
442
- rules: style
443
- });
444
- }
445
-
446
- /**
447
- * Parse custom-media.
448
- */
449
-
450
- function atcustommedia() {
451
- const pos = position();
452
- const m = match(/^@custom-media\s+(--[^\s]+)\s*([^{;]+);/);
453
- if (!m) {
454
- return;
455
- }
456
- return pos({
457
- type: 'custom-media',
458
- name: trim(m[1]),
459
- media: trim(m[2])
460
- });
461
- }
462
-
463
- /**
464
- * Parse paged media.
465
- */
466
-
467
- function atpage() {
468
- const pos = position();
469
- const m = match(/^@page */);
470
- if (!m) {
471
- return;
472
- }
473
- const sel = selector() || [];
474
- if (!open()) {
475
- return error("@page missing '{'");
476
- }
477
- let decls = comments();
478
-
479
- // declarations.
480
- let decl;
481
- // eslint-disable-next-line no-cond-assign
482
- while (decl = declaration()) {
483
- decls.push(decl);
484
- decls = decls.concat(comments());
485
- }
486
- if (!close()) {
487
- return error("@page missing '}'");
488
- }
489
- return pos({
490
- type: 'page',
491
- selectors: sel,
492
- declarations: decls
493
- });
494
- }
495
-
496
- /**
497
- * Parse document.
498
- */
499
-
500
- function atdocument() {
501
- const pos = position();
502
- const m = match(/^@([-\w]+)?document *([^{]+)/);
503
- if (!m) {
504
- return;
505
- }
506
- const vendor = trim(m[1]);
507
- const doc = trim(m[2]);
508
- if (!open()) {
509
- return error("@document missing '{'");
510
- }
511
- const style = comments().concat(rules());
512
- if (!close()) {
513
- return error("@document missing '}'");
514
- }
515
- return pos({
516
- type: 'document',
517
- document: doc,
518
- vendor,
519
- rules: style
520
- });
521
- }
522
-
523
- /**
524
- * Parse font-face.
525
- */
526
-
527
- function atfontface() {
528
- const pos = position();
529
- const m = match(/^@font-face\s*/);
530
- if (!m) {
531
- return;
532
- }
533
- if (!open()) {
534
- return error("@font-face missing '{'");
535
- }
536
- let decls = comments();
537
-
538
- // declarations.
539
- let decl;
540
- // eslint-disable-next-line no-cond-assign
541
- while (decl = declaration()) {
542
- decls.push(decl);
543
- decls = decls.concat(comments());
544
- }
545
- if (!close()) {
546
- return error("@font-face missing '}'");
547
- }
548
- return pos({
549
- type: 'font-face',
550
- declarations: decls
551
- });
552
- }
553
-
554
- /**
555
- * Parse import
556
- */
557
-
558
- const atimport = _compileAtrule('import');
559
-
560
- /**
561
- * Parse charset
562
- */
563
-
564
- const atcharset = _compileAtrule('charset');
565
-
566
- /**
567
- * Parse namespace
568
- */
569
-
570
- const atnamespace = _compileAtrule('namespace');
571
-
572
- /**
573
- * Parse non-block at-rules
574
- */
575
-
576
- function _compileAtrule(name) {
577
- const re = new RegExp('^@' + name + '\\s*([^;]+);');
578
- return function () {
579
- const pos = position();
580
- const m = match(re);
581
- if (!m) {
582
- return;
583
- }
584
- const ret = {
585
- type: name
586
- };
587
- ret[name] = m[1].trim();
588
- return pos(ret);
589
- };
590
- }
591
-
592
- /**
593
- * Parse at rule.
594
- */
595
-
596
- function atrule() {
597
- if (css[0] !== '@') {
598
- return;
599
- }
600
- return atkeyframes() || atmedia() || atcontainer() || atcustommedia() || atsupports() || atimport() || atcharset() || atnamespace() || atdocument() || atpage() || athost() || atfontface();
601
- }
602
-
603
- /**
604
- * Parse rule.
605
- */
606
-
607
- function rule() {
608
- const pos = position();
609
- const sel = selector();
610
- if (!sel) {
611
- return error('selector missing');
612
- }
613
- comments();
614
- return pos({
615
- type: 'rule',
616
- selectors: sel,
617
- declarations: declarations()
618
- });
619
- }
620
- return addParent(stylesheet());
621
- }
622
-
623
- /**
624
- * Trim `str`.
625
- */
626
-
627
- function trim(str) {
628
- return str ? str.replace(/^\s+|\s+$/g, '') : '';
629
- }
630
-
631
- /**
632
- * Adds non-enumerable parent node reference to each node.
633
- */
634
-
635
- function addParent(obj, parent) {
636
- const isNode = obj && typeof obj.type === 'string';
637
- const childParent = isNode ? obj : parent;
638
- for (const k in obj) {
639
- const value = obj[k];
640
- if (Array.isArray(value)) {
641
- value.forEach(function (v) {
642
- addParent(v, childParent);
643
- });
644
- } else if (value && typeof value === 'object') {
645
- addParent(value, childParent);
646
- }
647
- }
648
- if (isNode) {
649
- Object.defineProperty(obj, 'parent', {
650
- configurable: true,
651
- writable: true,
652
- enumerable: false,
653
- value: parent || null
654
- });
655
- }
656
- return obj;
657
- }
658
-
659
- /* eslint-enable @wordpress/no-unused-vars-before-return */
660
- //# sourceMappingURL=parse.js.map