@plaudit/gutenberg-api-extensions 2.78.2 → 2.80.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 (485) hide show
  1. package/dist/blocks/MoveError.js +10 -0
  2. package/dist/blocks/MoveError.js.map +1 -0
  3. package/{build → dist}/blocks/PathError.js +7 -3
  4. package/dist/blocks/PathError.js.map +1 -0
  5. package/{build → dist}/blocks/SNPFlexibleItemsListComponent.d.ts +1 -1
  6. package/dist/blocks/SNPFlexibleItemsListComponent.js +18 -0
  7. package/dist/blocks/SNPFlexibleItemsListComponent.js.map +1 -0
  8. package/{build → dist}/blocks/SNPGroupComponent.d.ts +2 -2
  9. package/dist/blocks/SNPGroupComponent.js +20 -0
  10. package/dist/blocks/SNPGroupComponent.js.map +1 -0
  11. package/{build → dist}/blocks/SNPListComponent.d.ts +1 -1
  12. package/dist/blocks/SNPListComponent.js +18 -0
  13. package/dist/blocks/SNPListComponent.js.map +1 -0
  14. package/dist/blocks/SNPTreeContext.js +14 -0
  15. package/dist/blocks/SNPTreeContext.js.map +1 -0
  16. package/dist/blocks/basic-custom-block-bindings-support.js +157 -0
  17. package/dist/blocks/basic-custom-block-bindings-support.js.map +1 -0
  18. package/dist/blocks/common-native-property-constructors.d.ts +13 -0
  19. package/{build → dist}/blocks/common-native-property-constructors.js +138 -143
  20. package/dist/blocks/common-native-property-constructors.js.map +1 -0
  21. package/{build → dist}/blocks/conditions.js +12 -7
  22. package/dist/blocks/conditions.js.map +1 -0
  23. package/dist/blocks/csnp-api.d.ts +166 -0
  24. package/dist/blocks/csnp-api.js +74 -0
  25. package/dist/blocks/csnp-api.js.map +1 -0
  26. package/{build → dist}/blocks/data-controller-manager.js +4 -1
  27. package/dist/blocks/data-controller-manager.js.map +1 -0
  28. package/{build → dist}/blocks/data-controller.js +74 -70
  29. package/dist/blocks/data-controller.js.map +1 -0
  30. package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/select.js +14 -11
  31. package/dist/blocks/hooks/built-in-suspendable-option-protocols/select.js.map +1 -0
  32. package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/settings.js +9 -6
  33. package/dist/blocks/hooks/built-in-suspendable-option-protocols/settings.js.map +1 -0
  34. package/{build → dist}/blocks/hooks/useSuspendableOptions.d.ts +1 -1
  35. package/{build → dist}/blocks/hooks/useSuspendableOptions.js +30 -23
  36. package/dist/blocks/hooks/useSuspendableOptions.js.map +1 -0
  37. package/dist/blocks/index.js +35 -0
  38. package/dist/blocks/index.js.map +1 -0
  39. package/{build → dist}/blocks/layered-styles-api.d.ts +2 -2
  40. package/{build → dist}/blocks/layered-styles-api.js +10 -6
  41. package/dist/blocks/layered-styles-api.js.map +1 -0
  42. package/{build → dist}/blocks/layered-styles-impl.js +14 -9
  43. package/dist/blocks/layered-styles-impl.js.map +1 -0
  44. package/{build → dist}/blocks/layout/LaidOutProperty.d.ts +1 -2
  45. package/dist/blocks/layout/LaidOutProperty.js +47 -0
  46. package/dist/blocks/layout/LaidOutProperty.js.map +1 -0
  47. package/dist/blocks/layout/LaidOutPropertyRow.js +15 -0
  48. package/dist/blocks/layout/LaidOutPropertyRow.js.map +1 -0
  49. package/{build → dist}/blocks/layout/NodeContext.d.ts +2 -2
  50. package/dist/blocks/layout/NodeContext.js +44 -0
  51. package/dist/blocks/layout/NodeContext.js.map +1 -0
  52. package/dist/blocks/layout/PanelRoot.js +29 -0
  53. package/dist/blocks/layout/PanelRoot.js.map +1 -0
  54. package/{build → dist}/blocks/layout/TabsRoot.js +16 -13
  55. package/dist/blocks/layout/TabsRoot.js.map +1 -0
  56. package/dist/blocks/layout/ToolsPanelContext.js +23 -0
  57. package/dist/blocks/layout/ToolsPanelContext.js.map +1 -0
  58. package/dist/blocks/shared-exportable-types.js +3 -0
  59. package/dist/blocks/shared-internal-types.js +3 -0
  60. package/{build → dist}/blocks/simple-block.d.ts +1 -1
  61. package/dist/blocks/simple-block.js +45 -0
  62. package/dist/blocks/simple-block.js.map +1 -0
  63. package/{build → dist}/blocks/simple-native-property-api.d.ts +1 -1
  64. package/{build → dist}/blocks/simple-native-property-api.js +16 -10
  65. package/dist/blocks/simple-native-property-api.js.map +1 -0
  66. package/{build → dist}/blocks/simple-native-property-impl.js +60 -55
  67. package/dist/blocks/simple-native-property-impl.js.map +1 -0
  68. package/{build → dist}/blocks/simple-native-property-internal-shared.js +6 -2
  69. package/dist/blocks/simple-native-property-internal-shared.js.map +1 -0
  70. package/{build → dist}/blocks/snp-api.d.ts +1 -0
  71. package/dist/blocks/snp-api.js +7 -0
  72. package/dist/blocks/snp-api.js.map +1 -0
  73. package/{build → dist}/blocks/snp-data-store.js +8 -4
  74. package/dist/blocks/snp-data-store.js.map +1 -0
  75. package/{build → dist}/blocks/utilities.d.ts +1 -1
  76. package/dist/blocks/utilities.js +79 -0
  77. package/dist/blocks/utilities.js.map +1 -0
  78. package/{build → dist}/controls/AsynchronousFormTokenField.d.ts +1 -1
  79. package/dist/controls/AsynchronousFormTokenField.js +36 -0
  80. package/dist/controls/AsynchronousFormTokenField.js.map +1 -0
  81. package/{build → dist}/controls/BaseSortableItemsControl.d.ts +3 -3
  82. package/dist/controls/BaseSortableItemsControl.js +25 -0
  83. package/dist/controls/BaseSortableItemsControl.js.map +1 -0
  84. package/{build → dist}/controls/ExtendedFormTokenField.d.ts +3 -3
  85. package/dist/controls/ExtendedFormTokenField.js +64 -0
  86. package/dist/controls/ExtendedFormTokenField.js.map +1 -0
  87. package/{build → dist}/controls/ExtendedPostPicker.d.ts +2 -2
  88. package/dist/controls/ExtendedPostPicker.js +28 -0
  89. package/dist/controls/ExtendedPostPicker.js.map +1 -0
  90. package/dist/controls/ExtendedRadioControl.d.ts +12 -0
  91. package/dist/controls/ExtendedRadioControl.js +33 -0
  92. package/dist/controls/ExtendedRadioControl.js.map +1 -0
  93. package/{build → dist}/controls/ExtendedTaxonomyPicker.d.ts +1 -1
  94. package/dist/controls/ExtendedTaxonomyPicker.js +71 -0
  95. package/dist/controls/ExtendedTaxonomyPicker.js.map +1 -0
  96. package/{build → dist}/controls/ExtendedTermPicker.d.ts +1 -1
  97. package/dist/controls/ExtendedTermPicker.js +33 -0
  98. package/dist/controls/ExtendedTermPicker.js.map +1 -0
  99. package/dist/controls/ExtendedTextareaControl.d.ts +12 -0
  100. package/{build → dist}/controls/ExtendedTextareaControl.js +15 -12
  101. package/dist/controls/ExtendedTextareaControl.js.map +1 -0
  102. package/dist/controls/ExtendedUserPicker.d.ts +21 -0
  103. package/dist/controls/ExtendedUserPicker.js +28 -0
  104. package/dist/controls/ExtendedUserPicker.js.map +1 -0
  105. package/{build → dist}/controls/FullSizeToggleControl.d.ts +6 -4
  106. package/dist/controls/FullSizeToggleControl.js +110 -0
  107. package/dist/controls/FullSizeToggleControl.js.map +1 -0
  108. package/{build → dist}/controls/ImageControl.d.ts +1 -1
  109. package/dist/controls/ImageControl.js +81 -0
  110. package/dist/controls/ImageControl.js.map +1 -0
  111. package/{build → dist}/controls/InspectorPanel.d.ts +4 -3
  112. package/dist/controls/InspectorPanel.js +29 -0
  113. package/dist/controls/InspectorPanel.js.map +1 -0
  114. package/{build → dist}/controls/LazySuggestionsComboboxControl.d.ts +5 -1
  115. package/dist/controls/LazySuggestionsComboboxControl.js +32 -0
  116. package/dist/controls/LazySuggestionsComboboxControl.js.map +1 -0
  117. package/{build → dist}/controls/MultiSelectControl.d.ts +1 -1
  118. package/dist/controls/MultiSelectControl.js +33 -0
  119. package/dist/controls/MultiSelectControl.js.map +1 -0
  120. package/{build → dist}/controls/PickOne.d.ts +1 -1
  121. package/dist/controls/PickOne.js +54 -0
  122. package/dist/controls/PickOne.js.map +1 -0
  123. package/{build → dist}/controls/PromisableComponent.d.ts +2 -2
  124. package/{build → dist}/controls/PromisableComponent.js +14 -11
  125. package/dist/controls/PromisableComponent.js.map +1 -0
  126. package/{build → dist}/controls/ProperLinkControl.d.ts +7 -7
  127. package/dist/controls/ProperLinkControl.js +59 -0
  128. package/dist/controls/ProperLinkControl.js.map +1 -0
  129. package/dist/controls/SimpleToggle.js +11 -0
  130. package/dist/controls/SimpleToggle.js.map +1 -0
  131. package/dist/controls/SortableFlexibleItemsControl.js +18 -0
  132. package/dist/controls/SortableFlexibleItemsControl.js.map +1 -0
  133. package/dist/controls/SortableItemsControl.js +15 -0
  134. package/dist/controls/SortableItemsControl.js.map +1 -0
  135. package/dist/controls/basicNumericallyIdedItemPicker.d.ts +22 -0
  136. package/dist/controls/basicNumericallyIdedItemPicker.js +37 -0
  137. package/dist/controls/basicNumericallyIdedItemPicker.js.map +1 -0
  138. package/{build → dist}/controls/hooks/useImprovedTokenManager.d.ts +7 -5
  139. package/{build → dist}/controls/hooks/useImprovedTokenManager.js +21 -15
  140. package/dist/controls/hooks/useImprovedTokenManager.js.map +1 -0
  141. package/{build → dist}/controls/hooks/useMultiSingleConversionLayer.d.ts +1 -1
  142. package/dist/controls/hooks/useMultiSingleConversionLayer.js +14 -0
  143. package/dist/controls/hooks/useMultiSingleConversionLayer.js.map +1 -0
  144. package/dist/controls/hooks/useNonRenderingCounter.js +9 -0
  145. package/dist/controls/hooks/useNonRenderingCounter.js.map +1 -0
  146. package/{build → dist}/controls/hooks/useOutputMemoizingFilter.js +7 -4
  147. package/dist/controls/hooks/useOutputMemoizingFilter.js.map +1 -0
  148. package/{build → dist}/controls/hooks/useSortableItemsModel.js +14 -11
  149. package/dist/controls/hooks/useSortableItemsModel.js.map +1 -0
  150. package/{build → dist}/controls/hooks/useSuggestions.js +16 -13
  151. package/dist/controls/hooks/useSuggestions.js.map +1 -0
  152. package/{build → dist}/controls/hooks/useTokenManager.d.ts +5 -3
  153. package/{build → dist}/controls/hooks/useTokenManager.js +37 -34
  154. package/dist/controls/hooks/useTokenManager.js.map +1 -0
  155. package/{build → dist}/controls/index.d.ts +1 -0
  156. package/dist/controls/index.js +41 -0
  157. package/dist/controls/index.js.map +1 -0
  158. package/{build → dist}/controls/shared.js +18 -8
  159. package/dist/controls/shared.js.map +1 -0
  160. package/dist/controls/types.js +3 -0
  161. package/dist/editor/post-featured-image.js +125 -0
  162. package/dist/editor/post-featured-image.js.map +1 -0
  163. package/dist/editor/simple-gutenberg-endpoints-api.js +26 -0
  164. package/dist/editor/simple-gutenberg-endpoints-api.js.map +1 -0
  165. package/{build → dist}/editor/simple-gutenberg-endpoints-impl.js +24 -17
  166. package/dist/editor/simple-gutenberg-endpoints-impl.js.map +1 -0
  167. package/dist/index.js +39 -0
  168. package/dist/index.js.map +1 -0
  169. package/dist/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js +27 -0
  170. package/dist/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js.map +1 -0
  171. package/{build → dist}/lib/gutenberg-api-extensions-state/general-logic.js +12 -8
  172. package/dist/lib/gutenberg-api-extensions-state/general-logic.js.map +1 -0
  173. package/{build → dist}/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js +10 -6
  174. package/dist/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js.map +1 -0
  175. package/{build → dist}/lib/gutenberg-api-extensions-state/snp-logic.js +33 -26
  176. package/dist/lib/gutenberg-api-extensions-state/snp-logic.js.map +1 -0
  177. package/{build → dist}/lib/gutenberg-api-extensions-state.d.ts +2 -2
  178. package/dist/lib/gutenberg-api-extensions-state.js +52 -0
  179. package/dist/lib/gutenberg-api-extensions-state.js.map +1 -0
  180. package/{build → dist}/lib/helpers.d.ts +3 -3
  181. package/{build → dist}/lib/helpers.js +13 -6
  182. package/dist/lib/helpers.js.map +1 -0
  183. package/dist/lib/plaudit-icons/column-1.js +6 -0
  184. package/dist/lib/plaudit-icons/column-1.js.map +1 -0
  185. package/dist/lib/plaudit-icons/column-2.js +6 -0
  186. package/dist/lib/plaudit-icons/column-2.js.map +1 -0
  187. package/dist/lib/plaudit-icons/column-3.js +6 -0
  188. package/dist/lib/plaudit-icons/column-3.js.map +1 -0
  189. package/dist/lib/plaudit-icons/placement-center.js +6 -0
  190. package/dist/lib/plaudit-icons/placement-center.js.map +1 -0
  191. package/dist/lib/plaudit-icons/placement-end.js +6 -0
  192. package/dist/lib/plaudit-icons/placement-end.js.map +1 -0
  193. package/dist/lib/plaudit-icons/placement-start.js +6 -0
  194. package/dist/lib/plaudit-icons/placement-start.js.map +1 -0
  195. package/dist/lib/plaudit-icons/placement-stretch.js +6 -0
  196. package/dist/lib/plaudit-icons/placement-stretch.js.map +1 -0
  197. package/dist/lib/plaudit-icons/plaudit-icon.js +6 -0
  198. package/dist/lib/plaudit-icons/plaudit-icon.js.map +1 -0
  199. package/dist/lib/plaudit-icons/reusable-block-marker.js +6 -0
  200. package/{build → dist}/lib/plaudit-icons/reusable-block-marker.js.map +1 -1
  201. package/dist/lib/plaudit-icons.js +29 -0
  202. package/dist/lib/plaudit-icons.js.map +1 -0
  203. package/{build → dist}/lib/suspense/promise-handlers.js +16 -7
  204. package/dist/lib/suspense/promise-handlers.js.map +1 -0
  205. package/{build → dist}/lib/suspense.d.ts +2 -2
  206. package/dist/lib/suspense.js +31 -0
  207. package/dist/lib/suspense.js.map +1 -0
  208. package/{build → dist}/lib/useful-types.d.ts +4 -1
  209. package/dist/lib/useful-types.js +11 -0
  210. package/dist/lib/useful-types.js.map +1 -0
  211. package/package.json +23 -31
  212. package/src/blocks/MoveError.ts +7 -0
  213. package/src/blocks/PathError.ts +18 -0
  214. package/src/blocks/SNPFlexibleItemsListComponent.tsx +30 -0
  215. package/src/blocks/SNPGroupComponent.tsx +38 -0
  216. package/src/blocks/SNPListComponent.tsx +25 -0
  217. package/src/blocks/SNPTreeContext.tsx +13 -0
  218. package/src/blocks/basic-custom-block-bindings-support.tsx +243 -0
  219. package/src/blocks/common-native-property-constructors.tsx +877 -0
  220. package/src/blocks/conditions.ts +260 -0
  221. package/src/blocks/csnp-api.ts +214 -0
  222. package/src/blocks/data-controller-manager.ts +50 -0
  223. package/src/blocks/data-controller.ts +736 -0
  224. package/src/blocks/hooks/built-in-suspendable-option-protocols/select.ts +51 -0
  225. package/src/blocks/hooks/built-in-suspendable-option-protocols/settings.ts +70 -0
  226. package/src/blocks/hooks/useSuspendableOptions.ts +123 -0
  227. package/src/blocks/index.ts +20 -0
  228. package/src/blocks/layered-styles-api.ts +142 -0
  229. package/src/blocks/layered-styles-impl.ts +94 -0
  230. package/src/blocks/layout/LaidOutProperty.tsx +72 -0
  231. package/src/blocks/layout/LaidOutPropertyRow.tsx +22 -0
  232. package/src/blocks/layout/NodeContext.tsx +54 -0
  233. package/src/blocks/layout/PanelRoot.tsx +33 -0
  234. package/src/blocks/layout/TabsRoot.tsx +56 -0
  235. package/src/blocks/layout/ToolsPanelContext.tsx +22 -0
  236. package/src/blocks/shared-exportable-types.ts +6 -0
  237. package/src/blocks/shared-internal-types.ts +18 -0
  238. package/src/blocks/simple-block.tsx +74 -0
  239. package/src/blocks/simple-native-property-api.ts +170 -0
  240. package/src/blocks/simple-native-property-impl.tsx +329 -0
  241. package/src/blocks/simple-native-property-internal-shared.ts +46 -0
  242. package/src/blocks/snp-api.ts +5 -0
  243. package/src/blocks/snp-data-store.ts +66 -0
  244. package/src/blocks/utilities.ts +80 -0
  245. package/src/controls/AsynchronousFormTokenField.tsx +85 -0
  246. package/src/controls/BaseSortableItemsControl.tsx +84 -0
  247. package/src/controls/ExtendedFormTokenField.tsx +121 -0
  248. package/src/controls/ExtendedPostPicker.ts +57 -0
  249. package/src/controls/ExtendedRadioControl.tsx +107 -0
  250. package/src/controls/ExtendedTaxonomyPicker.tsx +100 -0
  251. package/src/controls/ExtendedTermPicker.tsx +62 -0
  252. package/src/controls/ExtendedTextareaControl.tsx +65 -0
  253. package/src/controls/ExtendedUserPicker.ts +56 -0
  254. package/src/controls/FullSizeToggleControl.tsx +94 -0
  255. package/src/controls/ImageControl.tsx +143 -0
  256. package/src/controls/InspectorPanel.tsx +37 -0
  257. package/src/controls/LazySuggestionsComboboxControl.tsx +62 -0
  258. package/src/controls/MultiSelectControl.tsx +59 -0
  259. package/src/controls/PickOne.tsx +84 -0
  260. package/src/controls/PromisableComponent.tsx +56 -0
  261. package/src/controls/ProperLinkControl.tsx +93 -0
  262. package/src/controls/SimpleToggle.tsx +9 -0
  263. package/src/controls/SortableFlexibleItemsControl.tsx +35 -0
  264. package/src/controls/SortableItemsControl.tsx +18 -0
  265. package/src/controls/basicNumericallyIdedItemPicker.tsx +76 -0
  266. package/src/controls/hooks/useImprovedTokenManager.ts +157 -0
  267. package/src/controls/hooks/useMultiSingleConversionLayer.ts +17 -0
  268. package/src/controls/hooks/useNonRenderingCounter.ts +6 -0
  269. package/src/controls/hooks/useOutputMemoizingFilter.ts +16 -0
  270. package/src/controls/hooks/useSortableItemsModel.ts +196 -0
  271. package/src/controls/hooks/useSuggestions.ts +91 -0
  272. package/src/controls/hooks/useTokenManager.ts +177 -0
  273. package/{build/controls/index.js → src/controls/index.ts} +4 -2
  274. package/src/controls/shared.ts +50 -0
  275. package/src/controls/types.ts +18 -0
  276. package/src/editor/post-featured-image.tsx +161 -0
  277. package/src/editor/simple-gutenberg-endpoints-api.ts +31 -0
  278. package/src/editor/simple-gutenberg-endpoints-impl.ts +119 -0
  279. package/src/index.ts +32 -0
  280. package/src/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.ts +34 -0
  281. package/src/lib/gutenberg-api-extensions-state/general-logic.ts +41 -0
  282. package/src/lib/gutenberg-api-extensions-state/layered-block-styles-logic.ts +42 -0
  283. package/src/lib/gutenberg-api-extensions-state/snp-logic.ts +240 -0
  284. package/src/lib/gutenberg-api-extensions-state.ts +69 -0
  285. package/src/lib/helpers.ts +114 -0
  286. package/src/lib/plaudit-icons/column-1.tsx +6 -0
  287. package/src/lib/plaudit-icons/column-2.tsx +6 -0
  288. package/src/lib/plaudit-icons/column-3.tsx +6 -0
  289. package/src/lib/plaudit-icons/placement-center.tsx +3 -0
  290. package/src/lib/plaudit-icons/placement-end.tsx +3 -0
  291. package/src/lib/plaudit-icons/placement-start.tsx +3 -0
  292. package/src/lib/plaudit-icons/placement-stretch.tsx +3 -0
  293. package/src/lib/plaudit-icons/plaudit-icon.tsx +4 -0
  294. package/src/lib/plaudit-icons/reusable-block-marker.tsx +3 -0
  295. package/{build/lib/plaudit-icons.js → src/lib/plaudit-icons.ts} +1 -1
  296. package/src/lib/suspense/promise-handlers.ts +72 -0
  297. package/src/lib/suspense.tsx +18 -0
  298. package/src/lib/useful-types.ts +65 -0
  299. package/build/blocks/MoveError.js +0 -6
  300. package/build/blocks/MoveError.js.map +0 -1
  301. package/build/blocks/PathError.js.map +0 -1
  302. package/build/blocks/SNPFlexibleItemsListComponent.js +0 -15
  303. package/build/blocks/SNPFlexibleItemsListComponent.js.map +0 -1
  304. package/build/blocks/SNPGroupComponent.js +0 -17
  305. package/build/blocks/SNPGroupComponent.js.map +0 -1
  306. package/build/blocks/SNPListComponent.js +0 -15
  307. package/build/blocks/SNPListComponent.js.map +0 -1
  308. package/build/blocks/SNPTreeContext.js +0 -10
  309. package/build/blocks/SNPTreeContext.js.map +0 -1
  310. package/build/blocks/basic-custom-block-bindings-support.js +0 -150
  311. package/build/blocks/basic-custom-block-bindings-support.js.map +0 -1
  312. package/build/blocks/common-native-property-constructors.d.ts +0 -195
  313. package/build/blocks/common-native-property-constructors.js.map +0 -1
  314. package/build/blocks/conditions.js.map +0 -1
  315. package/build/blocks/data-controller-manager.js.map +0 -1
  316. package/build/blocks/data-controller.js.map +0 -1
  317. package/build/blocks/hooks/built-in-suspendable-option-protocols/select.js.map +0 -1
  318. package/build/blocks/hooks/built-in-suspendable-option-protocols/settings.js.map +0 -1
  319. package/build/blocks/hooks/useSuspendableOptions.js.map +0 -1
  320. package/build/blocks/index.js +0 -15
  321. package/build/blocks/index.js.map +0 -1
  322. package/build/blocks/layered-styles-api.js.map +0 -1
  323. package/build/blocks/layered-styles-impl.js.map +0 -1
  324. package/build/blocks/layout/LaidOutProperty.js +0 -44
  325. package/build/blocks/layout/LaidOutProperty.js.map +0 -1
  326. package/build/blocks/layout/LaidOutPropertyRow.js +0 -12
  327. package/build/blocks/layout/LaidOutPropertyRow.js.map +0 -1
  328. package/build/blocks/layout/NodeContext.js +0 -37
  329. package/build/blocks/layout/NodeContext.js.map +0 -1
  330. package/build/blocks/layout/PanelRoot.js +0 -26
  331. package/build/blocks/layout/PanelRoot.js.map +0 -1
  332. package/build/blocks/layout/TabsRoot.js.map +0 -1
  333. package/build/blocks/layout/ToolsPanelContext.js +0 -18
  334. package/build/blocks/layout/ToolsPanelContext.js.map +0 -1
  335. package/build/blocks/shared-exportable-types.js +0 -2
  336. package/build/blocks/shared-internal-types.js +0 -2
  337. package/build/blocks/simple-block.js +0 -41
  338. package/build/blocks/simple-block.js.map +0 -1
  339. package/build/blocks/simple-native-property-api.js.map +0 -1
  340. package/build/blocks/simple-native-property-impl.js.map +0 -1
  341. package/build/blocks/simple-native-property-internal-shared.js.map +0 -1
  342. package/build/blocks/snp-api.js +0 -2
  343. package/build/blocks/snp-api.js.map +0 -1
  344. package/build/blocks/snp-data-store.js.map +0 -1
  345. package/build/blocks/utilities.js +0 -67
  346. package/build/blocks/utilities.js.map +0 -1
  347. package/build/controls/AsynchronousFormTokenField.js +0 -32
  348. package/build/controls/AsynchronousFormTokenField.js.map +0 -1
  349. package/build/controls/BaseSortableItemsControl.js +0 -22
  350. package/build/controls/BaseSortableItemsControl.js.map +0 -1
  351. package/build/controls/ExtendedFormTokenField.js +0 -58
  352. package/build/controls/ExtendedFormTokenField.js.map +0 -1
  353. package/build/controls/ExtendedPostPicker.js +0 -45
  354. package/build/controls/ExtendedPostPicker.js.map +0 -1
  355. package/build/controls/ExtendedRadioControl.d.ts +0 -10
  356. package/build/controls/ExtendedRadioControl.js +0 -30
  357. package/build/controls/ExtendedRadioControl.js.map +0 -1
  358. package/build/controls/ExtendedTaxonomyPicker.js +0 -68
  359. package/build/controls/ExtendedTaxonomyPicker.js.map +0 -1
  360. package/build/controls/ExtendedTermPicker.js +0 -27
  361. package/build/controls/ExtendedTermPicker.js.map +0 -1
  362. package/build/controls/ExtendedTextareaControl.d.ts +0 -14
  363. package/build/controls/ExtendedTextareaControl.js.map +0 -1
  364. package/build/controls/FullSizeToggleControl.js +0 -70
  365. package/build/controls/FullSizeToggleControl.js.map +0 -1
  366. package/build/controls/ImageControl.js +0 -76
  367. package/build/controls/ImageControl.js.map +0 -1
  368. package/build/controls/InspectorPanel.js +0 -26
  369. package/build/controls/InspectorPanel.js.map +0 -1
  370. package/build/controls/LazySuggestionsComboboxControl.js +0 -29
  371. package/build/controls/LazySuggestionsComboboxControl.js.map +0 -1
  372. package/build/controls/MultiSelectControl.js +0 -30
  373. package/build/controls/MultiSelectControl.js.map +0 -1
  374. package/build/controls/PickOne.js +0 -48
  375. package/build/controls/PickOne.js.map +0 -1
  376. package/build/controls/PromisableComponent.js.map +0 -1
  377. package/build/controls/ProperLinkControl.js +0 -56
  378. package/build/controls/ProperLinkControl.js.map +0 -1
  379. package/build/controls/SimpleToggle.js +0 -8
  380. package/build/controls/SimpleToggle.js.map +0 -1
  381. package/build/controls/SortableFlexibleItemsControl.js +0 -15
  382. package/build/controls/SortableFlexibleItemsControl.js.map +0 -1
  383. package/build/controls/SortableItemsControl.js +0 -12
  384. package/build/controls/SortableItemsControl.js.map +0 -1
  385. package/build/controls/hooks/useImprovedTokenManager.js.map +0 -1
  386. package/build/controls/hooks/useMultiSingleConversionLayer.js +0 -11
  387. package/build/controls/hooks/useMultiSingleConversionLayer.js.map +0 -1
  388. package/build/controls/hooks/useNonRenderingCounter.js +0 -6
  389. package/build/controls/hooks/useNonRenderingCounter.js.map +0 -1
  390. package/build/controls/hooks/useOutputMemoizingFilter.js.map +0 -1
  391. package/build/controls/hooks/useSortableItemsModel.js.map +0 -1
  392. package/build/controls/hooks/useSuggestions.js.map +0 -1
  393. package/build/controls/hooks/useTokenManager.js.map +0 -1
  394. package/build/controls/index.js.map +0 -1
  395. package/build/controls/shared.js.map +0 -1
  396. package/build/controls/types.js +0 -2
  397. package/build/editor/post-featured-image.js +0 -122
  398. package/build/editor/post-featured-image.js.map +0 -1
  399. package/build/editor/simple-gutenberg-endpoints-api.js +0 -22
  400. package/build/editor/simple-gutenberg-endpoints-api.js.map +0 -1
  401. package/build/editor/simple-gutenberg-endpoints-impl.js.map +0 -1
  402. package/build/index.js +0 -22
  403. package/build/index.js.map +0 -1
  404. package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js +0 -23
  405. package/build/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.js.map +0 -1
  406. package/build/lib/gutenberg-api-extensions-state/general-logic.js.map +0 -1
  407. package/build/lib/gutenberg-api-extensions-state/layered-block-styles-logic.js.map +0 -1
  408. package/build/lib/gutenberg-api-extensions-state/snp-logic.js.map +0 -1
  409. package/build/lib/gutenberg-api-extensions-state.js +0 -48
  410. package/build/lib/gutenberg-api-extensions-state.js.map +0 -1
  411. package/build/lib/helpers.js.map +0 -1
  412. package/build/lib/plaudit-icons/column-1.js +0 -3
  413. package/build/lib/plaudit-icons/column-1.js.map +0 -1
  414. package/build/lib/plaudit-icons/column-2.js +0 -3
  415. package/build/lib/plaudit-icons/column-2.js.map +0 -1
  416. package/build/lib/plaudit-icons/column-3.js +0 -3
  417. package/build/lib/plaudit-icons/column-3.js.map +0 -1
  418. package/build/lib/plaudit-icons/placement-center.js +0 -3
  419. package/build/lib/plaudit-icons/placement-center.js.map +0 -1
  420. package/build/lib/plaudit-icons/placement-end.js +0 -3
  421. package/build/lib/plaudit-icons/placement-end.js.map +0 -1
  422. package/build/lib/plaudit-icons/placement-start.js +0 -3
  423. package/build/lib/plaudit-icons/placement-start.js.map +0 -1
  424. package/build/lib/plaudit-icons/placement-stretch.js +0 -3
  425. package/build/lib/plaudit-icons/placement-stretch.js.map +0 -1
  426. package/build/lib/plaudit-icons/plaudit-icon.js +0 -3
  427. package/build/lib/plaudit-icons/plaudit-icon.js.map +0 -1
  428. package/build/lib/plaudit-icons/reusable-block-marker.js +0 -3
  429. package/build/lib/plaudit-icons.js.map +0 -1
  430. package/build/lib/suspense/promise-handlers.js.map +0 -1
  431. package/build/lib/suspense.js +0 -14
  432. package/build/lib/suspense.js.map +0 -1
  433. package/build/lib/useful-types.js +0 -7
  434. package/build/lib/useful-types.js.map +0 -1
  435. /package/{build → dist}/blocks/MoveError.d.ts +0 -0
  436. /package/{build → dist}/blocks/PathError.d.ts +0 -0
  437. /package/{build → dist}/blocks/SNPTreeContext.d.ts +0 -0
  438. /package/{build → dist}/blocks/basic-custom-block-bindings-support.d.ts +0 -0
  439. /package/{build → dist}/blocks/conditions.d.ts +0 -0
  440. /package/{build → dist}/blocks/data-controller-manager.d.ts +0 -0
  441. /package/{build → dist}/blocks/data-controller.d.ts +0 -0
  442. /package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/select.d.ts +0 -0
  443. /package/{build → dist}/blocks/hooks/built-in-suspendable-option-protocols/settings.d.ts +0 -0
  444. /package/{build → dist}/blocks/index.d.ts +0 -0
  445. /package/{build → dist}/blocks/layered-styles-impl.d.ts +0 -0
  446. /package/{build → dist}/blocks/layout/LaidOutPropertyRow.d.ts +0 -0
  447. /package/{build → dist}/blocks/layout/PanelRoot.d.ts +0 -0
  448. /package/{build → dist}/blocks/layout/TabsRoot.d.ts +0 -0
  449. /package/{build → dist}/blocks/layout/ToolsPanelContext.d.ts +0 -0
  450. /package/{build → dist}/blocks/shared-exportable-types.d.ts +0 -0
  451. /package/{build → dist}/blocks/shared-exportable-types.js.map +0 -0
  452. /package/{build → dist}/blocks/shared-internal-types.d.ts +0 -0
  453. /package/{build → dist}/blocks/shared-internal-types.js.map +0 -0
  454. /package/{build → dist}/blocks/simple-native-property-impl.d.ts +0 -0
  455. /package/{build → dist}/blocks/simple-native-property-internal-shared.d.ts +0 -0
  456. /package/{build → dist}/blocks/snp-data-store.d.ts +0 -0
  457. /package/{build → dist}/controls/SimpleToggle.d.ts +0 -0
  458. /package/{build → dist}/controls/SortableFlexibleItemsControl.d.ts +0 -0
  459. /package/{build → dist}/controls/SortableItemsControl.d.ts +0 -0
  460. /package/{build → dist}/controls/hooks/useNonRenderingCounter.d.ts +0 -0
  461. /package/{build → dist}/controls/hooks/useOutputMemoizingFilter.d.ts +0 -0
  462. /package/{build → dist}/controls/hooks/useSortableItemsModel.d.ts +0 -0
  463. /package/{build → dist}/controls/hooks/useSuggestions.d.ts +0 -0
  464. /package/{build → dist}/controls/shared.d.ts +0 -0
  465. /package/{build → dist}/controls/types.d.ts +0 -0
  466. /package/{build → dist}/controls/types.js.map +0 -0
  467. /package/{build → dist}/editor/post-featured-image.d.ts +0 -0
  468. /package/{build → dist}/editor/simple-gutenberg-endpoints-api.d.ts +0 -0
  469. /package/{build → dist}/editor/simple-gutenberg-endpoints-impl.d.ts +0 -0
  470. /package/{build → dist}/index.d.ts +0 -0
  471. /package/{build → dist}/lib/gutenberg-api-extensions-state/custom-block-bindings-support-logic.d.ts +0 -0
  472. /package/{build → dist}/lib/gutenberg-api-extensions-state/general-logic.d.ts +0 -0
  473. /package/{build → dist}/lib/gutenberg-api-extensions-state/layered-block-styles-logic.d.ts +0 -0
  474. /package/{build → dist}/lib/gutenberg-api-extensions-state/snp-logic.d.ts +0 -0
  475. /package/{build → dist}/lib/plaudit-icons/column-1.d.ts +0 -0
  476. /package/{build → dist}/lib/plaudit-icons/column-2.d.ts +0 -0
  477. /package/{build → dist}/lib/plaudit-icons/column-3.d.ts +0 -0
  478. /package/{build → dist}/lib/plaudit-icons/placement-center.d.ts +0 -0
  479. /package/{build → dist}/lib/plaudit-icons/placement-end.d.ts +0 -0
  480. /package/{build → dist}/lib/plaudit-icons/placement-start.d.ts +0 -0
  481. /package/{build → dist}/lib/plaudit-icons/placement-stretch.d.ts +0 -0
  482. /package/{build → dist}/lib/plaudit-icons/plaudit-icon.d.ts +0 -0
  483. /package/{build → dist}/lib/plaudit-icons/reusable-block-marker.d.ts +0 -0
  484. /package/{build → dist}/lib/plaudit-icons.d.ts +0 -0
  485. /package/{build → dist}/lib/suspense/promise-handlers.d.ts +0 -0
