PluginProbe
Tableberg – Simple Gutenberg Table Block / 1.1.3
Tableberg – Simple Gutenberg Table Block v1.1.3
1.1.5 1.1.4 1.1.3 1.1.2 1.1.1 1.1.0 1.0.5 1.0.4 1.0.3 1.0.2 1.0.1 trunk 0.0.2 0.2.1 0.3.2 0.3.3 0.4.1 0.5.0 0.5.1 0.5.2 0.5.3 0.5.4 0.5.5 0.5.6 0.5.7 All 42 releases
tableberg / includes / Assets.php

Assets.php in Tableberg – Simple Gutenberg Table Block 1.1.3, at includes/Assets.php

76 lines 2.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Tableberg;
4
5 use Tableberg\Patterns\RegisterPatterns;
6
7 class Assets {
8 /**
9 * The frontend view script gates pro features (sorting/search/pagination)
10 * on TABLEBERG_CFG.IS_PRO, so the config must exist on the frontend too.
11 */
12 public function register_frontend_assets() {
13 self::pass_data_to_js('tableberg-table-view-script');
14 }
15
16 public function register_blocks_assets() {
17 self::pass_data_to_js('tableberg-table-editor-script');
18
19 $tableberg_patterns = RegisterPatterns::get_all_registered_tableberg_patterns();
20 $tableberg_pattern_categories = RegisterPatterns::get_all_registered_tableberg_pattern_categories();
21
22 wp_localize_script('tableberg-table-editor-script', 'tablebergPatterns', $tableberg_patterns);
23 wp_localize_script('tableberg-table-editor-script', 'tablebergPatternCategories', $tableberg_pattern_categories);
24
25 }
26
27 public function register_admin_assets() {
28 wp_enqueue_script(
29 'tableberg-admin-script',
30 TABLEBERG_URL . 'includes/Admin/assets/tableberg-admin.build.js',
31 [
32 'lodash',
33 'react',
34 'wp-block-editor',
35 'wp-blocks',
36 'wp-components',
37 'wp-data',
38 'wp-element',
39 'wp-i18n',
40 'wp-primitives',
41 ],
42 TABLEBERG_VERSION,
43 true
44 );
45
46 self::pass_data_to_js('tableberg-admin-script');
47
48 $frontend_script_data = apply_filters('tableberg/filter/admin_settings_menu_data', []);
49 wp_localize_script('tableberg-admin-script', 'tablebergAdminMenuData', $frontend_script_data);
50 wp_enqueue_style(
51 'tableberg-admin-style',
52 TABLEBERG_URL . 'includes/Admin/assets/tableberg-admin-style.css',
53 [],
54 TABLEBERG_VERSION,
55 'all'
56 );
57 }
58
59
60 private static function pass_data_to_js(string $handle) {
61 $data = [
62 'plugin_url' => TABLEBERG_URL,
63 ];
64 $has_pro_addon = defined('TABLEBERG_PRO_VERSION');
65 global $tp_fs;
66 if (isset($tp_fs)) {
67 $data['IS_PRO'] = $has_pro_addon
68 || ($tp_fs->is__premium_only()
69 && $tp_fs->can_use_premium_code());
70 } else {
71 $data['IS_PRO'] = $has_pro_addon;
72 }
73 wp_localize_script($handle, 'TABLEBERG_CFG', $data);
74 }
75 }
76