PluginProbe ʕ •ᴥ•ʔ
Jetpack – WP Security, Backup, Speed, & Growth / 16.2-a.1
Jetpack – WP Security, Backup, Speed, & Growth v16.2-a.1
16.2-a.3 16.1.2 16.2-a.1 16.1.1 16.1 16.1-beta 16.1-beta.2 16.1-beta.3 16.1-a.5 16.1-a.3 16.0.1 16.1-a.1 16.0 16.0-beta 16.0-a.7 16.0-a.5 15.9.1 16.0-a.3 16.0-a.1 15.9 15.9-beta 15.9-a.7 15.9-a.5 15.9-a.3 15.9-a.1 15.8 15.8-beta 15.8-a.7 15.8-a.5 5.2.5 5.3.4 5.4.4 5.5.5 5.6.5 5.7.5 5.8.4 5.9.4 6.0.4 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 6.2 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.3 6.3.1 6.3.2 6.3.3 6.3.4 6.3.5 6.3.6 6.3.7 6.4 6.4.1 6.4.2 6.4.3 6.4.4 6.4.5 6.4.6 6.5 6.5.1 6.5.2 6.5.3 6.5.4 6.6 6.6.1 6.6.2 6.6.3 6.6.4 6.6.5 6.7 6.7.1 6.7.2 6.7.3 6.7.4 6.8 6.8.1 6.8.2 6.8.3 6.8.4 6.8.5 6.9 6.9.1 6.9.2 6.9.3 6.9.4 7.0 7.0.1 7.0.2 7.0.3 7.0.4 7.0.5 7.1 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2 7.2.1 7.2.1.1 7.2.2 7.2.3 7.2.4 7.2.5 7.3 7.3.0.1 7.3.1 7.3.1.1 7.3.2 7.3.3 7.3.4 7.3.5 7.4 7.4.1 7.4.2 7.4.3 7.4.4 7.4.5 7.5 7.5.0.1 7.5.1 7.5.2 7.5.3 7.5.4 7.5.5 7.5.6 7.5.7 7.6 7.6.1 7.6.2 7.6.3 7.6.4 7.7 7.7.1 7.7.2 7.7.3 7.7.4 7.7.5 7.7.6 7.8 7.8.1 7.8.2 7.8.3 7.8.4 7.9 7.9.1 7.9.2 7.9.3 7.9.4 8.0 8.0.1 8.0.2 8.0.3 8.1 8.1.1 8.1.2 8.1.3 8.1.4 8.2 8.2.0.1 8.2.1 8.2.2 8.2.3 8.2.4 8.2.5 8.2.6 8.3 8.3.1 8.3.2 8.3.3 8.4 8.4.1 8.4.2 8.4.3 8.4.4 8.4.5 8.5 8.5.1 8.5.2 8.5.3 8.6 8.6.1 8.6.2 8.6.3 8.6.4 8.7 8.7.0.1 8.7.1 8.7.2 8.7.3 8.7.4 8.8 8.8.1 8.8.2 8.8.3 8.8.4 8.8.5 8.9 8.9.1 8.9.2 8.9.3 8.9.4 9.0 9.0.1 9.0.2 9.0.3 9.0.4 9.0.5 9.1 9.1.1 9.1.2 9.1.3 9.2 9.2.1 9.2.2 9.2.3 9.2.4 9.3 9.3.1 9.3.2 9.3.3 9.3.4 9.3.5 9.4 9.4.1 9.4.2 9.4.3 9.4.4 9.5 9.5.1 9.5.2 9.5.3 9.5.4 9.5.5 9.6 9.6.1 9.6.2 9.6.3 9.6.4 9.7 9.7.1 9.7.2 15.7-beta.2 9.7.3 15.7.1 9.8 15.8-a.1 9.8.1 15.8-a.3 9.8.2 2.0.9 9.8.3 2.1.7 9.9 2.2.10 9.9.1 2.3.10 9.9.2 2.4.7 9.9.3 2.5.5 2.6.6 2.7.5 2.8.5 2.9.6 3.0.6 3.1.5 3.2.5 3.3.6 3.4.6 3.5.6 3.6.4 3.7.5 3.8.5 3.9.10 4.0.7 4.1.4 4.2.5 4.3.5 4.4.5 4.5.3 4.6.3 4.7.4 4.8.5 4.9.3 5.0.3 5.1.4 trunk 10.0 10.0.1 10.0.2 10.1 10.1.1 10.1.2 10.2 10.2.1 10.2.2 10.2.3 10.3 10.3.1 10.3.2 10.4 10.4.1 10.4.2 10.5 10.5.1 10.5.2 10.5.3 10.6 10.6.1 10.6.2 10.7 10.7.1 10.7.2 10.8 10.8.1 10.8.2 10.9 10.9.1 10.9.2 10.9.3 11.0 11.0.1 11.0.2 11.1 11.1.1 11.1.2 11.1.3 11.1.4 11.2 11.2.1 11.2.2 11.3 11.3.1 11.3.2 11.3.3 11.3.4 11.4 11.4.1 11.4.2 11.5 11.5.1 11.5.2 11.5.3 11.6 11.6.1 11.6.2 11.7 11.7.1 11.7.2 11.7.3 11.8 11.8.3 11.8.4 11.8.5 11.8.6 11.9 11.9.1 11.9.2 11.9.3 12.0 12.0.1 12.0.2 12.1 12.1.1 12.1.2 12.2 12.2.1 12.2.2 12.3 12.3.1 12.4 12.4.1 12.5 12.5.1 12.6 12.6.1 12.6.2 12.6.3 12.7 12.7.1 12.7.2 12.8 12.8.1 12.8.2 12.9 12.9.1 12.9.2 12.9.3 12.9.4 13.0 13.0.1 13.1 13.1.1 13.1.2 13.1.3 13.1.4 13.2 13.2.1 13.2.2 13.2.3 13.3 13.3.1 13.3.2 13.4 13.4.1 13.4.2 13.4.3 13.4.4 13.5 13.5.1 13.6 13.6.1 13.7 13.7.1 13.8 13.8.1 13.8.2 13.9 13.9.1 14.0 14.1 14.2 14.2.1 14.3 14.4 14.4.1 14.5 14.6 14.7 14.8 14.9 14.9.1 15.0 15.0.1 15.0.2 15.1 15.1.1 15.2 15.3 15.3.1 15.4 15.5 15.6 15.7 15.7-a.1 15.7-a.3 15.7-a.5 15.7-a.7 15.7-beta
jetpack / jetpack_vendor / automattic / jetpack-publicize / src / class-publicize-assets.php
jetpack / jetpack_vendor / automattic / jetpack-publicize / src Last commit date
jetpack-social-settings 3 months ago rest-api 2 weeks ago social-image-generator 3 weeks ago class-connections.php 3 weeks ago class-focal-point.php 2 months ago class-keyring-helper.php 2 months ago class-keyring-result-handler.php 2 months ago class-message-templates-placeholders.php 3 months ago class-publicize-assets.php 2 weeks ago class-publicize-base.php 1 month ago class-publicize-script-data.php 1 month ago class-publicize-setup.php 1 month ago class-publicize-ui.php 1 month ago class-publicize-utils.php 1 month ago class-publicize.php 2 months ago class-services.php 3 weeks ago class-share-status.php 9 months ago class-social-admin-page.php 3 weeks ago
class-publicize-assets.php
105 lines
1 <?php
2 /**
3 * Publicize_Assets.
4 *
5 * @package automattic/jetpack-publicize
6 */
7
8 namespace Automattic\Jetpack\Publicize;
9
10 use Automattic\Jetpack\Assets;
11 use Automattic\Jetpack\WP_Build_Polyfills\WP_Build_Polyfills;
12
13 /**
14 * Publicize_Assets class.
15 */
16 class Publicize_Assets {
17
18 /**
19 * Initialize the class.
20 */
21 public static function configure() {
22 Publicize_Script_Data::configure();
23
24 add_action( 'enqueue_block_editor_assets', array( __CLASS__, 'enqueue_block_editor_scripts' ), 15 );
25 }
26
27 /**
28 * Whether to enqueue the block editor scripts.
29 *
30 * @return boolean True if the criteria are met.
31 */
32 public static function should_enqueue_block_editor_scripts() {
33
34 $post_type = get_post_type();
35
36 if ( empty( $post_type ) || ! post_type_supports( $post_type, 'publicize' ) ) {
37 return false;
38 }
39
40 /** This filter is documented in projects/packages/publicize/src/class-publicize-base.php */
41 $capability = apply_filters( 'jetpack_publicize_capability', 'publish_posts' );
42
43 return current_user_can( $capability );
44 }
45
46 /**
47 * Enqueue block editor scripts and styles.
48 */
49 public static function enqueue_block_editor_scripts() {
50 if ( ! self::should_enqueue_block_editor_scripts() ) {
51 return;
52 }
53
54 // We don't want to render the Social UI in Jetpack sidebar
55 // if Jetpack is old, which has it bundled.
56 if ( defined( 'JETPACK__VERSION' ) && ( version_compare( (string) JETPACK__VERSION, '14.5-a.1', '<' ) ) ) {
57 return;
58 }
59
60 $script_to_load = class_exists( 'Jetpack' ) ? 'block-editor-jetpack' : 'block-editor-social';
61
62 self::register_wp_build_polyfills();
63
64 // Dequeue the old Social assets.
65 wp_dequeue_script( 'jetpack-social-editor' );
66 wp_dequeue_style( 'jetpack-social-editor' );
67
68 Assets::register_script(
69 'jetpack-social-editor',
70 sprintf( '../build/%s.js', $script_to_load ),
71 __FILE__,
72 array(
73 'in_footer' => true,
74 'textdomain' => 'jetpack-publicize-pkg',
75 'enqueue' => true,
76 )
77 );
78 }
79
80 /**
81 * Register polyfills for the wp-theme / wp-private-apis / wp-rich-text handles the
82 * Social bundles depend on but WP < 7.0 does not ship (or ships with an incomplete
83 * allowlist).
84 *
85 * `wp-rich-text` is needed because the editor bundles reach `@wordpress/dataviews`
86 * (via `@wordpress/ui`), whose dataform controls unlock rich-text's `privateApis` at
87 * module scope. WP 6.9 exports none, so without the polyfill the bundle throws
88 * "Cannot unlock an undefined object" before the sidebar renders.
89 *
90 * Only the handles Social actually uses are requested, to keep the polyfill's
91 * force-replacement off any handle we don't need — `wp-notices` in particular, which
92 * Core registers adequately for these bundles.
93 */
94 public static function register_wp_build_polyfills() {
95 if ( ! class_exists( WP_Build_Polyfills::class ) ) {
96 return;
97 }
98
99 WP_Build_Polyfills::register(
100 'jetpack-social',
101 array( 'wp-theme', 'wp-private-apis', 'wp-rich-text' )
102 );
103 }
104 }
105