@@ -1,22 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { BaseControl, Button, useBaseControlProps } from "@wordpress/components";
3
- import { useCallback } from "@wordpress/element";
4
- import { dragHandle, Icon } from "@wordpress/icons";
5
- import { Reorder, useDragControls } from "framer-motion";
6
- import { useSortableItemsModel } from "./hooks/useSortableItemsModel";
7
- export function BaseSortableItemsControl({ value, onChange, onRemove, onReorder, onAdd, children: makeChild, min, max, label, Label, Messages, buttonsArea, emptyValue, ...wrapperProps }) {
8
- const { add: addHandler, commit, makeIndexedItemActions, keyedValues } = useSortableItemsModel({ onAdd, onChange, onRemove, onReorder, emptyValue, value });
9
- const listLength = value?.length ?? 0;
10
- const addDisabled = max !== undefined && listLength >= max;
11
- const removeDisabled = min !== undefined && listLength <= min;
12
- const { baseControlProps, controlProps } = useBaseControlProps({ ...wrapperProps, label: Label ? _jsx(Label, {}) : label });
13
- return _jsxs(BaseControl, { ...baseControlProps, children: [_jsx("div", { ...controlProps, className: "plaudit-sortable-items-container", children: _jsx(Reorder.Group, { axis: "y", onReorder: commit, values: keyedValues, children: keyedValues.map((datum, index) => _jsx(SortableItemsListNode, { addDisabled: addDisabled, datum: datum, index: index, listLength: listLength, makeChild: makeChild, makeIndexedItemActions: makeIndexedItemActions, removeDisabled: removeDisabled }, datum.key)) }) }), buttonsArea({ addHandler, disabled: addDisabled }), Messages && _jsx(Messages, {})] });
14
- }
15
- function SortableItemsListNode({ datum, index, listLength, makeChild, makeIndexedItemActions, removeDisabled }) {
16
- const { remove, moveUp, moveDown, change } = makeIndexedItemActions(index, datum.key);
17
- //TODO: If used, implement addBefore and addAfter the same way as moveUp and moveDown
18
- const dragControls = useDragControls();
19
- const dragStartHandler = useCallback((event) => dragControls.start(event), [dragControls]);
20
- return _jsxs(Reorder.Item, { className: "plaudit-sortable-items-row", "data-index": index, dragListener: false, dragControls: dragControls, layout: "position", value: datum, children: [_jsxs("div", { className: "plaudit-sortable-items-ordering-controls", children: [_jsx("div", { className: "plaudit-sortable-items-ordering-control", children: _jsx(Icon, { icon: dragHandle, onPointerDown: dragStartHandler }) }), _jsxs("div", { className: "plaudit-sortable-items-ordering-control", children: [_jsx(Button, { icon: "arrow-up", "aria-label": "Move Up", disabled: index < 1, onClick: moveUp }), _jsx(Button, { icon: "arrow-down", "aria-label": "Move Down", disabled: index >= listLength - 1, onClick: moveDown })] })] }), _jsx("div", { className: "plaudit-sortable-items-inputs plaudit-sortable-items-padded", children: makeChild(datum.value, change, index) }), _jsx("div", { className: "plaudit-sortable-items-presence-controls plaudit-sortable-items-padded", children: _jsx(Button, { icon: "remove", disabled: removeDisabled, onClick: remove, "aria-label": "Remove" }) })] });
21
- }
22
- //# sourceMappingURL=BaseSortableItemsControl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BaseSortableItemsControl.js","sourceRoot":"","sources":["../../src/controls/BaseSortableItemsControl.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAE/E,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAIlD,OAAO,EAAC,OAAO,EAAE,eAAe,EAAC,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAsC,qBAAqB,EAAC,MAAM,+BAA+B,CAAC;AAiBzG,MAAM,UAAU,wBAAwB,CAAI,EAC3C,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,YAAY,EAC1G;IAClC,MAAM,EAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,sBAAsB,EAAE,WAAW,EAAC,GAAG,qBAAqB,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAC,CAAC,CAAC;IAExJ,MAAM,UAAU,GAAG,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;IACtC,MAAM,WAAW,GAAG,GAAG,KAAK,SAAS,IAAI,UAAU,IAAI,GAAG,CAAC;IAC3D,MAAM,cAAc,GAAG,GAAG,KAAK,SAAS,IAAI,UAAU,IAAI,GAAG,CAAC;IAC9D,MAAM,EAAC,gBAAgB,EAAE,YAAY,EAAC,GAAG,mBAAmB,CAAC,EAAC,GAAG,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAC,KAAK,KAAG,CAAC,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;IAElH,OAAO,MAAC,WAAW,OAAK,gBAAgB,aACvC,iBAAS,YAAY,EAAE,SAAS,EAAC,kCAAkC,YAClE,KAAC,OAAO,CAAC,KAAK,IACb,IAAI,EAAC,GAAG,EAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAC/C,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAC,qBAAqB,IACjE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAkB,UAAU,EAAE,UAAU,EAC5F,SAAS,EAAE,SAAS,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,cAAc,EAAE,cAAc,IADzC,KAAK,CAAC,GAAG,CAEnE,CAAC,GACF,GACG,EACL,WAAW,CAAC,EAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAC,CAAC,EAChD,QAAQ,IAAI,KAAC,QAAQ,KAAG,IACZ,CAAC;AAChB,CAAC;AAOD,SAAS,qBAAqB,CAAI,EAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,sBAAsB,EAAE,cAAc,EAAgC;IAC7I,MAAM,EAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAC,GAAG,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACpF,qFAAqF;IAErF,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IACvC,MAAM,gBAAgB,GAAG,WAAW,CAAC,CAAC,KAAyB,EAAE,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAE/G,OAAO,MAAC,OAAO,CAAC,IAAI,IAAC,SAAS,EAAC,4BAA4B,gBAAa,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAC,UAAU,EAAC,KAAK,EAAE,KAAK,aAC7J,eAAK,SAAS,EAAC,0CAA0C,aACxD,cAAK,SAAS,EAAC,yCAAyC,YACvD,KAAC,IAAI,IAAC,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,gBAAgB,GAAI,GACtD,EACN,eAAK,SAAS,EAAC,yCAAyC,aACvD,KAAC,MAAM,IAAC,IAAI,EAAC,UAAU,gBAAY,SAAS,EAAC,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,EAAE,MAAM,GAAI,EACrF,KAAC,MAAM,IAAC,IAAI,EAAC,YAAY,gBAAY,WAAW,EAAC,QAAQ,EAAE,KAAK,IAAI,UAAU,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,GAAI,IACpG,IACD,EACN,cAAK,SAAS,EAAC,6DAA6D,YAC1E,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GACjC,EACN,cAAK,SAAS,EAAC,wEAAwE,YAGtF,KAAC,MAAM,IAAC,IAAI,EAAC,QAAQ,EAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,gBAAa,QAAQ,GAAE,GAGjF,IACQ,CAAC;AACjB,CAAC"}
@@ -1,58 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { Spinner, FormTokenField } from '@wordpress/components';
3
- import { useDebounce } from "@wordpress/compose";
4
- import { useSelect } from "@wordpress/data";
5
- import { useCallback, useEffect, useMemo, useRef, useState } from "@wordpress/element";
6
- import { __ } from "@wordpress/i18n";
7
- import { packDisplayTokenText, unpackDisplayedTokenText, useImprovedTokenManager, ValidationState } from "./hooks/useImprovedTokenManager";
8
- import { useMultiSingleConversionLayer } from "./hooks/useMultiSingleConversionLayer";
9
- export { packDisplayTokenText, unpackDisplayedTokenText, ValidationState };
10
- export function ExtendedFormTokenField(props) {
11
- const [debouncedInput, setDebouncedInput, setImmediateInput, input] = useDebouncedValue('');
12
- const tokenTitleCacheRef = useRef(undefined);
13
- if (tokenTitleCacheRef.current === undefined) {
14
- tokenTitleCacheRef.current = new Map();
15
- }
16
- const { rawSuggestions, isLoading, hasLoadingError } = useSelect((select, registry) => {
17
- if (!debouncedInput && props.initialSuggestions !== undefined) {
18
- return { rawSuggestions: props.initialSuggestions, isLoading: false };
19
- }
20
- const res = props.suggestionQuery(debouncedInput, select, registry);
21
- if (res === undefined) {
22
- return { rawSuggestions: props.initialSuggestions, isLoading: true };
23
- }
24
- return { rawSuggestions: res, isLoading: false, hasLoadingError: props.hasLoadingError?.(debouncedInput, select, registry) };
25
- }, [debouncedInput, props.initialSuggestions, props.suggestionQuery]);
26
- const suggestions = useMemo(() => rawSuggestions?.map(packDisplayTokenText), [rawSuggestions]);
27
- const [value, setValue] = useMultiSingleConversionLayer(props.value, props.onChange, props.stringToTokenConverter, props.multiple);
28
- const { currentTokens, isValidating, updateComponentValue, tokenStatusCache } = useImprovedTokenManager(value, setValue, props.validationQuery, props.stringToTokenConverter, tokenTitleCacheRef.current);
29
- // This is just a trick to avoid needing to repeat requests when pulling from suggestions
30
- useMemo(() => {
31
- if (rawSuggestions) {
32
- for (const suggestion of rawSuggestions) {
33
- if (suggestion.status !== undefined && !tokenStatusCache.has(suggestion.value)) {
34
- tokenStatusCache.set(suggestion.value, suggestion.status);
35
- }
36
- }
37
- }
38
- }, [rawSuggestions, tokenStatusCache]);
39
- const { hasValidationError } = useSelect((select, registry) => ({
40
- hasValidationError: props.hasValidationError?.(select, registry)
41
- }), [props.hasLoadingError, props.hasValidationError]);
42
- const { help, expandOnFocus = false } = props;
43
- //TODO: If focus is in field but user hasn't started typing, show a message telling them to start typing
44
- return _jsxs(_Fragment, { children: [_jsx(FormTokenField, { value: currentTokens, label: props.label, placeholder: "Start typing to see suggestions", suggestions: suggestions, onChange: updateComponentValue, displayTransform: useCallback((token) => tokenTitleCacheRef.current.get(unpackDisplayedTokenText(token).value) ?? token, [tokenTitleCacheRef]), maxLength: props.multiple !== false ? props.maxLength : 1, __experimentalValidateInput: props.validator, __experimentalAutoSelectFirstMatch: true, __experimentalExpandOnFocus: expandOnFocus, __experimentalShowHowTo: props.multiple !== false, onInputChange: setDebouncedInput, onFocus: useCallback(() => setImmediateInput(input), [input]) }), help && _jsx("div", { children: _jsx("span", { className: "components-form-token-field__help", children: help }) }), hasLoadingError && _jsxs("div", { children: [_jsx(Spinner, {}), _jsx("span", { className: "components-form-token-field__help", children: __("An Error Occurred While Loading Suggestions") })] }), isLoading && _jsxs("div", { children: [_jsx(Spinner, {}), _jsx("span", { className: "components-form-token-field__help", children: __("Updating Suggestions") })] }), hasValidationError && _jsxs("div", { children: [_jsx(Spinner, {}), _jsx("span", { className: "components-form-token-field__help", children: __("An Error Occurred While Validating") })] }), isValidating && _jsxs("div", { children: [_jsx(Spinner, {}), _jsx("span", { className: "components-form-token-field__help", children: __("Validating") })] })] });
45
- }
46
- function useDebouncedValue(defaultValue) {
47
- const [value, setValue] = useState(defaultValue);
48
- const [debouncedValue, setDebouncedState] = useState(defaultValue);
49
- const setDebounced = useDebounce(setDebouncedState, 100);
50
- useEffect(() => {
51
- setDebounced(value);
52
- }, [value, setDebounced]);
53
- return [debouncedValue, setValue, useCallback((value) => {
54
- setValue(value);
55
- setDebouncedState(value);
56
- }, [setValue, setDebounced]), value];
57
- }
58
- //# sourceMappingURL=ExtendedFormTokenField.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtendedFormTokenField.js","sourceRoot":"","sources":["../../src/controls/ExtendedFormTokenField.tsx"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import apiFetch from "@wordpress/api-fetch";
3
- import { useCallback } from "@wordpress/element";
4
- import { ExtendedFormTokenField, unpackDisplayedTokenText, ValidationState } from "./ExtendedFormTokenField";
5
- import { registerSimpleGutenbergApiEndpoint } from "../editor/simple-gutenberg-endpoints-api";
6
- import { isNumeric } from "./shared";
7
- registerSimpleGutenbergApiEndpoint("plaudit-common.post-table-search-options", data => apiFetch({ data, method: 'POST', path: "/plaudit/common/v1/post-table-search" }), {
8
- transformer: posts => posts.map(post => ({ value: post.id.toString(), title: post.title, status: ValidationState.Valid })),
9
- maxCachedResults: 10
10
- });
11
- registerSimpleGutenbergApiEndpoint("plaudit-common.post-table-search-validation", data => apiFetch({ data, method: 'POST', path: "/plaudit/common/v1/post-table-search" }), {
12
- transformer: posts => posts
13
- .map((post) => ({ value: post.id.toString(), title: post.title, status: ValidationState.Valid })),
14
- maxCachedResults: 10
15
- });
16
- export function ExtendedPostPicker(props) {
17
- const { multiple, value, postTypes, taxonomyQuery, ...remainder } = props;
18
- const suggestionQuery = useCallback((input, select) => {
19
- return select('plaudit/simple-gutenberg-apis')
20
- .get("plaudit-common.post-table-search-options", { search: input, postTypes: postTypes?.join(','), taxonomyQuery });
21
- }, [postTypes, taxonomyQuery]);
22
- const validationQuery = useCallback((idsBeingValidated, select) => {
23
- return select('plaudit/simple-gutenberg-apis')
24
- .get("plaudit-common.post-table-search-validation", { ids: idsBeingValidated.join(','), postTypes: postTypes?.join(','), taxonomyQuery });
25
- }, [postTypes, taxonomyQuery]);
26
- if (props.multiple === false) {
27
- return _jsx(ExtendedFormTokenField, { ...remainder, value: props.value, multiple: false, onChange: props.onChange, stringToTokenConverter: makeTokenFromSuggestion, suggestionQuery: suggestionQuery, validationQuery: validationQuery, validator: validator });
28
- }
29
- else {
30
- return _jsx(ExtendedFormTokenField, { ...remainder, value: props.value, multiple: true, onChange: props.onChange, stringToTokenConverter: makeTokenFromSuggestion, suggestionQuery: suggestionQuery, validationQuery: validationQuery, validator: validator });
31
- }
32
- }
33
- function makeTokenFromSuggestion(token) {
34
- if (isNumeric(token)) {
35
- return { value: token, status: ValidationState.Validating };
36
- }
37
- else {
38
- const { value, title } = unpackDisplayedTokenText(token);
39
- return { value, status: isNumeric(value) ? ValidationState.Validating : ValidationState.Invalid, title };
40
- }
41
- }
42
- function validator(token) {
43
- return /\(#([0-9]+)\)$/.exec(token)?.[1] !== undefined;
44
- }
45
- //# sourceMappingURL=ExtendedPostPicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtendedPostPicker.js","sourceRoot":"","sources":["../../src/controls/ExtendedPostPicker.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import type { WordPressComponentProps } from "@wordpress/components/build-types/context";
2
- import type { RadioControlProps } from "@wordpress/components/build-types/radio-control/types";
3
- import type { SNPControlSlots } from "../blocks";
4
- export type ExtendedRadioControlProps = WordPressComponentProps<RadioControlProps & {
5
- allowCustom?: boolean;
6
- }, 'input', false> & Partial<SNPControlSlots>;
7
- /**
8
- * This is a variant of WordPress'
9
- */
10
- export declare function ExtendedRadioControl(props: ExtendedRadioControlProps): import("react/jsx-runtime").JSX.Element | null;
@@ -1,30 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { BaseControl, __experimentalVStack as VStack } from "@wordpress/components";
3
- import { useInstanceId } from "@wordpress/compose";
4
- import { useCallback, useState } from "@wordpress/element";
5
- /**
6
- * This is a variant of WordPress'
7
- */
8
- export function ExtendedRadioControl(props) {
9
- const { label, className, selected, help, onChange, hideLabelFromVision, options = [], allowCustom, Label, Messages, ...additionalProps } = props;
10
- const instanceId = useInstanceId(ExtendedRadioControl);
11
- const id = `inspector-radio-control-${instanceId}`;
12
- const [valueIsCustom, setValueIsCustom] = useState(() => options.find(option => option.value === selected) === undefined);
13
- const [customValue, setCustomValue] = useState(valueIsCustom ? selected : "");
14
- const onChangeValue = useCallback((event) => {
15
- setValueIsCustom(options.find(option => option.value === event.target.value) === undefined);
16
- onChange(event.target.value);
17
- }, [onChange, options, setValueIsCustom]);
18
- const onChangeCustom = useCallback((e) => {
19
- onChangeValue(e);
20
- setValueIsCustom(true);
21
- setCustomValue(e.target.value);
22
- }, [onChangeValue, setValueIsCustom, setCustomValue]);
23
- if (!options?.length) {
24
- return null;
25
- }
26
- const distinctnessSet = new Set();
27
- const classNames = [...className?.split(/\s+/g) ?? [], 'components-radio-control'].filter(cn => distinctnessSet.add(cn)).join(' ');
28
- return (_jsxs(BaseControl, { __nextHasNoMarginBottom: true, label: Label ? _jsx(Label, {}) : label, id: id, hideLabelFromVision: hideLabelFromVision, help: help, className: classNames, children: [_jsxs(VStack, { spacing: 1, children: [options.map((option, index) => (_jsxs("div", { className: "components-radio-control__option", children: [_jsx("input", { id: `${id}-${index}`, className: "components-radio-control__input", type: "radio", name: id, value: option.value, onChange: onChangeValue, checked: option.value === selected, "aria-describedby": !!help ? `${id}__help` : undefined, ...additionalProps }), _jsx("label", { className: "components-radio-control__label", htmlFor: `${id}-${index}`, children: option.label })] }, `${id}-${index}`))), allowCustom && _jsxs("div", { className: "components-radio-control__option", children: [_jsx("input", { id: `${id}-${options.length}`, className: "components-radio-control__input", type: "radio", name: id, value: customValue ?? '', onChange: onChangeValue, checked: valueIsCustom, "aria-describedby": !!help ? `${id}__help` : undefined, ...additionalProps }), _jsx("label", { id: `${id}-custom-label`, className: "components-radio-control__label", htmlFor: `${id}-${options.length}`, children: "Custom:" }), _jsx("input", { "aria-labelledby": `${id}-custom-label`, type: "text", value: customValue ?? '', onChange: onChangeCustom })] }, `${id}-${options.length}`)] }), Messages && _jsx(Messages, {})] }));
29
- }
30
- //# sourceMappingURL=ExtendedRadioControl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtendedRadioControl.js","sourceRoot":"","sources":["../../src/controls/ExtendedRadioControl.tsx"],"names":[],"mappings":"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"}
@@ -1,68 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { store as coreStore } from "@wordpress/core-data";
3
- import { useSelect } from "@wordpress/data";
4
- import { useCallback, useMemo } from "@wordpress/element";
5
- import { useOutputMemoizingFilter } from "./hooks/useOutputMemoizingFilter";
6
- import { ExtendedFormTokenField, unpackDisplayedTokenText, ValidationState } from "./ExtendedFormTokenField";
7
- export function ExtendedTaxonomyPicker(props) {
8
- const { visibility, ...extendedFormTokenFieldProps } = props;
9
- const availableTaxonomies = useTaxonomiesFilteredByVisibility(visibility);
10
- const taxonomyVisibilityFilter = makeTaxonomyVisibilityFilter(visibility);
11
- const taxonomySuggestionQuery = useOutputMemoizingFilter((input, taxonomies) => {
12
- return taxonomies?.filter(taxonomy => !props.value?.includes(taxonomy.slug))
13
- .filter(taxonomy => taxonomy.name.toLowerCase().includes(input.toLowerCase()) || taxonomy.slug.toLowerCase().includes(input.toLowerCase()))
14
- .map(taxonomy => ({ value: taxonomy.slug, status: ValidationState.Valid, title: taxonomy.name })) ?? [];
15
- }, [props.value]);
16
- const taxonomyValidationQuery = useOutputMemoizingFilter((tokens, rawTaxonomies) => {
17
- if (rawTaxonomies === null) {
18
- return tokens.map(token => ({ value: token, status: ValidationState.Validating }));
19
- }
20
- const tokenItemCreator = (taxonomy) => {
21
- return [taxonomy.slug, { value: taxonomy.slug, status: ValidationState.Valid, title: taxonomy.name }];
22
- };
23
- const taxonomies = rawTaxonomies?.length ? Object.fromEntries(rawTaxonomies.map(tokenItemCreator)) : undefined;
24
- if (!taxonomies) {
25
- return tokens.map(token => ({ value: token, status: ValidationState.Invalid }));
26
- }
27
- return tokens.map(token => taxonomies[token] ?? { value: token, status: ValidationState.Invalid });
28
- });
29
- return _jsx(ExtendedFormTokenField, { expandOnFocus: true, ...extendedFormTokenFieldProps, stringToTokenConverter: useCallback(token => {
30
- if (availableTaxonomies === null) {
31
- return { value: token, status: ValidationState.Validating };
32
- }
33
- const { value, title } = unpackDisplayedTokenText(token);
34
- const foundTaxonomy = availableTaxonomies.find(taxonomy => taxonomy.slug === value);
35
- if (foundTaxonomy) {
36
- return { value: foundTaxonomy.slug, status: ValidationState.Valid, title: foundTaxonomy.name };
37
- }
38
- return title === undefined ? { value, status: ValidationState.Validating } : { value, status: ValidationState.Invalid, title };
39
- }, [availableTaxonomies]), suggestionQuery: useCallback((input, select) => {
40
- return taxonomySuggestionQuery(input, taxonomyVisibilityFilter(select(coreStore).getTaxonomies()));
41
- }, [taxonomyVisibilityFilter, taxonomySuggestionQuery]), validationQuery: useCallback((tokens, select) => {
42
- return taxonomyValidationQuery(tokens, taxonomyVisibilityFilter(select(coreStore).getTaxonomies()));
43
- }, [taxonomyVisibilityFilter, taxonomyValidationQuery]), validator: useCallback((token) => {
44
- if (!availableTaxonomies) {
45
- return false;
46
- }
47
- const { value } = unpackDisplayedTokenText(token);
48
- return availableTaxonomies.find(taxonomy => taxonomy.slug === value) !== undefined;
49
- }, [availableTaxonomies]) });
50
- }
51
- function useTaxonomiesFilteredByVisibility(visibility) {
52
- const taxonomies = useSelect(select => select(coreStore).getTaxonomies(), []);
53
- return useMemo(() => filterTaxonomiesByVisibility(taxonomies, visibility), [taxonomies, visibility]);
54
- }
55
- function makeTaxonomyVisibilityFilter(visibility) {
56
- return useOutputMemoizingFilter((taxonomies) => filterTaxonomiesByVisibility(taxonomies, visibility), [visibility]);
57
- }
58
- function filterTaxonomiesByVisibility(taxonomies, visibility) {
59
- if (!taxonomies || !visibility) {
60
- return taxonomies;
61
- }
62
- const tests = Object.entries(visibility)
63
- .filter((entry) => entry[1] !== undefined && entry[1] !== null);
64
- return tests.length
65
- ? taxonomies.filter(taxonomy => tests.every(([key, value]) => taxonomy.visibility[key] === value))
66
- : taxonomies;
67
- }
68
- //# sourceMappingURL=ExtendedTaxonomyPicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtendedTaxonomyPicker.js","sourceRoot":"","sources":["../../src/controls/ExtendedTaxonomyPicker.tsx"],"names":[],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import apiFetch from "@wordpress/api-fetch";
3
- import { useCallback } from "@wordpress/element";
4
- import { ExtendedFormTokenField, unpackDisplayedTokenText, ValidationState } from "./ExtendedFormTokenField";
5
- import { registerSimpleGutenbergApiEndpoint } from "../editor/simple-gutenberg-endpoints-api";
6
- registerSimpleGutenbergApiEndpoint("plaudit-common.term-table-search-options", data => apiFetch({ data, method: 'POST', path: "/plaudit/common/v1/term-table-search" }), {
7
- transformer: terms => terms.map(term => ({ value: term.slug, title: term.name, status: ValidationState.Valid })),
8
- maxCachedResults: 10
9
- });
10
- registerSimpleGutenbergApiEndpoint("plaudit-common.term-table-search-validation", data => apiFetch({ data, method: 'POST', path: "/plaudit/common/v1/term-table-search" }), {
11
- transformer: terms => terms
12
- .map((term) => ({ value: term.slug, title: term.name, status: ValidationState.Valid })),
13
- maxCachedResults: 10
14
- });
15
- export function ExtendedTermPicker(props) {
16
- const { taxonomy } = props;
17
- const suggestionQuery = useCallback((input, select) => {
18
- return select('plaudit/simple-gutenberg-apis')
19
- .get("plaudit-common.term-table-search-options", { search: input, taxonomy });
20
- }, [taxonomy]);
21
- const validationQuery = useCallback((slugsBeingValidated, select) => {
22
- return select('plaudit/simple-gutenberg-apis')
23
- .get("plaudit-common.term-table-search-validation", { slugs: slugsBeingValidated.join(','), taxonomy });
24
- }, [taxonomy]);
25
- return _jsx(ExtendedFormTokenField, { ...props, validationQuery: validationQuery, suggestionQuery: suggestionQuery, stringToTokenConverter: unpackDisplayedTokenText });
26
- }
27
- //# sourceMappingURL=ExtendedTermPicker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtendedTermPicker.js","sourceRoot":"","sources":["../../src/controls/ExtendedTermPicker.tsx"],"names":[],"mappings":";AAAA,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAG5C,OAAO,EAAC,WAAW,EAAC,MAAM,oBAAoB,CAAC;AAG/C,OAAO,EAAC,sBAAsB,EAAE,wBAAwB,EAAE,eAAe,EAAC,MAAM,0BAA0B,CAAC;AAC3G,OAAO,EAAC,kCAAkC,EAAC,MAAM,0CAA0C,CAAC;AAuB5F,kCAAkC,CACjC,0CAA0C,EAC1C,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAmB,EAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,EAAC,CAAC,EACxG;IACC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,KAAK,EAAC,CAAC,CAAC;IAC9G,gBAAgB,EAAE,EAAE;CACpB,CACD,CAAC;AACF,kCAAkC,CACjC,6CAA6C,EAC7C,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAmB,EAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,EAAC,CAAC,EACxG;IACC,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK;SACzB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,KAAK,EAAC,CAAC,CAAC;IACtF,gBAAgB,EAAE,EAAE;CACpB,CACD,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,KAA8B;IAChE,MAAM,EAAC,QAAQ,EAAC,GAAG,KAAK,CAAC;IAEzB,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,KAAa,EAAE,MAAyB,EAAE,EAAE;QAChF,OAAO,MAAM,CAAC,+BAA+B,CAAC;aAC5C,GAAG,CAAC,0CAA0C,EAAE,EAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAC,CAA0B,CAAC;IACvG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IACf,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,mBAA6B,EAAE,MAAyB,EAAE,EAAE;QAChG,OAAQ,MAAM,CAAC,+BAA+B,CAAC;aAC7C,GAAG,CAAC,6CAA6C,EAAE,EAAC,KAAK,EAAE,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAC,CAA2B,CAAC;IAClI,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,KAAC,sBAAsB,OAAK,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,sBAAsB,EAAE,wBAAwB,GAAI,CAAC;AACpK,CAAC"}
@@ -1,14 +0,0 @@
1
- import type { TextareaControlProps } from "@wordpress/components/build-types/textarea-control/types";
2
- import { SNPControlSlots } from "../blocks";
3
- import React from "react";
4
- export type TextareaControlPropsExtension = {
5
- newline?: undefined | "\n" | "br" | "p";
6
- placeholder?: string | undefined;
7
- rich?: boolean;
8
- };
9
- export type ExtendedTextAreaControlProps = Omit<TextareaControlProps, 'value'> & {
10
- value: TextareaControlProps['value'] | null | undefined;
11
- } & Partial<Pick<SNPControlSlots, 'Messages'>> & TextareaControlPropsExtension;
12
- export declare const ExtendedTextareaControl: React.ForwardRefExoticComponent<Omit<TextareaControlProps, "value"> & {
13
- value: TextareaControlProps["value"] | null | undefined;
14
- } & Partial<Pick<SNPControlSlots, "Messages">> & TextareaControlPropsExtension & React.RefAttributes<HTMLTextAreaElement>>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"ExtendedTextareaControl.js","sourceRoot":"","sources":["../../src/controls/ExtendedTextareaControl.tsx"],"names":[],"mappings":"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"}
@@ -1,70 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { __experimentalToggleGroupControl as ToggleGroupControl, __experimentalToggleGroupControlOption as ToggleGroupControlOption, __experimentalToggleGroupControlOptionIcon as ToggleGroupControlOptionIcon } from "@wordpress/components";
3
- import { memo, useCallback, useMemo } from "@wordpress/element";
4
- import { __ } from "@wordpress/i18n";
5
- import * as icons from "@wordpress/icons";
6
- import * as plauditIcons from "../lib/plaudit-icons";
7
- import parse from "html-react-parser";
8
- export function FullSizeToggleControl({ componentConfig, label, help, onChange, switchCfg, value }) {
9
- const [switchLabels, style] = useMemo(() => {
10
- let switchLabels;
11
- if (typeof switchCfg === 'string') {
12
- switchCfg = { type: switchCfg };
13
- }
14
- switch (switchCfg.type) {
15
- case "showHide":
16
- switchLabels = { onLabel: "Show", offLabel: "Hide" };
17
- break;
18
- case "yesNo":
19
- switchLabels = { onLabel: "Yes", offLabel: "No" };
20
- break;
21
- default:
22
- if (switchCfg.type !== undefined) {
23
- console.error("Invalid switch type:", switchCfg.type);
24
- }
25
- switchLabels = { onLabel: "On", offLabel: "Off" };
26
- break;
27
- }
28
- if (switchCfg.onLabel) {
29
- switchLabels.onLabel = switchCfg.onLabel;
30
- }
31
- if (switchCfg.offLabel) {
32
- switchLabels.offLabel = switchCfg.offLabel;
33
- }
34
- return [{ onLabel: i18nSwitchLabel(switchLabels.onLabel), offLabel: i18nSwitchLabel(switchLabels.offLabel) }, { width: switchCfg.narrow ? "min-content" : undefined }];
35
- }, [switchCfg]);
36
- const safeOnChange = useCallback((v) => onChange(v === "true"), [onChange]);
37
- return _jsxs(ToggleGroupControl, { ...componentConfig, value: value ? "true" : "false", label: label, help: help, isBlock: true, onChange: safeOnChange, style: style, children: [_jsx(ToggleGroupControlOptionWithOptionalIcon, { value: "true", label: switchLabels.onLabel }, "true"), _jsx(ToggleGroupControlOptionWithOptionalIcon, { value: "false", label: switchLabels.offLabel }, "false")] });
38
- }
39
- export const ToggleGroupControlOptionWithOptionalIcon = memo(function ({ value, label }) {
40
- if (typeof label === 'string') {
41
- return _jsx(ToggleGroupControlOption, { value: value, label: label });
42
- }
43
- else {
44
- const icon = resolveIcon(label.icon);
45
- if (icon) {
46
- return _jsx(ToggleGroupControlOptionIcon, { value: value, label: label.text, icon: icon, "aria-label": label.tooltip });
47
- }
48
- else {
49
- return _jsx(ToggleGroupControlOption, { value: value, label: label.text, "aria-label": label.tooltip, showTooltip: !!label.tooltip });
50
- }
51
- }
52
- });
53
- function i18nSwitchLabel(label) {
54
- return typeof label === 'string' ? __(label) : { ...label, text: __(label.text) };
55
- }
56
- function resolveIcon(icon) {
57
- if (typeof icon !== 'string') {
58
- return icon;
59
- }
60
- if (icon.startsWith("plaudit:")) {
61
- return plauditIcons[icon.substring(8)];
62
- }
63
- else if (icon.startsWith("<svg")) {
64
- return parse(icon);
65
- }
66
- else {
67
- return icons[icon];
68
- }
69
- }
70
- //# sourceMappingURL=FullSizeToggleControl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FullSizeToggleControl.js","sourceRoot":"","sources":["../../src/controls/FullSizeToggleControl.tsx"],"names":[],"mappings":"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"}
@@ -1,76 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { MediaUpload, MediaUploadCheck } from "@wordpress/block-editor";
3
- import { BaseControl, Button, FocalPointPicker, ResponsiveWrapper, useBaseControlProps } from "@wordpress/components";
4
- import { store as coreStore } from "@wordpress/core-data";
5
- import { useSelect } from "@wordpress/data";
6
- import { useCallback, useMemo } from "@wordpress/element";
7
- import { __ } from "@wordpress/i18n";
8
- export function ImageControl(props) {
9
- const { label, help, value, Label, Messages } = props;
10
- const media = useSelect(select => value?.media?.id ? select(coreStore).getMedia(value.media.id) : undefined, [value]);
11
- const { baseControlProps, controlProps } = useBaseControlProps({ label: Label ? _jsx(Label, {}) : label, help });
12
- return _jsxs(BaseControl, { ...baseControlProps, children: [_jsx("div", { ...controlProps, className: "editor-post-featured-image", children: media
13
- ? _jsx(ImageControlWithUploadedImage, { ...props, media: media })
14
- : _jsx(ImageControlWithoutUploadedImage, { ...props, media: media }) }), Messages && _jsx(Messages, {})] });
15
- }
16
- export const RETAINED_FIELDS = ["id", "filename", "url", "date", "mime", "height", "width", "orientation"];
17
- export const MINIMAL_STORAGE_FIELDS = ['id', 'url'];
18
- export function filterImageValueForSaving(attachment, storage) {
19
- if (storage === 'slim') {
20
- return Object.fromEntries(Object.entries(attachment).filter((entry) => MINIMAL_STORAGE_FIELDS.includes(entry[0])));
21
- }
22
- return Object.fromEntries(Object.entries(attachment).filter((entry) => RETAINED_FIELDS.includes(entry[0])));
23
- }
24
- const ALLOWED_TYPES = ['image'];
25
- function ImageControlWithUploadedImage(props) {
26
- const { includeFocalPointPicker, media, storage, onChange, value } = props;
27
- const onFPPChange = useCallback((pos) => onChange(mergeInUpdatedValuePart(value, 'pos', { x: pos.x * 100, y: pos.y * 100 }, storage)), [onChange, value]);
28
- const onSelect = useCallback((media) => onChange(mergeInUpdatedValuePart(value, 'media', media, storage)), [onChange, value]);
29
- const renderOpenButton = useCallback(({ open }) => _jsx(Button, { onClick: open, variant: "secondary", children: __('Replace image', 'plaudit') }), []);
30
- const clear = useCallback(() => onChange(undefined), [onChange]);
31
- const fppValue = useMemo(() => ({
32
- x: (value?.pos?.x ?? 50) / 100,
33
- y: (value?.pos?.y ?? 50) / 100
34
- }), [value?.pos?.x, value?.pos?.y]);
35
- let fppOrMedia;
36
- if (includeFocalPointPicker !== false) {
37
- fppOrMedia = _jsx(FocalPointPicker, { onChange: onFPPChange, url: value?.media?.url ?? '', value: fppValue });
38
- }
39
- else {
40
- fppOrMedia = _jsx(ResponsiveWrapper, { naturalWidth: parsePossiblyUndefinedFloat(media.media_details["width"]), naturalHeight: parsePossiblyUndefinedFloat(media.media_details["height"]), children: _jsx("img", { src: value?.media?.url ?? '', alt: "The currently-selected image." }) });
41
- }
42
- return _jsxs(_Fragment, { children: [value?.media?.url && fppOrMedia, _jsxs(MediaUploadCheck, { children: [_jsx(MediaUpload, { title: __('Replace image', 'plaudit'), value: value?.media?.id ?? 0, onSelect: onSelect, allowedTypes: ALLOWED_TYPES, render: renderOpenButton }), _jsx(Button, { onClick: clear, isDestructive: true, children: __('Remove image', 'plaudit') })] })] });
43
- }
44
- function ImageControlWithoutUploadedImage(props) {
45
- const { media, onChange, storage, value } = props;
46
- const onSelect = useCallback((media) => onChange(mergeInUpdatedValuePart(value, 'media', media, storage)), [onChange, value]);
47
- const renderOpenButton = useCallback(({ open }) => (_jsxs(Button, { className: !value?.media?.id ? 'editor-post-featured-image__toggle' : 'editor-post-featured-image__preview', onClick: open, children: [!value?.media?.id && __('Choose an image', 'plaudit'), media &&
48
- _jsx(ResponsiveWrapper, { naturalWidth: parsePossiblyUndefinedFloat(media.media_details["width"]), naturalHeight: parsePossiblyUndefinedFloat(media.media_details["height"]), children: _jsx("img", { src: media.source_url, alt: "The currently-selected image." }) })] })), [media, value?.media?.id]);
49
- return _jsx(MediaUploadCheck, { children: _jsx(MediaUpload, { onSelect: onSelect, value: value?.media?.id ?? 0, allowedTypes: ALLOWED_TYPES, render: renderOpenButton }) });
50
- }
51
- function parsePossiblyUndefinedFloat(string) {
52
- return typeof string === 'number' ? string : (string !== undefined ? parseFloat(string) : undefined);
53
- }
54
- function mergeInUpdatedValuePart(value, partName, part, storage) {
55
- if (part === undefined) {
56
- return undefined;
57
- }
58
- if (partName === 'media') {
59
- const prt = part;
60
- if (prt.id === 0) {
61
- return undefined;
62
- }
63
- else if (value === undefined) {
64
- return { media: filterImageValueForSaving(prt, storage ?? 'default'), pos: { x: 50, y: 50 } };
65
- }
66
- return { media: filterImageValueForSaving(prt, storage ?? 'default'), pos: { x: value.pos?.x ?? 50, y: value.pos?.y ?? 50 } };
67
- }
68
- else if (value === undefined || !value.media?.id) {
69
- return undefined;
70
- }
71
- else {
72
- const prt = part;
73
- return { media: value.media, pos: { x: prt.x ?? value.pos?.x ?? 50, y: prt.y ?? value.pos?.y ?? 50 } };
74
- }
75
- }
76
- //# sourceMappingURL=ImageControl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ImageControl.js","sourceRoot":"","sources":["../../src/controls/ImageControl.tsx"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { InspectorControls } from "@wordpress/block-editor";
3
- import { Panel, PanelBody, TabPanel } from "@wordpress/components";
4
- import { useState } from "@wordpress/element";
5
- import { useCallback } from "react";
6
- export function InspectorPanel(props) {
7
- if (props["tabbed"]) {
8
- const { tabbed, tabs, group, condition, ...tabPanelProps } = props;
9
- return _jsx(InspectorControls, { group: group, children: _jsx(TabPanel, { ...tabPanelProps, tabs: condition === undefined || condition() ? tabs : [], children: tab => _jsx(Panel, { children: tab.items }) }) });
10
- }
11
- else {
12
- return _jsx(InspectorPanelPanel, { ...props });
13
- }
14
- }
15
- function InspectorPanelPanel(props) {
16
- const { tabbed, raw, group, condition, children, onToggle, initialOpen, ...panelBodyProps } = props;
17
- const [wasOpened, setWasOpened] = useState(initialOpen);
18
- const memoOnToggle = useCallback((value) => {
19
- onToggle?.(value);
20
- setWasOpened(value);
21
- }, [onToggle, setWasOpened]);
22
- return _jsx(InspectorControls, { group: group, children: raw
23
- ? (condition === undefined || condition() ? children : [])
24
- : _jsx(PanelBody, { ...panelBodyProps, children: condition === undefined || condition() ? children : [], onToggle: memoOnToggle, initialOpen: wasOpened }) });
25
- }
26
- //# sourceMappingURL=InspectorPanel.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"InspectorPanel.js","sourceRoot":"","sources":["../../src/controls/InspectorPanel.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,uBAAuB,CAAC;AAGjE,OAAO,EAAC,QAAQ,EAAC,MAAM,oBAAoB,CAAC;AAE5C,OAAc,EAAiB,WAAW,EAAC,MAAM,OAAO,CAAC;AAOzD,MAAM,UAAU,cAAc,CAAC,KAA0B;IACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrB,MAAM,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,aAAa,EAAC,GAAG,KAAK,CAAC;QACjE,OAAO,KAAC,iBAAiB,IAAC,KAAK,EAAE,KAAK,YACrC,KAAC,QAAQ,OAAK,aAAa,EAAE,IAAI,EAAE,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,YACnF,GAAG,CAAC,EAAE,CAAC,KAAC,KAAK,cAAG,GAAW,CAAC,KAAK,GAAS,GACjC,GACQ,CAAC;IACtB,CAAC;SAAM,CAAC;QACP,OAAO,KAAC,mBAAmB,OAAK,KAAK,GAAI,CAAC;IAC3C,CAAC;AACF,CAAC;AACD,SAAS,mBAAmB,CAAC,KAAqC;IACjE,MAAM,EAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,cAAc,EAAC,GAAG,KAAK,CAAC;IAClG,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,KAAc,EAAE,EAAE;QACnD,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC;QAClB,YAAY,CAAC,KAAK,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;IAC7B,OAAO,KAAC,iBAAiB,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG;YACpD,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,CAAC,CAAC,KAAC,SAAS,OAAK,cAAc,EAAE,QAAQ,EAAE,SAAS,KAAK,SAAS,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,GAAI,GAClJ,CAAC;AACN,CAAC"}
@@ -1,29 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { BaseControl, ComboboxControl, Spinner } from "@wordpress/components";
3
- import { useCallback, useMemo, useState } from "@wordpress/element";
4
- import { __ } from "@wordpress/i18n";
5
- import { useSuggestions } from "./hooks/useSuggestions";
6
- export function LazySuggestionsComboboxControl(props) {
7
- const { help, allowReset, className, ...passthroughProps } = props;
8
- const { hasLoadingError, isInitializing, isLoading, suggestions, input, setInput } = useSuggestions(props.value, props);
9
- const [hasFocus, setHasFocus] = useState(false);
10
- const options = useMemo(() => hasFocus && input.length < 2 || (isLoading && !suggestions.length) ? [{ label: input, value: "", disabled: true }] : suggestions, [hasFocus, input, isLoading, suggestions]);
11
- const onFocus = useCallback((e) => setHasFocus(e.currentTarget.contains(e.target)), [setHasFocus]);
12
- const onBlur = useCallback((e) => setHasFocus(e.currentTarget.contains(e.relatedTarget)), [setHasFocus]);
13
- const onFilterValueChange = useCallback((value) => {
14
- if (props.onFilterValueChange) {
15
- props.onFilterValueChange(value);
16
- }
17
- setInput(value);
18
- }, [props.onFilterValueChange, setInput]);
19
- const __experimentalRenderItem = useMemo(() => {
20
- return hasFocus && input.length < 2 ? () => __("Start typing to see suggestions")
21
- : (isLoading && !suggestions.length ? () => __("Loading suggestions") : undefined);
22
- }, [hasFocus, input, isLoading, suggestions]);
23
- if (isInitializing) {
24
- return _jsxs(BaseControl, { ...props, children: [_jsx(Spinner, {}), _jsx("span", { children: __(`Initializing ${props.label}`) })] });
25
- }
26
- const needsGreyOut = input.length < 2 || (isLoading && !suggestions.length);
27
- return _jsxs("div", { onFocus: onFocus, onBlur: onBlur, children: [isLoading && _jsx(Spinner, { style: { marginTop: "30px", position: "absolute", right: "40px" }, "aria-label": "Updating Suggestions" }), _jsx(ComboboxControl, { ...passthroughProps, className: className ? `${className}${needsGreyOut ? " insufficient-input-length" : ""}` : (needsGreyOut ? "insufficient-input-length" : undefined), help: help, options: options, onFilterValueChange: onFilterValueChange, __experimentalRenderItem: __experimentalRenderItem, allowReset: allowReset !== false }), hasLoadingError && _jsx("div", { children: _jsx("span", { className: "components-base-control__help", children: __("An error occurred while updating suggestions") }) })] });
28
- }
29
- //# sourceMappingURL=LazySuggestionsComboboxControl.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LazySuggestionsComboboxControl.js","sourceRoot":"","sources":["../../src/controls/LazySuggestionsComboboxControl.tsx"],"names":[],"mappings":"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"}