# booktics/1.0.3/trunk/core/assets/admin-assets.php

Booktics – Appointment Booking Calendar for Service Businesses, version 1.0.3. 90 lines.

- Page: https://pluginprobe.com/plugins/booktics/1.0.3/code/trunk/core/assets/admin-assets.php
- Raw: https://pluginprobe.com/plugins/booktics/1.0.3/raw/trunk/core/assets/admin-assets.php
- Modified: 2025-07-10T04:07:52+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/booktics/1.0.3/code/trunk/core/assets/admin-assets.php#L10-L20`.

```php
<?php

namespace Booktics\Assets;

/**
 * Manage all admin scripts and styles
 */
class Admin_Assets extends Base_Assets {
    /**
     * Register single service
     *
     * @return  void
     */
    public function register() {
        add_action( 'admin_enqueue_scripts', [
            $this,
            'register_styles_scripts'
        ] );
        add_action( 'admin_enqueue_scripts', [ $this, 'enqueue' ] );
    }

    /**
     * Enqueue scripts and styles
     *
     * @return  void
     */
    public function enqueue() {
        wp_enqueue_style( 'wp-color-picker' );
        wp_enqueue_style( 'booktics-admin-style' );
        wp_enqueue_style( 'booktics-vendor' );

        wp_enqueue_media();
        wp_enqueue_script( 'booktics-flatpickr-scripts' );
        wp_enqueue_script( 'booktics-packages' );
        wp_enqueue_script( 'booktics-dashboard-scripts' );

        wp_localize_script( 'booktics-packages', 'booktics', Localize::get_admin() );
        wp_localize_script( 'booktics-packages', 'booktics_enabled_modules', booktics_get_enabled_modules() );
    }

    /**
     * Get all scripts
     *
     * @return  array List register scripts
     */
    public function get_scripts(): array {
        $scripts = [
            'booktics-dashboard-scripts' => [
                'src'       => booktics()->assets_url . '/build/js/dashboard.js',
                'deps'      => [ 'booktics-packages' ],
                'in_footer' => true,
            ],
            'booktics-flatpickr-scripts' => [
                'src'       => booktics()->assets_url . '/js/vendors/flatpickr.js',
                'deps'      => [],
                'in_footer' => true,
            ],
            'booktics-packages'          => [
                'src'       => booktics()->assets_url . '/build/js/packages.js',
                'deps'      => [
                    'wp-api-fetch',
                    'wp-components',
                    'wp-compose',
                    'wp-i18n'
                ],
                'in_footer' => true,
            ],
        ];

        return apply_filters( 'booktics_admin_assets', $scripts );
    }

    /**
     * List of register styles
     *
     * @return  array
     */
    public function get_styles(): array {
        $styles = [
            'booktics-admin-style' => [
                'src' => booktics()->assets_url . '/build/css/admin.css',
            ],
            'booktics-vendor'      => [
                'src' => booktics()->assets_url . '/build/css/vendor.css',
            ],
        ];

        return apply_filters( 'booktics_admin_styles', $styles );
    }
}
```
