Enqueue * Frontend scripts & styles * */ if ( ! defined( 'ABSPATH' ) ) exit; add_action( 'init', function (): void { // Base style $resolved_style = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'style.css' ); wp_register_style( 'tbkkt-style', $resolved_style['url'], array(), $resolved_style['version'] ); // Extension: Responsive spacing if ( tbkkt_settings_feature_is_enabled( 'responsive_spacing' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'responsive-spacing.css' ); wp_register_style( 'tbkkt-responsive-spacing', $resolved['url'], array(), $resolved['version'] ); endif; // Extension: Responsive font size if ( tbkkt_settings_feature_is_enabled( 'responsive_font_size' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'responsive-font-size.css' ); wp_register_style( 'tbkkt-responsive-font-size', $resolved['url'], array(), $resolved['version'] ); endif; // Extension: Scroll animation if ( tbkkt_settings_feature_is_enabled( 'scroll_animation' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'scroll-animation.css' ); wp_register_style( 'tbkkt-scroll-animation', $resolved['url'], array(), $resolved['version'] ); endif; // Extension: Position if ( tbkkt_settings_feature_is_enabled( 'position' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'position.css' ); wp_register_style( 'tbkkt-position', $resolved['url'], array(), $resolved['version'] ); endif; // Extension: Responsive visibility if ( tbkkt_settings_feature_is_enabled( 'responsive_visibility' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'responsive-visibility.css' ); wp_register_style( 'tbkkt-responsive-visibility', $resolved['url'], array(), $resolved['version'] ); endif; // Extension: Floating overlays if ( tbkkt_settings_feature_is_enabled( 'floating_overlays' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'overlays.css' ); wp_register_style( 'tbkkt-overlays', $resolved['url'], array(), $resolved['version'] ); endif; // Block: Container if ( tbkkt_settings_is_block_enabled( 'tbkkt/container' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'container/style.css' ); wp_register_style( 'tbkkt-container-style', $resolved['url'], array( 'tbkkt-style' ), $resolved['version'] ); endif; // Block: Icon if ( tbkkt_settings_is_block_enabled( 'tbkkt/icon' ) ) : $resolved = tbkkt_responsive_breakpoints_css_get_resolved_style_registration( 'icon/style.css' ); wp_register_style( 'tbkkt-icon-style', $resolved['url'], array( 'tbkkt-style' ), $resolved['version'] ); endif; }, 5 ); add_action( 'wp_enqueue_scripts', function (): void { // Base style wp_enqueue_style( 'tbkkt-style' ); // Extension styles if ( wp_style_is( 'tbkkt-responsive-spacing', 'registered' ) ) : wp_enqueue_style( 'tbkkt-responsive-spacing' ); endif; if ( wp_style_is( 'tbkkt-responsive-font-size', 'registered' ) ) : wp_enqueue_style( 'tbkkt-responsive-font-size' ); endif; if ( wp_style_is( 'tbkkt-scroll-animation', 'registered' ) ) : wp_enqueue_style( 'tbkkt-scroll-animation' ); endif; if ( wp_style_is( 'tbkkt-position', 'registered' ) ) : wp_enqueue_style( 'tbkkt-position' ); endif; if ( wp_style_is( 'tbkkt-responsive-visibility', 'registered' ) ) : wp_enqueue_style( 'tbkkt-responsive-visibility' ); endif; if ( wp_style_is( 'tbkkt-overlays', 'registered' ) ) : if ( function_exists( 'tbkkt_overlay_detection_has_overlays_in_use' ) && tbkkt_overlay_detection_has_overlays_in_use() ) : wp_enqueue_style( 'tbkkt-overlays' ); endif; endif; // Block styles (ideally only if block appears in content; loading when enabled for now) if ( wp_style_is( 'tbkkt-container-style', 'registered' ) ) : wp_enqueue_style( 'tbkkt-container-style' ); endif; if ( wp_style_is( 'tbkkt-icon-style', 'registered' ) ) : wp_enqueue_style( 'tbkkt-icon-style' ); endif; // JS: Scroll animation if ( tbkkt_settings_feature_is_enabled( 'scroll_animation' ) ) : $animation_engine_js = 'assets/js/animation-engine.js'; $animation_scroll_js = 'assets/js/animation-scroll.js'; wp_enqueue_script( 'tbkkt-animation-engine', TBKKT_PLUGIN_URL . $animation_engine_js, array(), tbkkt_plugin_get_asset_file_mtime( $animation_engine_js ), true ); wp_enqueue_script( 'tbkkt-animation-scroll', TBKKT_PLUGIN_URL . $animation_scroll_js, array( 'tbkkt-animation-engine' ), tbkkt_plugin_get_asset_file_mtime( $animation_scroll_js ), true ); endif; // JS: Overlay animation if ( tbkkt_settings_feature_is_enabled( 'floating_overlays' ) ) : if ( function_exists( 'tbkkt_overlay_detection_has_overlays_in_use' ) && tbkkt_overlay_detection_has_overlays_in_use() ) : $animation_overlay_js = 'assets/js/animation-overlay.js'; if ( ! wp_script_is( 'tbkkt-animation-engine', 'enqueued' ) ) : $animation_engine_js = 'assets/js/animation-engine.js'; wp_enqueue_script( 'tbkkt-animation-engine', TBKKT_PLUGIN_URL . $animation_engine_js, array(), tbkkt_plugin_get_asset_file_mtime( $animation_engine_js ), true ); endif; wp_enqueue_script( 'tbkkt-animation-overlay', TBKKT_PLUGIN_URL . $animation_overlay_js, array( 'tbkkt-animation-engine' ), tbkkt_plugin_get_asset_file_mtime( $animation_overlay_js ), true ); endif; endif; }, 10 );