From 4a7ddf7d29c22d5f6351eb44186bc27e2df605ea Mon Sep 17 00:00:00 2001 From: Roman Axelrod Date: Tue, 21 May 2024 03:01:46 -0600 Subject: [PATCH] Updated the bundle of WordPress block. --- build.js | 9 --- package.json | 6 +- .../templates/Template_Basic_Component.php | 40 ++++++++---- .../templates/Template_Component.php | 62 ------------------ .../templates/helpers/Template_API.php | 14 ---- .../templates/helpers/Template_Defaults.php | 17 ----- platforms/wordpress/wordpress-adapter.js | 65 ++++--------------- 7 files changed, 43 insertions(+), 170 deletions(-) delete mode 100644 platforms/wordpress/templates/Template_Component.php delete mode 100644 platforms/wordpress/templates/helpers/Template_API.php delete mode 100644 platforms/wordpress/templates/helpers/Template_Defaults.php diff --git a/build.js b/build.js index deb037d..230497e 100755 --- a/build.js +++ b/build.js @@ -9,17 +9,8 @@ const {isDev, developmentBlockName} = getConfigs(); const blockName = !isDev && config.has('blockName') ? config.get('blockName') : developmentBlockName; export const PLATFORM_OPTIONS = [{ - name: 'wordpress-acf-block', - title: 'WordPress AFC Block' -}, { name: 'wordpress', title: 'WordPress' -}, { - name: 'wordpress-component-manager', - title: 'WordPress (Component Manager)' -}, { - name: 'wordpress-elementor', - title: 'WordPress Elementor' }, { name: 'hubspot', title: 'Hubspot' diff --git a/package.json b/package.json index a689fce..5141d71 100644 --- a/package.json +++ b/package.json @@ -7,9 +7,9 @@ "url": "https://axe-web.com/" }, "scripts": { - "info": "BLOCK_NAME=swiper-test MODULE_PATH= node debug.js", - "dev": "BLOCK_NAME=swiper-test MODULE_PATH= node server.js", - "build-platform": "BLOCK_NAME=swiper-test MODULE_PATH= node ./build.js", + "info": "BLOCK_NAME=icon-text-columns MODULE_PATH= node debug.js", + "dev": "BLOCK_NAME=icon-text-columns MODULE_PATH= node server.js", + "build-platform": "BLOCK_NAME=icon-text-columns MODULE_PATH= node ./build.js", "dev-dev-tool": "rollup --config rollup.config.js --watch", "build-dev-tool": "rollup --config rollup.config.js" }, diff --git a/platforms/wordpress/templates/Template_Basic_Component.php b/platforms/wordpress/templates/Template_Basic_Component.php index d8219d4..100724d 100644 --- a/platforms/wordpress/templates/Template_Basic_Component.php +++ b/platforms/wordpress/templates/Template_Basic_Component.php @@ -2,19 +2,13 @@ namespace AXEWEB_Blocks\Blocks\<%= ownerClass %>\<%= blockClassModel %>; -class <%= blockClassModel %>_Component <% if (isComponentManager || isElementor) { %>extends \Core\Component <% } %>{ +class <%= blockClassModel %>_Component extends \Core\Component { const VERSION = '<%= version %>'; public $block_project = '<%= ownerFilename %>'; public $block_name = '<%= blockFilename %>'; public $hook_prefix = 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>'; - <% if (!isComponentManager && !isElementor) { %>public function __construct() { - parent::__construct(); - // add_action( 'wp_enqueue_scripts', [ $this, 'register_assets' ] ); - add_action( 'after_setup_theme', [ $this, 'register_assets' ] ); - } - - <% } %>function register_assets(): void { + function register_assets(): void { $base_path = plugin_dir_url( __FILE__ ); // In Plugins // $base_path = get_template_directory_uri() . '/components/partials/<%= blockFilename %>/'; // In Theme @@ -22,12 +16,14 @@ class <%= blockClassModel %>_Component <% if (isComponentManager || isElementor) wp_register_style( 'block-<%= blockFilename %>', $base_path . 'templates/styles/<%= blockFilename %>.min.css', $style_deps, self::VERSION ); $script_deps = apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::script_deps', [ 'assets-script' ] ); - wp_register_script( 'block-<%= blockFilename %>', $base_path . 'templates/scripts/<%= blockFilename %>.min.js', $script_deps, self::VERSION, true );<% if (!isElementor) { %> + wp_register_script( 'block-<%= blockFilename %>', $base_path . 'templates/scripts/<%= blockFilename %>.min.js', $script_deps, self::VERSION, true ); + } + public function prepare_for_print() { if ( ! is_admin() ) { wp_enqueue_style( 'block-<%= blockFilename %>' ); wp_enqueue_script( 'block-<%= blockFilename %>' ); - }<% } %> + } } public function get_content( $args = [] ): string { @@ -38,7 +34,7 @@ class <%= blockClassModel %>_Component <% if (isComponentManager || isElementor) $output = ( include( __DIR__ . '/templates/<%= blockFilename %>.template.php' ) )( $args, self::class ); return apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::content', $output ); - }<% if (isElementor) { %> + } function register_custom_logic(): void { add_action( 'elementor/widgets/widgets_registered', [ $this, 'register_elementor_widget' ] ); @@ -47,9 +43,25 @@ class <%= blockClassModel %>_Component <% if (isComponentManager || isElementor) function register_elementor_widget( $widgets_manager ): void { require_once "helpers/<%= blockClassModel %>_Elementor_Widget.php"; $widgets_manager->register_widget_type( new Helpers\<%= blockClassModel %>_Elementor_Widget() ); - }<% } %> + } + function register_acf_block() { + $this->register_block( __DIR__ . "/<%= blockFilename %>.block.json", [ + 'style_assets' => [ + [ + 'name' => 'block-<%= blockFilename %>', + 'url' => null + ] + ], + 'script_assets' => [ + [ + 'name' => 'block-<%= blockFilename %>', + 'url' => null + ] + ] + ] ); + } } -<% if (isComponentManager) { %><%= blockClassModel %>_Component::get_instance();<% } else { - %>new <%= blockClassModel %>_Component();<% } %> +<%= blockClassModel %>_Component::get_instance(); +// new <%= blockClassModel %>_Component(); diff --git a/platforms/wordpress/templates/Template_Component.php b/platforms/wordpress/templates/Template_Component.php deleted file mode 100644 index 675593d..0000000 --- a/platforms/wordpress/templates/Template_Component.php +++ /dev/null @@ -1,62 +0,0 @@ -\<%= blockClassModel %>; - -class <%= blockClassModel %>_Component extends \Core\Component { - const VERSION = '<%= version %>'; - public $block_project = '<%= ownerFilename %>'; - public $block_name = '<%= blockFilename %>'; - public $hook_prefix = 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>'; - - public function get_content( $args = [] ): string { - $default_args = apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::default_args', [] ); // Not really practical. - - $args = apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::prepare_args', array_merge( $default_args, $args ) ); - - $output = ( include( __DIR__ . '/templates/<%= blockFilename %>.template.php' ) )( $args, self::class ); - - return apply_filters( 'axeweb_blocks/<%= ownerFilename %>/<%= blockFilename %>::content', $output ); - } - <% if (!include_acf_block && !include_native_gutenberg_block) { %>function register_assets(): void { - $version = get_plugin_data( __DIR__ . "/../../scytale-custom-blocks.php" )['Version']; // In Plugins - // $version = \Core\Global_Functions::get_current_version_number(); // In Theme - - // $base_path = get_template_directory_uri() . '/components/partials/<%= blockFilename %>/'; - wp_enqueue_style( 'block-<%= blockFilename %>', $this->get_assets_path_url( 'templates/styles/<%= blockFilename %>.min.css' ), ['assets-style'], self::VERSION );<% if (include_script) { %> - wp_enqueue_script( 'block-<%= blockFilename %>', $this->get_assets_path_url( 'templates/scripts/<%= blockFilename %>.min.js' ), ['assets-script'], self::VERSION, true );<% } %> - - wp_enqueue_script( 'script-block-<%= blockFilename %>' ); - }<% } %> - <% if (include_acf_block) { %> function register_acf_block() { - $this->register_block( __DIR__ . "/<%= blockFilename %>.block.json", [ - 'style_assets' => [ - [ - 'name' => '<%= blockFilename %>', - 'url' => $this->get_assets_path_url( 'templates/styles/<%= blockFilename %>.min.css' ), - ] - ], - 'script_assets' => [ - [ - 'name' => '<%= blockFilename %>', - 'url' => $this->get_assets_path_url( 'templates/scripts/<%= blockFilename %>.min.js' ), - ] - ] - ] ); - } -<% } %><% if (include_native_gutenberg_block) { %> function register_native_gutenberg_block() { - register_block_type( __DIR__ . '/templates/gutenberg-block/block.json' );<% if (include_script) { %> - - add_action( 'wp_enqueue_scripts', function () { - $asset_file_front = include( plugin_dir_path( __FILE__ ) . '/templates/gutenberg-block/build/front.asset.php' ); - wp_enqueue_script( - 'gutenberg-<%= blockFilename %>-scripts-front', - $this->get_assets_path_url( 'templates/gutenberg-block/build/front.js' ), - $asset_file_front['dependencies'], - $asset_file_front['version'], - true - ); - } );<% } %> - }<% } %> -} - -<%= blockClassModel %>_Component::get_instance(); diff --git a/platforms/wordpress/templates/helpers/Template_API.php b/platforms/wordpress/templates/helpers/Template_API.php deleted file mode 100644 index fe1ba75..0000000 --- a/platforms/wordpress/templates/helpers/Template_API.php +++ /dev/null @@ -1,14 +0,0 @@ -\<%= blockClassModel %>\Helpers; - -class <%= blockClassModel %>_API { - - static function prepare_args( $args = [] ) { - -// $args = array_merge( [], $args ); - - return $args; - } - -} diff --git a/platforms/wordpress/templates/helpers/Template_Defaults.php b/platforms/wordpress/templates/helpers/Template_Defaults.php deleted file mode 100644 index 159f2d0..0000000 --- a/platforms/wordpress/templates/helpers/Template_Defaults.php +++ /dev/null @@ -1,17 +0,0 @@ -\<%= blockClassModel %>\Helpers; - -/** - * Component's default args. - */ - -class <%= blockClassModel %>_Defaults { - public static function default_args(): array { - $args = <%- defaultData %>; - - // $args['base_url'] = \Core\Global_Functions::get_file_url( __DIR__ . '/../templates/' ); - - return $args; - } -} diff --git a/platforms/wordpress/wordpress-adapter.js b/platforms/wordpress/wordpress-adapter.js index 657c7f5..4c8c671 100644 --- a/platforms/wordpress/wordpress-adapter.js +++ b/platforms/wordpress/wordpress-adapter.js @@ -10,10 +10,6 @@ const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); export async function buildWordPress(blockName, args = {}) { - const isBlock = args.platform === 'wordpress-acf-block'; - const isElementor = args.platform === 'wordpress-elementor'; - const isComponentManager = args.platform === 'wordpress-component-manager' - const {modulesPath, projectPath} = getConfigs(); const distPath = path.join(projectPath, 'exports', args.platform); @@ -37,12 +33,7 @@ export async function buildWordPress(blockName, args = {}) { ownerClass: owner.replace(/ /ig, '_'), ownerFilename: owner.toLowerCase().replace(/ /ig, '-'), templateFormat: 'php', - include_acf_block: isBlock, - include_native_gutenberg_block: false, include_script: true, - include_elementor_widget: isElementor, - isElementor, - isComponentManager, }); await copyFile(blockFilePath, path.join(distPath, data.blockFilename + '.block.json')); @@ -84,49 +75,21 @@ export async function buildWordPress(blockName, args = {}) { json: await readJSONFile(path.join(projectPath, 'data', 'default.json'), "utf8"), }); - // await createFiles(Object.assign({}, data, {defaultData: phpDataObject}), [{ - // from: `templates/helpers/Template_Defaults.php`, - // to: `helpers/${data.blockClassModel}_Defaults.php`, - // }], { - // pathDist: distPath, - // generatorsPath: path.join(__dirname), - // }); - - if (isElementor) { - await createFiles(data, [{ - from: `templates/helpers/Template_Elementor_Widget.php`, - to: `helpers/${data.blockClassModel}_Elementor_Widget.php`, - }], { - pathDist: distPath, - generatorsPath: path.join(__dirname) - }); - } - - if (isBlock) { - await createFiles(data, [{ - from: `templates/Template_Component.php`, - to: `${data.blockClassModel}_Component.php`, - }], { - pathDist: distPath, - generatorsPath: path.join(__dirname) - }); + await createFiles(data, [{ + from: `templates/helpers/Template_Elementor_Widget.php`, + to: `helpers/${data.blockClassModel}_Elementor_Widget.php`, + }], { + pathDist: distPath, + generatorsPath: path.join(__dirname) + }); - // await createFiles(data, [{ - // from: `templates/helpers/Template_API.php`, - // to: `helpers/${data.blockClassModel}_API.php`, - // }], { - // pathDist: distPath, - // generatorsPath: path.join(__dirname) - // }); - } else { - await createFiles(data, [{ - from: `templates/Template_Basic_Component.php`, - to: `${data.blockClassModel}_Component.php`, - }], { - pathDist: distPath, - generatorsPath: path.join(__dirname) - }); - } + await createFiles(data, [{ + from: `templates/Template_Basic_Component.php`, + to: `${data.blockClassModel}_Component.php`, + }], { + pathDist: distPath, + generatorsPath: path.join(__dirname) + }); } export function execCommand(cmd = '') { -- 2.30.2