@wordpress/widget-dashboard 0.1.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 (443) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/LICENSE.md +788 -0
  3. package/README.md +241 -0
  4. package/build/components/actions/actions.cjs +265 -0
  5. package/build/components/actions/actions.cjs.map +7 -0
  6. package/build/components/actions/index.cjs +31 -0
  7. package/build/components/actions/index.cjs.map +7 -0
  8. package/build/components/actions-menu/actions-menu.cjs +92 -0
  9. package/build/components/actions-menu/actions-menu.cjs.map +7 -0
  10. package/build/components/actions-menu/index.cjs +31 -0
  11. package/build/components/actions-menu/index.cjs.map +7 -0
  12. package/build/components/commands/commands.cjs +177 -0
  13. package/build/components/commands/commands.cjs.map +7 -0
  14. package/build/components/commands/index.cjs +33 -0
  15. package/build/components/commands/index.cjs.map +7 -0
  16. package/build/components/commands/use-pending-when-edit-mode.cjs +57 -0
  17. package/build/components/commands/use-pending-when-edit-mode.cjs.map +7 -0
  18. package/build/components/layout-settings/index.cjs +31 -0
  19. package/build/components/layout-settings/index.cjs.map +7 -0
  20. package/build/components/layout-settings/layout-model-edit-field/index.cjs +186 -0
  21. package/build/components/layout-settings/layout-model-edit-field/index.cjs.map +7 -0
  22. package/build/components/layout-settings/layout-model-edit-field/thumbnail-grid.cjs +53 -0
  23. package/build/components/layout-settings/layout-model-edit-field/thumbnail-grid.cjs.map +7 -0
  24. package/build/components/layout-settings/layout-model-edit-field/thumbnail-masonry.cjs +53 -0
  25. package/build/components/layout-settings/layout-model-edit-field/thumbnail-masonry.cjs.map +7 -0
  26. package/build/components/layout-settings/layout-settings.cjs +207 -0
  27. package/build/components/layout-settings/layout-settings.cjs.map +7 -0
  28. package/build/components/no-widgets-state/index.cjs +31 -0
  29. package/build/components/no-widgets-state/index.cjs.map +7 -0
  30. package/build/components/no-widgets-state/no-widgets-state.cjs +140 -0
  31. package/build/components/no-widgets-state/no-widgets-state.cjs.map +7 -0
  32. package/build/components/reset-confirmation/index.cjs +31 -0
  33. package/build/components/reset-confirmation/index.cjs.map +7 -0
  34. package/build/components/reset-confirmation/reset-confirmation.cjs +62 -0
  35. package/build/components/reset-confirmation/reset-confirmation.cjs.map +7 -0
  36. package/build/components/widget-chrome/index.cjs +31 -0
  37. package/build/components/widget-chrome/index.cjs.map +7 -0
  38. package/build/components/widget-chrome/widget-chrome.cjs +277 -0
  39. package/build/components/widget-chrome/widget-chrome.cjs.map +7 -0
  40. package/build/components/widget-inserter/index.cjs +31 -0
  41. package/build/components/widget-inserter/index.cjs.map +7 -0
  42. package/build/components/widget-inserter/widget-inserter.cjs +78 -0
  43. package/build/components/widget-inserter/widget-inserter.cjs.map +7 -0
  44. package/build/components/widget-picker/index.cjs +31 -0
  45. package/build/components/widget-picker/index.cjs.map +7 -0
  46. package/build/components/widget-picker/widget-picker.cjs +209 -0
  47. package/build/components/widget-picker/widget-picker.cjs.map +7 -0
  48. package/build/components/widget-render/index.cjs +31 -0
  49. package/build/components/widget-render/index.cjs.map +7 -0
  50. package/build/components/widget-render/widget-render.cjs +62 -0
  51. package/build/components/widget-render/widget-render.cjs.map +7 -0
  52. package/build/components/widget-settings/index.cjs +37 -0
  53. package/build/components/widget-settings/index.cjs.map +7 -0
  54. package/build/components/widget-settings/utils/get-admin-menu-inset.cjs +41 -0
  55. package/build/components/widget-settings/utils/get-admin-menu-inset.cjs.map +7 -0
  56. package/build/components/widget-settings/utils/get-widget-settings.cjs +38 -0
  57. package/build/components/widget-settings/utils/get-widget-settings.cjs.map +7 -0
  58. package/build/components/widget-settings/utils/index.cjs +34 -0
  59. package/build/components/widget-settings/utils/index.cjs.map +7 -0
  60. package/build/components/widget-settings/widget-settings-toolbar.cjs +138 -0
  61. package/build/components/widget-settings/widget-settings-toolbar.cjs.map +7 -0
  62. package/build/components/widget-settings/widget-settings-trigger.cjs +82 -0
  63. package/build/components/widget-settings/widget-settings-trigger.cjs.map +7 -0
  64. package/build/components/widget-settings/widget-settings.cjs +269 -0
  65. package/build/components/widget-settings/widget-settings.cjs.map +7 -0
  66. package/build/components/widget-toolbar/index.cjs +31 -0
  67. package/build/components/widget-toolbar/index.cjs.map +7 -0
  68. package/build/components/widget-toolbar/widget-toolbar.cjs +148 -0
  69. package/build/components/widget-toolbar/widget-toolbar.cjs.map +7 -0
  70. package/build/components/widgets/index.cjs +31 -0
  71. package/build/components/widgets/index.cjs.map +7 -0
  72. package/build/components/widgets/widget-layout-toolbar.cjs +206 -0
  73. package/build/components/widgets/widget-layout-toolbar.cjs.map +7 -0
  74. package/build/components/widgets/widget-resize-handle.cjs +163 -0
  75. package/build/components/widgets/widget-resize-handle.cjs.map +7 -0
  76. package/build/components/widgets/widgets.cjs +277 -0
  77. package/build/components/widgets/widgets.cjs.map +7 -0
  78. package/build/context/dashboard-context.cjs +234 -0
  79. package/build/context/dashboard-context.cjs.map +7 -0
  80. package/build/context/ui-context.cjs +77 -0
  81. package/build/context/ui-context.cjs.map +7 -0
  82. package/build/context/widget-context.cjs +44 -0
  83. package/build/context/widget-context.cjs.map +7 -0
  84. package/build/hooks/use-dashboard-container-column-count.cjs +61 -0
  85. package/build/hooks/use-dashboard-container-column-count.cjs.map +7 -0
  86. package/build/index.cjs +45 -0
  87. package/build/index.cjs.map +7 -0
  88. package/build/lock-unlock.cjs +37 -0
  89. package/build/lock-unlock.cjs.map +7 -0
  90. package/build/types.cjs +31 -0
  91. package/build/types.cjs.map +7 -0
  92. package/build/utils/create-dashboard-widget/create-dashboard-widget.cjs +44 -0
  93. package/build/utils/create-dashboard-widget/create-dashboard-widget.cjs.map +7 -0
  94. package/build/utils/create-dashboard-widget/index.cjs +31 -0
  95. package/build/utils/create-dashboard-widget/index.cjs.map +7 -0
  96. package/build/utils/default-grid/default-grid.cjs +37 -0
  97. package/build/utils/default-grid/default-grid.cjs.map +7 -0
  98. package/build/utils/default-grid/index.cjs +31 -0
  99. package/build/utils/default-grid/index.cjs.map +7 -0
  100. package/build/utils/grid-model-change/grid-model-change.cjs +56 -0
  101. package/build/utils/grid-model-change/grid-model-change.cjs.map +7 -0
  102. package/build/utils/grid-model-change/index.cjs +33 -0
  103. package/build/utils/grid-model-change/index.cjs.map +7 -0
  104. package/build/utils/index.cjs +34 -0
  105. package/build/utils/index.cjs.map +7 -0
  106. package/build/utils/migrate-layout/index.cjs +31 -0
  107. package/build/utils/migrate-layout/index.cjs.map +7 -0
  108. package/build/utils/migrate-layout/migrate-layout.cjs +94 -0
  109. package/build/utils/migrate-layout/migrate-layout.cjs.map +7 -0
  110. package/build/utils/normalize-grid-settings/index.cjs +31 -0
  111. package/build/utils/normalize-grid-settings/index.cjs.map +7 -0
  112. package/build/utils/normalize-grid-settings/normalize-grid-settings.cjs +46 -0
  113. package/build/utils/normalize-grid-settings/normalize-grid-settings.cjs.map +7 -0
  114. package/build/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.cjs +49 -0
  115. package/build/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.cjs.map +7 -0
  116. package/build/utils/row-height-presets/index.cjs +39 -0
  117. package/build/utils/row-height-presets/index.cjs.map +7 -0
  118. package/build/utils/row-height-presets/row-height-presets.cjs +63 -0
  119. package/build/utils/row-height-presets/row-height-presets.cjs.map +7 -0
  120. package/build/widget-dashboard.cjs +86 -0
  121. package/build/widget-dashboard.cjs.map +7 -0
  122. package/build/wordpress-commands.d.cjs +2 -0
  123. package/build/wordpress-commands.d.cjs.map +7 -0
  124. package/build-module/components/actions/actions.mjs +240 -0
  125. package/build-module/components/actions/actions.mjs.map +7 -0
  126. package/build-module/components/actions/index.mjs +6 -0
  127. package/build-module/components/actions/index.mjs.map +7 -0
  128. package/build-module/components/actions-menu/actions-menu.mjs +67 -0
  129. package/build-module/components/actions-menu/actions-menu.mjs.map +7 -0
  130. package/build-module/components/actions-menu/index.mjs +6 -0
  131. package/build-module/components/actions-menu/index.mjs.map +7 -0
  132. package/build-module/components/commands/commands.mjs +160 -0
  133. package/build-module/components/commands/commands.mjs.map +7 -0
  134. package/build-module/components/commands/index.mjs +7 -0
  135. package/build-module/components/commands/index.mjs.map +7 -0
  136. package/build-module/components/commands/use-pending-when-edit-mode.mjs +32 -0
  137. package/build-module/components/commands/use-pending-when-edit-mode.mjs.map +7 -0
  138. package/build-module/components/layout-settings/index.mjs +6 -0
  139. package/build-module/components/layout-settings/index.mjs.map +7 -0
  140. package/build-module/components/layout-settings/layout-model-edit-field/index.mjs +151 -0
  141. package/build-module/components/layout-settings/layout-model-edit-field/index.mjs.map +7 -0
  142. package/build-module/components/layout-settings/layout-model-edit-field/thumbnail-grid.mjs +28 -0
  143. package/build-module/components/layout-settings/layout-model-edit-field/thumbnail-grid.mjs.map +7 -0
  144. package/build-module/components/layout-settings/layout-model-edit-field/thumbnail-masonry.mjs +28 -0
  145. package/build-module/components/layout-settings/layout-model-edit-field/thumbnail-masonry.mjs.map +7 -0
  146. package/build-module/components/layout-settings/layout-settings.mjs +187 -0
  147. package/build-module/components/layout-settings/layout-settings.mjs.map +7 -0
  148. package/build-module/components/no-widgets-state/index.mjs +6 -0
  149. package/build-module/components/no-widgets-state/index.mjs.map +7 -0
  150. package/build-module/components/no-widgets-state/no-widgets-state.mjs +115 -0
  151. package/build-module/components/no-widgets-state/no-widgets-state.mjs.map +7 -0
  152. package/build-module/components/reset-confirmation/index.mjs +6 -0
  153. package/build-module/components/reset-confirmation/index.mjs.map +7 -0
  154. package/build-module/components/reset-confirmation/reset-confirmation.mjs +37 -0
  155. package/build-module/components/reset-confirmation/reset-confirmation.mjs.map +7 -0
  156. package/build-module/components/widget-chrome/index.mjs +6 -0
  157. package/build-module/components/widget-chrome/index.mjs.map +7 -0
  158. package/build-module/components/widget-chrome/widget-chrome.mjs +248 -0
  159. package/build-module/components/widget-chrome/widget-chrome.mjs.map +7 -0
  160. package/build-module/components/widget-inserter/index.mjs +6 -0
  161. package/build-module/components/widget-inserter/index.mjs.map +7 -0
  162. package/build-module/components/widget-inserter/widget-inserter.mjs +53 -0
  163. package/build-module/components/widget-inserter/widget-inserter.mjs.map +7 -0
  164. package/build-module/components/widget-picker/index.mjs +6 -0
  165. package/build-module/components/widget-picker/index.mjs.map +7 -0
  166. package/build-module/components/widget-picker/widget-picker.mjs +184 -0
  167. package/build-module/components/widget-picker/widget-picker.mjs.map +7 -0
  168. package/build-module/components/widget-render/index.mjs +6 -0
  169. package/build-module/components/widget-render/index.mjs.map +7 -0
  170. package/build-module/components/widget-render/widget-render.mjs +37 -0
  171. package/build-module/components/widget-render/widget-render.mjs.map +7 -0
  172. package/build-module/components/widget-settings/index.mjs +10 -0
  173. package/build-module/components/widget-settings/index.mjs.map +7 -0
  174. package/build-module/components/widget-settings/utils/get-admin-menu-inset.mjs +16 -0
  175. package/build-module/components/widget-settings/utils/get-admin-menu-inset.mjs.map +7 -0
  176. package/build-module/components/widget-settings/utils/get-widget-settings.mjs +13 -0
  177. package/build-module/components/widget-settings/utils/get-widget-settings.mjs.map +7 -0
  178. package/build-module/components/widget-settings/utils/index.mjs +8 -0
  179. package/build-module/components/widget-settings/utils/index.mjs.map +7 -0
  180. package/build-module/components/widget-settings/widget-settings-toolbar.mjs +113 -0
  181. package/build-module/components/widget-settings/widget-settings-toolbar.mjs.map +7 -0
  182. package/build-module/components/widget-settings/widget-settings-trigger.mjs +57 -0
  183. package/build-module/components/widget-settings/widget-settings-trigger.mjs.map +7 -0
  184. package/build-module/components/widget-settings/widget-settings.mjs +244 -0
  185. package/build-module/components/widget-settings/widget-settings.mjs.map +7 -0
  186. package/build-module/components/widget-toolbar/index.mjs +6 -0
  187. package/build-module/components/widget-toolbar/index.mjs.map +7 -0
  188. package/build-module/components/widget-toolbar/widget-toolbar.mjs +113 -0
  189. package/build-module/components/widget-toolbar/widget-toolbar.mjs.map +7 -0
  190. package/build-module/components/widgets/index.mjs +6 -0
  191. package/build-module/components/widgets/index.mjs.map +7 -0
  192. package/build-module/components/widgets/widget-layout-toolbar.mjs +181 -0
  193. package/build-module/components/widgets/widget-layout-toolbar.mjs.map +7 -0
  194. package/build-module/components/widgets/widget-resize-handle.mjs +128 -0
  195. package/build-module/components/widgets/widget-resize-handle.mjs.map +7 -0
  196. package/build-module/components/widgets/widgets.mjs +242 -0
  197. package/build-module/components/widgets/widgets.mjs.map +7 -0
  198. package/build-module/context/dashboard-context.mjs +205 -0
  199. package/build-module/context/dashboard-context.mjs.map +7 -0
  200. package/build-module/context/ui-context.mjs +56 -0
  201. package/build-module/context/ui-context.mjs.map +7 -0
  202. package/build-module/context/widget-context.mjs +18 -0
  203. package/build-module/context/widget-context.mjs.map +7 -0
  204. package/build-module/hooks/use-dashboard-container-column-count.mjs +40 -0
  205. package/build-module/hooks/use-dashboard-container-column-count.mjs.map +7 -0
  206. package/build-module/index.mjs +18 -0
  207. package/build-module/index.mjs.map +7 -0
  208. package/build-module/lock-unlock.mjs +11 -0
  209. package/build-module/lock-unlock.mjs.map +7 -0
  210. package/build-module/types.mjs +6 -0
  211. package/build-module/types.mjs.map +7 -0
  212. package/build-module/utils/create-dashboard-widget/create-dashboard-widget.mjs +19 -0
  213. package/build-module/utils/create-dashboard-widget/create-dashboard-widget.mjs.map +7 -0
  214. package/build-module/utils/create-dashboard-widget/index.mjs +6 -0
  215. package/build-module/utils/create-dashboard-widget/index.mjs.map +7 -0
  216. package/build-module/utils/default-grid/default-grid.mjs +12 -0
  217. package/build-module/utils/default-grid/default-grid.mjs.map +7 -0
  218. package/build-module/utils/default-grid/index.mjs +6 -0
  219. package/build-module/utils/default-grid/index.mjs.map +7 -0
  220. package/build-module/utils/grid-model-change/grid-model-change.mjs +30 -0
  221. package/build-module/utils/grid-model-change/grid-model-change.mjs.map +7 -0
  222. package/build-module/utils/grid-model-change/index.mjs +7 -0
  223. package/build-module/utils/grid-model-change/index.mjs.map +7 -0
  224. package/build-module/utils/index.mjs +8 -0
  225. package/build-module/utils/index.mjs.map +7 -0
  226. package/build-module/utils/migrate-layout/index.mjs +6 -0
  227. package/build-module/utils/migrate-layout/index.mjs.map +7 -0
  228. package/build-module/utils/migrate-layout/migrate-layout.mjs +69 -0
  229. package/build-module/utils/migrate-layout/migrate-layout.mjs.map +7 -0
  230. package/build-module/utils/normalize-grid-settings/index.mjs +6 -0
  231. package/build-module/utils/normalize-grid-settings/index.mjs.map +7 -0
  232. package/build-module/utils/normalize-grid-settings/normalize-grid-settings.mjs +21 -0
  233. package/build-module/utils/normalize-grid-settings/normalize-grid-settings.mjs.map +7 -0
  234. package/build-module/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.mjs +22 -0
  235. package/build-module/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.mjs.map +7 -0
  236. package/build-module/utils/row-height-presets/index.mjs +16 -0
  237. package/build-module/utils/row-height-presets/index.mjs.map +7 -0
  238. package/build-module/utils/row-height-presets/row-height-presets.mjs +34 -0
  239. package/build-module/utils/row-height-presets/row-height-presets.mjs.map +7 -0
  240. package/build-module/widget-dashboard.mjs +61 -0
  241. package/build-module/widget-dashboard.mjs.map +7 -0
  242. package/build-module/wordpress-commands.d.mjs +1 -0
  243. package/build-module/wordpress-commands.d.mjs.map +7 -0
  244. package/build-types/components/actions/actions.d.ts +11 -0
  245. package/build-types/components/actions/actions.d.ts.map +1 -0
  246. package/build-types/components/actions/index.d.ts +2 -0
  247. package/build-types/components/actions/index.d.ts.map +1 -0
  248. package/build-types/components/actions-menu/actions-menu.d.ts +22 -0
  249. package/build-types/components/actions-menu/actions-menu.d.ts.map +1 -0
  250. package/build-types/components/actions-menu/index.d.ts +3 -0
  251. package/build-types/components/actions-menu/index.d.ts.map +1 -0
  252. package/build-types/components/commands/commands.d.ts +7 -0
  253. package/build-types/components/commands/commands.d.ts.map +1 -0
  254. package/build-types/components/commands/index.d.ts +2 -0
  255. package/build-types/components/commands/index.d.ts.map +1 -0
  256. package/build-types/components/commands/use-pending-when-edit-mode.d.ts +15 -0
  257. package/build-types/components/commands/use-pending-when-edit-mode.d.ts.map +1 -0
  258. package/build-types/components/layout-settings/index.d.ts +2 -0
  259. package/build-types/components/layout-settings/index.d.ts.map +1 -0
  260. package/build-types/components/layout-settings/layout-model-edit-field/index.d.ts +17 -0
  261. package/build-types/components/layout-settings/layout-model-edit-field/index.d.ts.map +1 -0
  262. package/build-types/components/layout-settings/layout-model-edit-field/thumbnail-grid.d.ts +6 -0
  263. package/build-types/components/layout-settings/layout-model-edit-field/thumbnail-grid.d.ts.map +1 -0
  264. package/build-types/components/layout-settings/layout-model-edit-field/thumbnail-masonry.d.ts +6 -0
  265. package/build-types/components/layout-settings/layout-model-edit-field/thumbnail-masonry.d.ts.map +1 -0
  266. package/build-types/components/layout-settings/layout-settings.d.ts +14 -0
  267. package/build-types/components/layout-settings/layout-settings.d.ts.map +1 -0
  268. package/build-types/components/no-widgets-state/index.d.ts +2 -0
  269. package/build-types/components/no-widgets-state/index.d.ts.map +1 -0
  270. package/build-types/components/no-widgets-state/no-widgets-state.d.ts +17 -0
  271. package/build-types/components/no-widgets-state/no-widgets-state.d.ts.map +1 -0
  272. package/build-types/components/reset-confirmation/index.d.ts +2 -0
  273. package/build-types/components/reset-confirmation/index.d.ts.map +1 -0
  274. package/build-types/components/reset-confirmation/reset-confirmation.d.ts +8 -0
  275. package/build-types/components/reset-confirmation/reset-confirmation.d.ts.map +1 -0
  276. package/build-types/components/widget-chrome/index.d.ts +2 -0
  277. package/build-types/components/widget-chrome/index.d.ts.map +1 -0
  278. package/build-types/components/widget-chrome/widget-chrome.d.ts +22 -0
  279. package/build-types/components/widget-chrome/widget-chrome.d.ts.map +1 -0
  280. package/build-types/components/widget-inserter/index.d.ts +2 -0
  281. package/build-types/components/widget-inserter/index.d.ts.map +1 -0
  282. package/build-types/components/widget-inserter/widget-inserter.d.ts +7 -0
  283. package/build-types/components/widget-inserter/widget-inserter.d.ts.map +1 -0
  284. package/build-types/components/widget-picker/index.d.ts +2 -0
  285. package/build-types/components/widget-picker/index.d.ts.map +1 -0
  286. package/build-types/components/widget-picker/widget-picker.d.ts +26 -0
  287. package/build-types/components/widget-picker/widget-picker.d.ts.map +1 -0
  288. package/build-types/components/widget-render/index.d.ts +2 -0
  289. package/build-types/components/widget-render/index.d.ts.map +1 -0
  290. package/build-types/components/widget-render/widget-render.d.ts +17 -0
  291. package/build-types/components/widget-render/widget-render.d.ts.map +1 -0
  292. package/build-types/components/widget-settings/index.d.ts +5 -0
  293. package/build-types/components/widget-settings/index.d.ts.map +1 -0
  294. package/build-types/components/widget-settings/utils/get-admin-menu-inset.d.ts +17 -0
  295. package/build-types/components/widget-settings/utils/get-admin-menu-inset.d.ts.map +1 -0
  296. package/build-types/components/widget-settings/utils/get-widget-settings.d.ts +10 -0
  297. package/build-types/components/widget-settings/utils/get-widget-settings.d.ts.map +1 -0
  298. package/build-types/components/widget-settings/utils/index.d.ts +3 -0
  299. package/build-types/components/widget-settings/utils/index.d.ts.map +1 -0
  300. package/build-types/components/widget-settings/widget-settings-toolbar.d.ts +20 -0
  301. package/build-types/components/widget-settings/widget-settings-toolbar.d.ts.map +1 -0
  302. package/build-types/components/widget-settings/widget-settings-trigger.d.ts +23 -0
  303. package/build-types/components/widget-settings/widget-settings-trigger.d.ts.map +1 -0
  304. package/build-types/components/widget-settings/widget-settings.d.ts +13 -0
  305. package/build-types/components/widget-settings/widget-settings.d.ts.map +1 -0
  306. package/build-types/components/widget-toolbar/index.d.ts +3 -0
  307. package/build-types/components/widget-toolbar/index.d.ts.map +1 -0
  308. package/build-types/components/widget-toolbar/widget-toolbar.d.ts +16 -0
  309. package/build-types/components/widget-toolbar/widget-toolbar.d.ts.map +1 -0
  310. package/build-types/components/widgets/index.d.ts +2 -0
  311. package/build-types/components/widgets/index.d.ts.map +1 -0
  312. package/build-types/components/widgets/widget-layout-toolbar.d.ts +14 -0
  313. package/build-types/components/widgets/widget-layout-toolbar.d.ts.map +1 -0
  314. package/build-types/components/widgets/widget-resize-handle.d.ts +12 -0
  315. package/build-types/components/widgets/widget-resize-handle.d.ts.map +1 -0
  316. package/build-types/components/widgets/widgets.d.ts +10 -0
  317. package/build-types/components/widgets/widgets.d.ts.map +1 -0
  318. package/build-types/context/dashboard-context.d.ts +111 -0
  319. package/build-types/context/dashboard-context.d.ts.map +1 -0
  320. package/build-types/context/ui-context.d.ts +54 -0
  321. package/build-types/context/ui-context.d.ts.map +1 -0
  322. package/build-types/context/widget-context.d.ts +25 -0
  323. package/build-types/context/widget-context.d.ts.map +1 -0
  324. package/build-types/hooks/use-dashboard-container-column-count.d.ts +15 -0
  325. package/build-types/hooks/use-dashboard-container-column-count.d.ts.map +1 -0
  326. package/build-types/index.d.ts +7 -0
  327. package/build-types/index.d.ts.map +1 -0
  328. package/build-types/lock-unlock.d.ts +2 -0
  329. package/build-types/lock-unlock.d.ts.map +1 -0
  330. package/build-types/types.d.ts +222 -0
  331. package/build-types/types.d.ts.map +1 -0
  332. package/build-types/utils/create-dashboard-widget/create-dashboard-widget.d.ts +20 -0
  333. package/build-types/utils/create-dashboard-widget/create-dashboard-widget.d.ts.map +1 -0
  334. package/build-types/utils/create-dashboard-widget/index.d.ts +2 -0
  335. package/build-types/utils/create-dashboard-widget/index.d.ts.map +1 -0
  336. package/build-types/utils/default-grid/default-grid.d.ts +11 -0
  337. package/build-types/utils/default-grid/default-grid.d.ts.map +1 -0
  338. package/build-types/utils/default-grid/index.d.ts +2 -0
  339. package/build-types/utils/default-grid/index.d.ts.map +1 -0
  340. package/build-types/utils/grid-model-change/grid-model-change.d.ts +20 -0
  341. package/build-types/utils/grid-model-change/grid-model-change.d.ts.map +1 -0
  342. package/build-types/utils/grid-model-change/index.d.ts +2 -0
  343. package/build-types/utils/grid-model-change/index.d.ts.map +1 -0
  344. package/build-types/utils/index.d.ts +3 -0
  345. package/build-types/utils/index.d.ts.map +1 -0
  346. package/build-types/utils/migrate-layout/index.d.ts +2 -0
  347. package/build-types/utils/migrate-layout/index.d.ts.map +1 -0
  348. package/build-types/utils/migrate-layout/migrate-layout.d.ts +36 -0
  349. package/build-types/utils/migrate-layout/migrate-layout.d.ts.map +1 -0
  350. package/build-types/utils/normalize-grid-settings/index.d.ts +2 -0
  351. package/build-types/utils/normalize-grid-settings/index.d.ts.map +1 -0
  352. package/build-types/utils/normalize-grid-settings/normalize-grid-settings.d.ts +11 -0
  353. package/build-types/utils/normalize-grid-settings/normalize-grid-settings.d.ts.map +1 -0
  354. package/build-types/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.d.ts +21 -0
  355. package/build-types/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.d.ts.map +1 -0
  356. package/build-types/utils/row-height-presets/index.d.ts +3 -0
  357. package/build-types/utils/row-height-presets/index.d.ts.map +1 -0
  358. package/build-types/utils/row-height-presets/row-height-presets.d.ts +17 -0
  359. package/build-types/utils/row-height-presets/row-height-presets.d.ts.map +1 -0
  360. package/build-types/widget-dashboard.d.ts +51 -0
  361. package/build-types/widget-dashboard.d.ts.map +1 -0
  362. package/package.json +90 -0
  363. package/src/components/actions/actions.module.css +54 -0
  364. package/src/components/actions/actions.tsx +180 -0
  365. package/src/components/actions/index.ts +1 -0
  366. package/src/components/actions-menu/actions-menu.tsx +104 -0
  367. package/src/components/actions-menu/index.ts +2 -0
  368. package/src/components/commands/commands.tsx +182 -0
  369. package/src/components/commands/index.ts +1 -0
  370. package/src/components/commands/use-pending-when-edit-mode.ts +48 -0
  371. package/src/components/layout-settings/index.ts +1 -0
  372. package/src/components/layout-settings/layout-model-edit-field/index.tsx +98 -0
  373. package/src/components/layout-settings/layout-model-edit-field/style.module.css +34 -0
  374. package/src/components/layout-settings/layout-model-edit-field/thumbnail-grid.tsx +28 -0
  375. package/src/components/layout-settings/layout-model-edit-field/thumbnail-masonry.tsx +28 -0
  376. package/src/components/layout-settings/layout-settings.tsx +217 -0
  377. package/src/components/no-widgets-state/index.ts +1 -0
  378. package/src/components/no-widgets-state/no-widgets-state.module.css +3 -0
  379. package/src/components/no-widgets-state/no-widgets-state.tsx +56 -0
  380. package/src/components/reset-confirmation/index.ts +1 -0
  381. package/src/components/reset-confirmation/reset-confirmation.tsx +44 -0
  382. package/src/components/widget-chrome/index.ts +1 -0
  383. package/src/components/widget-chrome/widget-chrome.module.css +87 -0
  384. package/src/components/widget-chrome/widget-chrome.tsx +255 -0
  385. package/src/components/widget-inserter/index.ts +1 -0
  386. package/src/components/widget-inserter/widget-inserter.tsx +70 -0
  387. package/src/components/widget-picker/index.ts +1 -0
  388. package/src/components/widget-picker/widget-picker.module.css +11 -0
  389. package/src/components/widget-picker/widget-picker.tsx +137 -0
  390. package/src/components/widget-render/index.ts +1 -0
  391. package/src/components/widget-render/widget-render.tsx +58 -0
  392. package/src/components/widget-settings/index.ts +4 -0
  393. package/src/components/widget-settings/utils/get-admin-menu-inset.ts +30 -0
  394. package/src/components/widget-settings/utils/get-widget-settings.ts +22 -0
  395. package/src/components/widget-settings/utils/index.ts +2 -0
  396. package/src/components/widget-settings/widget-settings-toolbar.module.css +25 -0
  397. package/src/components/widget-settings/widget-settings-toolbar.tsx +45 -0
  398. package/src/components/widget-settings/widget-settings-trigger.tsx +96 -0
  399. package/src/components/widget-settings/widget-settings.module.css +8 -0
  400. package/src/components/widget-settings/widget-settings.tsx +200 -0
  401. package/src/components/widget-toolbar/index.ts +2 -0
  402. package/src/components/widget-toolbar/widget-toolbar.module.css +12 -0
  403. package/src/components/widget-toolbar/widget-toolbar.tsx +46 -0
  404. package/src/components/widgets/index.ts +1 -0
  405. package/src/components/widgets/widget-layout-toolbar.module.css +6 -0
  406. package/src/components/widgets/widget-layout-toolbar.tsx +118 -0
  407. package/src/components/widgets/widget-resize-handle.module.css +135 -0
  408. package/src/components/widgets/widget-resize-handle.tsx +60 -0
  409. package/src/components/widgets/widgets.module.css +43 -0
  410. package/src/components/widgets/widgets.tsx +208 -0
  411. package/src/context/dashboard-context.tsx +386 -0
  412. package/src/context/ui-context.tsx +118 -0
  413. package/src/context/widget-context.tsx +45 -0
  414. package/src/hooks/use-dashboard-container-column-count.ts +63 -0
  415. package/src/index.ts +9 -0
  416. package/src/lock-unlock.ts +10 -0
  417. package/src/test/actions.test.tsx +228 -0
  418. package/src/test/commands.test.tsx +176 -0
  419. package/src/test/create-dashboard-widget.test.ts +59 -0
  420. package/src/test/dashboard-context.test.tsx +26 -0
  421. package/src/test/staging.test.tsx +476 -0
  422. package/src/test/widget-dashboard.test.tsx +204 -0
  423. package/src/test/widget-inserter.test.tsx +210 -0
  424. package/src/test/widget-settings.test.tsx +199 -0
  425. package/src/types.ts +260 -0
  426. package/src/utils/create-dashboard-widget/create-dashboard-widget.ts +43 -0
  427. package/src/utils/create-dashboard-widget/index.ts +1 -0
  428. package/src/utils/default-grid/default-grid.ts +17 -0
  429. package/src/utils/default-grid/index.ts +1 -0
  430. package/src/utils/grid-model-change/grid-model-change.ts +53 -0
  431. package/src/utils/grid-model-change/index.ts +1 -0
  432. package/src/utils/index.ts +2 -0
  433. package/src/utils/migrate-layout/index.ts +1 -0
  434. package/src/utils/migrate-layout/migrate-layout.ts +156 -0
  435. package/src/utils/migrate-layout/test/migrate-layout.test.ts +114 -0
  436. package/src/utils/normalize-grid-settings/index.ts +1 -0
  437. package/src/utils/normalize-grid-settings/normalize-grid-settings.ts +38 -0
  438. package/src/utils/resolve-dashboard-column-count/resolve-dashboard-column-count.ts +41 -0
  439. package/src/utils/resolve-dashboard-column-count/test/resolve-dashboard-column-count.test.ts +44 -0
  440. package/src/utils/row-height-presets/index.ts +8 -0
  441. package/src/utils/row-height-presets/row-height-presets.ts +43 -0
  442. package/src/widget-dashboard.tsx +102 -0
  443. package/src/wordpress-commands.d.ts +12 -0
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-inserter/index.ts
21
+ var widget_inserter_exports = {};
22
+ __export(widget_inserter_exports, {
23
+ WidgetInserter: () => import_widget_inserter.WidgetInserter
24
+ });
25
+ module.exports = __toCommonJS(widget_inserter_exports);
26
+ var import_widget_inserter = require("./widget-inserter.cjs");
27
+ // Annotate the CommonJS export names for ESM import in node:
28
+ 0 && (module.exports = {
29
+ WidgetInserter
30
+ });
31
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-inserter/index.ts"],
4
+ "sourcesContent": ["export { WidgetInserter } from './widget-inserter';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAA+B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-inserter/widget-inserter.tsx
21
+ var widget_inserter_exports = {};
22
+ __export(widget_inserter_exports, {
23
+ WidgetInserter: () => WidgetInserter
24
+ });
25
+ module.exports = __toCommonJS(widget_inserter_exports);
26
+ var import_element = require("@wordpress/element");
27
+ var import_i18n = require("@wordpress/i18n");
28
+ var import_ui = require("@wordpress/ui");
29
+ var import_dashboard_context = require("../../context/dashboard-context.cjs");
30
+ var import_ui_context = require("../../context/ui-context.cjs");
31
+ var import_create_dashboard_widget = require("../../utils/create-dashboard-widget/index.cjs");
32
+ var import_widget_picker = require("../widget-picker/index.cjs");
33
+ var import_jsx_runtime = require("react/jsx-runtime");
34
+ function WidgetInserter() {
35
+ const { layout, onLayoutChange } = (0, import_dashboard_context.useDashboardInternalContext)();
36
+ const { inserterOpen, setInserterOpen } = (0, import_ui_context.useDashboardUIContext)();
37
+ const insertWidgets = (0, import_element.useCallback)(
38
+ (widgetTypes) => {
39
+ if (widgetTypes.length > 0) {
40
+ const newWidgets = widgetTypes.map(
41
+ (widgetType) => (0, import_create_dashboard_widget.createDashboardWidget)(widgetType)
42
+ );
43
+ onLayoutChange([...layout, ...newWidgets]);
44
+ }
45
+ setInserterOpen(false);
46
+ },
47
+ [layout, onLayoutChange, setInserterOpen]
48
+ );
49
+ if (!inserterOpen) {
50
+ return null;
51
+ }
52
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Dialog.Root, { open: inserterOpen, onOpenChange: setInserterOpen, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
53
+ import_ui.Dialog.Popup,
54
+ {
55
+ size: "full",
56
+ portal: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
57
+ import_ui.Dialog.Portal,
58
+ {
59
+ style: {
60
+ "--wp-ui-dialog-z-index": 99999
61
+ }
62
+ }
63
+ ),
64
+ children: [
65
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_ui.Dialog.Header, { children: [
66
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Dialog.Title, { children: (0, import_i18n.__)("Add widget") }),
67
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Dialog.CloseIcon, {})
68
+ ] }),
69
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.Dialog.Content, { children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_widget_picker.WidgetPicker, { onSelect: insertWidgets }) })
70
+ ]
71
+ }
72
+ ) });
73
+ }
74
+ // Annotate the CommonJS export names for ESM import in node:
75
+ 0 && (module.exports = {
76
+ WidgetInserter
77
+ });
78
+ //# sourceMappingURL=widget-inserter.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-inserter/widget-inserter.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\n// eslint-disable-next-line @wordpress/use-recommended-components\nimport { Dialog } from '@wordpress/ui';\nimport type { WidgetType } from '@wordpress/widget-primitives';\n\n/**\n * Internal dependencies\n */\nimport { useDashboardInternalContext } from '../../context/dashboard-context';\nimport { useDashboardUIContext } from '../../context/ui-context';\nimport { createDashboardWidget } from '../../utils/create-dashboard-widget';\nimport { WidgetPicker } from '../widget-picker';\n\n/**\n * Modal widget inserter, mounted by the engine and shown while `inserterOpen`\n * is set in the shared UI context. Selecting widgets appends them to the\n * layout and closes the dialog.\n */\nexport function WidgetInserter() {\n\tconst { layout, onLayoutChange } = useDashboardInternalContext();\n\tconst { inserterOpen, setInserterOpen } = useDashboardUIContext();\n\n\tconst insertWidgets = useCallback(\n\t\t( widgetTypes: WidgetType[] ) => {\n\t\t\tif ( widgetTypes.length > 0 ) {\n\t\t\t\tconst newWidgets = widgetTypes.map( ( widgetType ) =>\n\t\t\t\t\tcreateDashboardWidget( widgetType )\n\t\t\t\t);\n\t\t\t\tonLayoutChange( [ ...layout, ...newWidgets ] );\n\t\t\t}\n\n\t\t\tsetInserterOpen( false );\n\t\t},\n\t\t[ layout, onLayoutChange, setInserterOpen ]\n\t);\n\n\tif ( ! inserterOpen ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<Dialog.Root open={ inserterOpen } onOpenChange={ setInserterOpen }>\n\t\t\t<Dialog.Popup\n\t\t\t\tsize=\"full\"\n\t\t\t\tportal={\n\t\t\t\t\t<Dialog.Portal\n\t\t\t\t\t\tstyle={\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t'--wp-ui-dialog-z-index': 99999,\n\t\t\t\t\t\t\t} as React.CSSProperties\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t>\n\t\t\t\t<Dialog.Header>\n\t\t\t\t\t<Dialog.Title>{ __( 'Add widget' ) }</Dialog.Title>\n\t\t\t\t\t<Dialog.CloseIcon />\n\t\t\t\t</Dialog.Header>\n\n\t\t\t\t<Dialog.Content>\n\t\t\t\t\t<WidgetPicker onSelect={ insertWidgets } />\n\t\t\t\t</Dialog.Content>\n\t\t\t</Dialog.Popup>\n\t\t</Dialog.Root>\n\t);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAA4B;AAC5B,kBAAmB;AAEnB,gBAAuB;AAMvB,+BAA4C;AAC5C,wBAAsC;AACtC,qCAAsC;AACtC,2BAA6B;AAkCxB;AA3BE,SAAS,iBAAiB;AAChC,QAAM,EAAE,QAAQ,eAAe,QAAI,sDAA4B;AAC/D,QAAM,EAAE,cAAc,gBAAgB,QAAI,yCAAsB;AAEhE,QAAM,oBAAgB;AAAA,IACrB,CAAE,gBAA+B;AAChC,UAAK,YAAY,SAAS,GAAI;AAC7B,cAAM,aAAa,YAAY;AAAA,UAAK,CAAE,mBACrC,sDAAuB,UAAW;AAAA,QACnC;AACA,uBAAgB,CAAE,GAAG,QAAQ,GAAG,UAAW,CAAE;AAAA,MAC9C;AAEA,sBAAiB,KAAM;AAAA,IACxB;AAAA,IACA,CAAE,QAAQ,gBAAgB,eAAgB;AAAA,EAC3C;AAEA,MAAK,CAAE,cAAe;AACrB,WAAO;AAAA,EACR;AAEA,SACC,4CAAC,iBAAO,MAAP,EAAY,MAAO,cAAe,cAAe,iBACjD;AAAA,IAAC,iBAAO;AAAA,IAAP;AAAA,MACA,MAAK;AAAA,MACL,QACC;AAAA,QAAC,iBAAO;AAAA,QAAP;AAAA,UACA,OACC;AAAA,YACC,0BAA0B;AAAA,UAC3B;AAAA;AAAA,MAEF;AAAA,MAGD;AAAA,qDAAC,iBAAO,QAAP,EACA;AAAA,sDAAC,iBAAO,OAAP,EAAe,8BAAI,YAAa,GAAG;AAAA,UACpC,4CAAC,iBAAO,WAAP,EAAiB;AAAA,WACnB;AAAA,QAEA,4CAAC,iBAAO,SAAP,EACA,sDAAC,qCAAa,UAAW,eAAgB,GAC1C;AAAA;AAAA;AAAA,EACD,GACD;AAEF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-picker/index.ts
21
+ var widget_picker_exports = {};
22
+ __export(widget_picker_exports, {
23
+ WidgetPicker: () => import_widget_picker.WidgetPicker
24
+ });
25
+ module.exports = __toCommonJS(widget_picker_exports);
26
+ var import_widget_picker = require("./widget-picker.cjs");
27
+ // Annotate the CommonJS export names for ESM import in node:
28
+ 0 && (module.exports = {
29
+ WidgetPicker
30
+ });
31
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-picker/index.ts"],
4
+ "sourcesContent": ["export { WidgetPicker } from './widget-picker';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAA6B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,209 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-picker/widget-picker.tsx
21
+ var widget_picker_exports = {};
22
+ __export(widget_picker_exports, {
23
+ WidgetPicker: () => WidgetPicker
24
+ });
25
+ module.exports = __toCommonJS(widget_picker_exports);
26
+ var import_dataviews = require("@wordpress/dataviews");
27
+ var import_element = require("@wordpress/element");
28
+ var import_i18n = require("@wordpress/i18n");
29
+ var import_dashboard_context = require("../../context/dashboard-context.cjs");
30
+ var import_create_dashboard_widget = require("../../utils/create-dashboard-widget/index.cjs");
31
+ var import_widget_render = require("../widget-render/index.cjs");
32
+
33
+ // packages/style-runtime/src/index.ts
34
+ var STYLE_HASH_ATTRIBUTE = "data-wp-hash";
35
+ function getRuntime() {
36
+ const globalScope = globalThis;
37
+ if (globalScope.__wpStyleRuntime) {
38
+ return globalScope.__wpStyleRuntime;
39
+ }
40
+ globalScope.__wpStyleRuntime = {
41
+ documents: /* @__PURE__ */ new Map(),
42
+ styles: /* @__PURE__ */ new Map(),
43
+ injectedStyles: /* @__PURE__ */ new WeakMap()
44
+ };
45
+ if (typeof document !== "undefined") {
46
+ registerDocument(document);
47
+ }
48
+ return globalScope.__wpStyleRuntime;
49
+ }
50
+ function documentContainsStyleHash(targetDocument, hash) {
51
+ if (!targetDocument.head) {
52
+ return false;
53
+ }
54
+ for (const style of targetDocument.head.querySelectorAll(
55
+ `style[${STYLE_HASH_ATTRIBUTE}]`
56
+ )) {
57
+ if (style.getAttribute(STYLE_HASH_ATTRIBUTE) === hash) {
58
+ return true;
59
+ }
60
+ }
61
+ return false;
62
+ }
63
+ function injectStyle(targetDocument, hash, css) {
64
+ if (!targetDocument.head) {
65
+ return;
66
+ }
67
+ const runtime = getRuntime();
68
+ let injectedStyles = runtime.injectedStyles.get(targetDocument);
69
+ if (!injectedStyles) {
70
+ injectedStyles = /* @__PURE__ */ new Set();
71
+ runtime.injectedStyles.set(targetDocument, injectedStyles);
72
+ }
73
+ if (injectedStyles.has(hash)) {
74
+ return;
75
+ }
76
+ if (documentContainsStyleHash(targetDocument, hash)) {
77
+ injectedStyles.add(hash);
78
+ return;
79
+ }
80
+ const style = targetDocument.createElement("style");
81
+ style.setAttribute(STYLE_HASH_ATTRIBUTE, hash);
82
+ style.appendChild(targetDocument.createTextNode(css));
83
+ targetDocument.head.appendChild(style);
84
+ injectedStyles.add(hash);
85
+ }
86
+ function registerDocument(targetDocument) {
87
+ const runtime = getRuntime();
88
+ runtime.documents.set(
89
+ targetDocument,
90
+ (runtime.documents.get(targetDocument) ?? 0) + 1
91
+ );
92
+ for (const [hash, css] of runtime.styles) {
93
+ injectStyle(targetDocument, hash, css);
94
+ }
95
+ return () => {
96
+ const count = runtime.documents.get(targetDocument);
97
+ if (count === void 0) {
98
+ return;
99
+ }
100
+ if (count <= 1) {
101
+ runtime.documents.delete(targetDocument);
102
+ return;
103
+ }
104
+ runtime.documents.set(targetDocument, count - 1);
105
+ };
106
+ }
107
+ function registerStyle(hash, css) {
108
+ const runtime = getRuntime();
109
+ runtime.styles.set(hash, css);
110
+ for (const targetDocument of runtime.documents.keys()) {
111
+ injectStyle(targetDocument, hash, css);
112
+ }
113
+ }
114
+
115
+ // packages/widget-dashboard/src/components/widget-picker/widget-picker.module.css
116
+ if (typeof process === "undefined" || process.env.NODE_ENV !== "test") {
117
+ registerStyle("93a9ea86b0", "._623aa9eba189276f__preview{height:125%;overflow:hidden;padding:0;pointer-events:none;transform:scale(.8);transform-origin:top left;user-select:none;width:125%}");
118
+ }
119
+ var widget_picker_default = { "preview": "_623aa9eba189276f__preview" };
120
+
121
+ // packages/widget-dashboard/src/components/widget-picker/widget-picker.tsx
122
+ var import_jsx_runtime = require("react/jsx-runtime");
123
+ var DEFAULT_VIEW = {
124
+ type: "pickerGrid",
125
+ page: 1,
126
+ search: "",
127
+ mediaField: "preview",
128
+ titleField: "title"
129
+ };
130
+ var getItemId = (item) => item.name;
131
+ function WidgetPreview({ item }) {
132
+ const exampleWidget = (0, import_element.useMemo)(
133
+ () => (0, import_create_dashboard_widget.createDashboardWidget)(item, item.example?.attributes),
134
+ [item]
135
+ );
136
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: widget_picker_default.preview, ...{ inert: "" }, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_element.Suspense, { fallback: null, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_widget_render.WidgetRender, { widget: exampleWidget, widgetType: item }) }) });
137
+ }
138
+ var fields = [
139
+ {
140
+ id: "title",
141
+ type: "text",
142
+ label: (0, import_i18n.__)("Title"),
143
+ filterBy: false
144
+ },
145
+ {
146
+ id: "preview",
147
+ type: "media",
148
+ render: WidgetPreview
149
+ },
150
+ {
151
+ id: "name",
152
+ type: "text",
153
+ enableGlobalSearch: true,
154
+ enableHiding: false,
155
+ enableSorting: false,
156
+ filterBy: false,
157
+ getValue: ({ item }) => `${item.name.replace(/[\/,\-_]/g, " ")} ${item.title}`
158
+ }
159
+ ];
160
+ function WidgetPicker({
161
+ onSelect,
162
+ itemListLabel = (0, import_i18n.__)("Widget list")
163
+ }) {
164
+ const { widgetTypes: registeredTypes } = (0, import_dashboard_context.useDashboardInternalContext)();
165
+ const [selection, setSelection] = (0, import_element.useState)([]);
166
+ const [view, setView] = (0, import_element.useState)(DEFAULT_VIEW);
167
+ const { data: widgetTypes } = (0, import_dataviews.filterSortAndPaginate)(
168
+ registeredTypes,
169
+ view,
170
+ fields
171
+ );
172
+ const actions = (0, import_element.useMemo)(
173
+ () => [
174
+ {
175
+ id: "select",
176
+ label: (0, import_i18n.__)("Select"),
177
+ isPrimary: true,
178
+ supportsBulk: true,
179
+ callback: (items) => onSelect(items)
180
+ }
181
+ ],
182
+ [onSelect]
183
+ );
184
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
185
+ import_dataviews.DataViewsPicker,
186
+ {
187
+ data: widgetTypes,
188
+ fields,
189
+ view,
190
+ actions,
191
+ defaultLayouts: { pickerGrid: {} },
192
+ onChangeView: setView,
193
+ isLoading: false,
194
+ paginationInfo: {
195
+ totalItems: widgetTypes.length,
196
+ totalPages: 1
197
+ },
198
+ selection,
199
+ onChangeSelection: setSelection,
200
+ getItemId,
201
+ itemListLabel
202
+ }
203
+ );
204
+ }
205
+ // Annotate the CommonJS export names for ESM import in node:
206
+ 0 && (module.exports = {
207
+ WidgetPicker
208
+ });
209
+ //# sourceMappingURL=widget-picker.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-picker/widget-picker.tsx", "../../../../style-runtime/src/index.ts", "../../../src/components/widget-picker/widget-picker.module.css"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { DataViewsPicker, filterSortAndPaginate } from '@wordpress/dataviews';\nimport type { Field, View } from '@wordpress/dataviews';\nimport { Suspense, useMemo, useState } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport type { WidgetType } from '@wordpress/widget-primitives';\n\n/**\n * Internal dependencies\n */\nimport { useDashboardInternalContext } from '../../context/dashboard-context';\nimport { createDashboardWidget } from '../../utils/create-dashboard-widget';\nimport { WidgetRender } from '../widget-render';\nimport styles from './widget-picker.module.css';\n\nconst DEFAULT_VIEW: View = {\n\ttype: 'pickerGrid',\n\tpage: 1,\n\tsearch: '',\n\tmediaField: 'preview',\n\ttitleField: 'title',\n};\n\nconst getItemId = ( item: WidgetType ) => item.name;\n\nfunction WidgetPreview( { item }: { item: WidgetType } ) {\n\tconst exampleWidget = useMemo(\n\t\t() => createDashboardWidget( item, item.example?.attributes ),\n\t\t[ item ]\n\t);\n\n\treturn (\n\t\t<div className={ styles.preview } { ...{ inert: '' } }>\n\t\t\t<Suspense fallback={ null }>\n\t\t\t\t<WidgetRender widget={ exampleWidget } widgetType={ item } />\n\t\t\t</Suspense>\n\t\t</div>\n\t);\n}\n\nconst fields: Field< WidgetType >[] = [\n\t{\n\t\tid: 'title',\n\t\ttype: 'text',\n\t\tlabel: __( 'Title' ),\n\t\tfilterBy: false,\n\t},\n\t{\n\t\tid: 'preview',\n\t\ttype: 'media',\n\t\trender: WidgetPreview,\n\t},\n\t{\n\t\tid: 'name',\n\t\ttype: 'text',\n\t\tenableGlobalSearch: true,\n\t\tenableHiding: false,\n\t\tenableSorting: false,\n\t\tfilterBy: false,\n\t\tgetValue: ( { item } ) =>\n\t\t\t`${ item.name.replace( /[\\/,\\-_]/g, ' ' ) } ${ item.title }`,\n\t},\n];\n\ninterface WidgetPickerProps {\n\t/**\n\t * Called with the widget types selected by the user. The picker keeps\n\t * its own selection state; consumers receive the resolved list when\n\t * the \"Select\" action fires.\n\t */\n\tonSelect: ( widgetTypes: WidgetType[] ) => void;\n\n\t/**\n\t * Accessible label for the picker's item list.\n\t *\n\t * @default __( 'Widget list' )\n\t */\n\titemListLabel?: string;\n}\n\n/**\n * DataViews-driven widget type picker. Lists `widgetTypes` from the dashboard\n * context as a grid of live previews, supports search via `name`/`title`, and\n * exposes a single \"Select\" action with bulk support so users can insert one\n * or several widgets at once.\n *\n * @param {WidgetPickerProps} props Component props.\n */\nexport function WidgetPicker( {\n\tonSelect,\n\titemListLabel = __( 'Widget list' ),\n}: WidgetPickerProps ) {\n\tconst { widgetTypes: registeredTypes } = useDashboardInternalContext();\n\tconst [ selection, setSelection ] = useState< string[] >( [] );\n\tconst [ view, setView ] = useState< View >( DEFAULT_VIEW );\n\n\tconst { data: widgetTypes } = filterSortAndPaginate(\n\t\tregisteredTypes,\n\t\tview,\n\t\tfields\n\t);\n\n\tconst actions = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'select',\n\t\t\t\tlabel: __( 'Select' ),\n\t\t\t\tisPrimary: true,\n\t\t\t\tsupportsBulk: true,\n\t\t\t\tcallback: ( items: WidgetType[] ) => onSelect( items ),\n\t\t\t},\n\t\t],\n\t\t[ onSelect ]\n\t);\n\n\treturn (\n\t\t<DataViewsPicker\n\t\t\tdata={ widgetTypes }\n\t\t\tfields={ fields }\n\t\t\tview={ view }\n\t\t\tactions={ actions }\n\t\t\tdefaultLayouts={ { pickerGrid: {} } }\n\t\t\tonChangeView={ setView }\n\t\t\tisLoading={ false }\n\t\t\tpaginationInfo={ {\n\t\t\t\ttotalItems: widgetTypes.length,\n\t\t\t\ttotalPages: 1,\n\t\t\t} }\n\t\t\tselection={ selection }\n\t\t\tonChangeSelection={ setSelection }\n\t\t\tgetItemId={ getItemId }\n\t\t\titemListLabel={ itemListLabel }\n\t\t/>\n\t);\n}\n", "type GlobalScopeWithStyleRuntime = typeof globalThis & {\n\t// This global is shared by separately bundled copies of this package.\n\t// Keep its shape backward compatible after release.\n\t__wpStyleRuntime?: {\n\t\tdocuments: Map< Document, number >;\n\t\tstyles: Map< string, string >;\n\t\tinjectedStyles: WeakMap< Document, Set< string > >;\n\t};\n};\n\nconst STYLE_HASH_ATTRIBUTE = 'data-wp-hash';\n\n/**\n * Returns the shared style runtime registry.\n *\n * The registry is stored on `globalThis` so separately bundled copies of this\n * package can coordinate through the same document and style maps.\n *\n * @return The shared runtime registry.\n */\nfunction getRuntime() {\n\tconst globalScope = globalThis as GlobalScopeWithStyleRuntime;\n\n\tif ( globalScope.__wpStyleRuntime ) {\n\t\treturn globalScope.__wpStyleRuntime;\n\t}\n\n\tglobalScope.__wpStyleRuntime = {\n\t\tdocuments: new Map(),\n\t\tstyles: new Map(),\n\t\tinjectedStyles: new WeakMap(),\n\t};\n\n\tif ( typeof document !== 'undefined' ) {\n\t\tregisterDocument( document );\n\t}\n\n\treturn globalScope.__wpStyleRuntime;\n}\n\n/**\n * Checks whether a document already contains a style tag for a hash.\n *\n * @param targetDocument Document to inspect.\n * @param hash Stable hash for the transformed CSS.\n *\n * @return Whether the style hash already exists in the document.\n */\nfunction documentContainsStyleHash(\n\ttargetDocument: Document,\n\thash: string\n): boolean {\n\tif ( ! targetDocument.head ) {\n\t\treturn false;\n\t}\n\n\tfor ( const style of targetDocument.head.querySelectorAll(\n\t\t`style[${ STYLE_HASH_ATTRIBUTE }]`\n\t) ) {\n\t\tif ( style.getAttribute( STYLE_HASH_ATTRIBUTE ) === hash ) {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\treturn false;\n}\n\n/**\n * Injects a registered style into a document, unless that document already\n * contains a style tag for the same hash.\n *\n * @param targetDocument Document to inject the style into.\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nfunction injectStyle( targetDocument: Document, hash: string, css: string ) {\n\tif ( ! targetDocument.head ) {\n\t\treturn;\n\t}\n\n\tconst runtime = getRuntime();\n\tlet injectedStyles = runtime.injectedStyles.get( targetDocument );\n\n\tif ( ! injectedStyles ) {\n\t\tinjectedStyles = new Set();\n\t\truntime.injectedStyles.set( targetDocument, injectedStyles );\n\t}\n\n\tif ( injectedStyles.has( hash ) ) {\n\t\treturn;\n\t}\n\n\t// Older generated CSS module output can still inject matching style tags\n\t// after this document's cache is created, so keep the DOM as the fallback\n\t// source of truth on cache misses.\n\tif ( documentContainsStyleHash( targetDocument, hash ) ) {\n\t\tinjectedStyles.add( hash );\n\t\treturn;\n\t}\n\n\tconst style = targetDocument.createElement( 'style' );\n\tstyle.setAttribute( STYLE_HASH_ATTRIBUTE, hash );\n\tstyle.appendChild( targetDocument.createTextNode( css ) );\n\ttargetDocument.head.appendChild( style );\n\tinjectedStyles.add( hash );\n}\n\n/**\n * Registers a document as a style injection target.\n *\n * Existing registered styles are replayed into the document immediately.\n * Documents are reference-counted so multiple providers can safely register the\n * same document without one cleanup removing it while another registration is\n * still active.\n *\n * @param targetDocument Document to receive registered styles.\n * @return Cleanup function that unregisters this document registration.\n */\nexport function registerDocument( targetDocument: Document ) {\n\tconst runtime = getRuntime();\n\n\truntime.documents.set(\n\t\ttargetDocument,\n\t\t( runtime.documents.get( targetDocument ) ?? 0 ) + 1\n\t);\n\n\tfor ( const [ hash, css ] of runtime.styles ) {\n\t\tinjectStyle( targetDocument, hash, css );\n\t}\n\n\treturn () => {\n\t\tconst count = runtime.documents.get( targetDocument );\n\n\t\tif ( count === undefined ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( count <= 1 ) {\n\t\t\truntime.documents.delete( targetDocument );\n\t\t\treturn;\n\t\t}\n\n\t\truntime.documents.set( targetDocument, count - 1 );\n\t};\n}\n\n/**\n * Registers a style and injects it into all registered documents.\n *\n * The hash is used as the deduplication key, so calling this repeatedly with\n * the same hash will not add duplicate style tags to a document.\n * Registered styles are retained for the lifetime of the page so they can be\n * replayed into documents that are registered later.\n *\n * @param hash Stable hash for the transformed CSS.\n * @param css CSS text to inject.\n */\nexport function registerStyle( hash: string, css: string ) {\n\tconst runtime = getRuntime();\n\n\truntime.styles.set( hash, css );\n\n\tfor ( const targetDocument of runtime.documents.keys() ) {\n\t\tinjectStyle( targetDocument, hash, css );\n\t}\n}\n", "import { registerStyle } from '@wordpress/style-runtime';\nif (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {\n\tregisterStyle(\"93a9ea86b0\", \"._623aa9eba189276f__preview{height:125%;overflow:hidden;padding:0;pointer-events:none;transform:scale(.8);transform-origin:top left;user-select:none;width:125%}\");\n}\nexport default {\"preview\":\"_623aa9eba189276f__preview\"};\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-render/index.ts
21
+ var widget_render_exports = {};
22
+ __export(widget_render_exports, {
23
+ WidgetRender: () => import_widget_render.WidgetRender
24
+ });
25
+ module.exports = __toCommonJS(widget_render_exports);
26
+ var import_widget_render = require("./widget-render.cjs");
27
+ // Annotate the CommonJS export names for ESM import in node:
28
+ 0 && (module.exports = {
29
+ WidgetRender
30
+ });
31
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-render/index.ts"],
4
+ "sourcesContent": ["export { WidgetRender } from './widget-render';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,2BAA6B;",
6
+ "names": []
7
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-render/widget-render.tsx
21
+ var widget_render_exports = {};
22
+ __export(widget_render_exports, {
23
+ WidgetRender: () => WidgetRender
24
+ });
25
+ module.exports = __toCommonJS(widget_render_exports);
26
+ var import_element = require("@wordpress/element");
27
+ var import_widget_primitives = require("@wordpress/widget-primitives");
28
+ var import_dashboard_context = require("../../context/dashboard-context.cjs");
29
+ var import_jsx_runtime = require("react/jsx-runtime");
30
+ function WidgetRender({ widget, widgetType }) {
31
+ const { layout, onLayoutChange, resolveWidgetModule } = (0, import_dashboard_context.useDashboardInternalContext)();
32
+ const setAttributes = (0, import_element.useCallback)(
33
+ (next) => {
34
+ onLayoutChange(
35
+ layout.map(
36
+ (w) => w.uuid === widget.uuid ? {
37
+ ...w,
38
+ attributes: {
39
+ ...w.attributes,
40
+ ...next
41
+ }
42
+ } : w
43
+ )
44
+ );
45
+ },
46
+ [widget.uuid, layout, onLayoutChange]
47
+ );
48
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
49
+ import_widget_primitives.WidgetRender,
50
+ {
51
+ widgetType,
52
+ attributes: widget.attributes,
53
+ setAttributes,
54
+ resolveWidgetModule
55
+ }
56
+ );
57
+ }
58
+ // Annotate the CommonJS export names for ESM import in node:
59
+ 0 && (module.exports = {
60
+ WidgetRender
61
+ });
62
+ //# sourceMappingURL=widget-render.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-render/widget-render.tsx"],
4
+ "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { useCallback } from '@wordpress/element';\nimport { WidgetRender as WidgetRenderPrimitive } from '@wordpress/widget-primitives';\nimport type { WidgetType } from '@wordpress/widget-primitives';\n\n/**\n * Internal dependencies\n */\nimport { useDashboardInternalContext } from '../../context/dashboard-context';\nimport type { DashboardWidget } from '../../types';\n\ninterface WidgetRenderProps {\n\twidget: DashboardWidget< unknown >;\n\twidgetType: WidgetType;\n}\n\n/**\n * Adapter around the host-agnostic `WidgetRender` primitive. Bridges the\n * dashboard context (`resolveWidgetModule`, layout state) and turns\n * layout-level attribute updates into the per-instance `setAttributes`\n * callback the render contract expects.\n *\n * @param {WidgetRenderProps} props Component props.\n */\nexport function WidgetRender( { widget, widgetType }: WidgetRenderProps ) {\n\tconst { layout, onLayoutChange, resolveWidgetModule } =\n\t\tuseDashboardInternalContext();\n\n\tconst setAttributes = useCallback(\n\t\t( next: Partial< unknown > ) => {\n\t\t\tonLayoutChange(\n\t\t\t\tlayout.map( ( w ) =>\n\t\t\t\t\tw.uuid === widget.uuid\n\t\t\t\t\t\t? {\n\t\t\t\t\t\t\t\t...w,\n\t\t\t\t\t\t\t\tattributes: {\n\t\t\t\t\t\t\t\t\t...( w.attributes as object ),\n\t\t\t\t\t\t\t\t\t...( next as object ),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t }\n\t\t\t\t\t\t: w\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\t\t[ widget.uuid, layout, onLayoutChange ]\n\t);\n\n\treturn (\n\t\t<WidgetRenderPrimitive\n\t\t\twidgetType={ widgetType }\n\t\t\tattributes={ widget.attributes }\n\t\t\tsetAttributes={ setAttributes }\n\t\t\tresolveWidgetModule={ resolveWidgetModule }\n\t\t/>\n\t);\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,qBAA4B;AAC5B,+BAAsD;AAMtD,+BAA4C;AAwC1C;AAxBK,SAAS,aAAc,EAAE,QAAQ,WAAW,GAAuB;AACzE,QAAM,EAAE,QAAQ,gBAAgB,oBAAoB,QACnD,sDAA4B;AAE7B,QAAM,oBAAgB;AAAA,IACrB,CAAE,SAA8B;AAC/B;AAAA,QACC,OAAO;AAAA,UAAK,CAAE,MACb,EAAE,SAAS,OAAO,OACf;AAAA,YACA,GAAG;AAAA,YACH,YAAY;AAAA,cACX,GAAK,EAAE;AAAA,cACP,GAAK;AAAA,YACN;AAAA,UACA,IACA;AAAA,QACJ;AAAA,MACD;AAAA,IACD;AAAA,IACA,CAAE,OAAO,MAAM,QAAQ,cAAe;AAAA,EACvC;AAEA,SACC;AAAA,IAAC,yBAAAA;AAAA,IAAA;AAAA,MACA;AAAA,MACA,YAAa,OAAO;AAAA,MACpB;AAAA,MACA;AAAA;AAAA,EACD;AAEF;",
6
+ "names": ["WidgetRenderPrimitive"]
7
+ }
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-settings/index.ts
21
+ var widget_settings_exports = {};
22
+ __export(widget_settings_exports, {
23
+ WidgetSettings: () => import_widget_settings.WidgetSettings,
24
+ WidgetSettingsToolbar: () => import_widget_settings_toolbar.WidgetSettingsToolbar,
25
+ getWidgetSettingsTitle: () => import_utils.getWidgetSettingsTitle
26
+ });
27
+ module.exports = __toCommonJS(widget_settings_exports);
28
+ var import_widget_settings = require("./widget-settings.cjs");
29
+ var import_utils = require("./utils/index.cjs");
30
+ var import_widget_settings_toolbar = require("./widget-settings-toolbar.cjs");
31
+ // Annotate the CommonJS export names for ESM import in node:
32
+ 0 && (module.exports = {
33
+ WidgetSettings,
34
+ WidgetSettingsToolbar,
35
+ getWidgetSettingsTitle
36
+ });
37
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/components/widget-settings/index.ts"],
4
+ "sourcesContent": ["export { WidgetSettings } from './widget-settings';\nexport { getWidgetSettingsTitle } from './utils';\nexport { WidgetSettingsToolbar } from './widget-settings-toolbar';\nexport type { WidgetSettingsToolbarProps } from './widget-settings-toolbar';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAA+B;AAC/B,mBAAuC;AACvC,qCAAsC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // packages/widget-dashboard/src/components/widget-settings/utils/get-admin-menu-inset.ts
21
+ var get_admin_menu_inset_exports = {};
22
+ __export(get_admin_menu_inset_exports, {
23
+ getAdminMenuInset: () => getAdminMenuInset
24
+ });
25
+ module.exports = __toCommonJS(get_admin_menu_inset_exports);
26
+ var ADMIN_MENU_ID = "adminmenuback";
27
+ function getAdminMenuInset() {
28
+ if (typeof document === "undefined") {
29
+ return 0;
30
+ }
31
+ const adminMenu = document.getElementById(ADMIN_MENU_ID);
32
+ if (!adminMenu) {
33
+ return 0;
34
+ }
35
+ return Math.max(0, adminMenu.getBoundingClientRect().right);
36
+ }
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ getAdminMenuInset
40
+ });
41
+ //# sourceMappingURL=get-admin-menu-inset.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/widget-settings/utils/get-admin-menu-inset.ts"],
4
+ "sourcesContent": ["// cspell:ignore adminmenuback\nconst ADMIN_MENU_ID = 'adminmenuback';\n\n/**\n * Width, in pixels, taken up by the WordPress admin menu\n * (`#adminmenuback`) on the inline-start edge of the viewport.\n *\n * The settings drawer portals to the document body and anchors to a\n * viewport edge, so a left-anchored drawer would slide over the fixed\n * admin menu. Offsetting the drawer by this value keeps the menu\n * uncovered (and reachable) instead of raising the drawer's z-index over\n * it.\n *\n * Defensive: returns `0` when the element is absent (outside wp-admin, or\n * in tests/Storybook), so the drawer just anchors to the viewport edge.\n *\n * @return {number} The admin menu's right edge in px, or `0`.\n */\nexport function getAdminMenuInset(): number {\n\tif ( typeof document === 'undefined' ) {\n\t\treturn 0;\n\t}\n\n\tconst adminMenu = document.getElementById( ADMIN_MENU_ID );\n\tif ( ! adminMenu ) {\n\t\treturn 0;\n\t}\n\n\treturn Math.max( 0, adminMenu.getBoundingClientRect().right );\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,IAAM,gBAAgB;AAiBf,SAAS,oBAA4B;AAC3C,MAAK,OAAO,aAAa,aAAc;AACtC,WAAO;AAAA,EACR;AAEA,QAAM,YAAY,SAAS,eAAgB,aAAc;AACzD,MAAK,CAAE,WAAY;AAClB,WAAO;AAAA,EACR;AAEA,SAAO,KAAK,IAAK,GAAG,UAAU,sBAAsB,EAAE,KAAM;AAC7D;",
6
+ "names": []
7
+ }