bootstrap_storybook-8.x-2.0/src/kits/default/includes/theme.inc

src/kits/default/includes/theme.inc
<?php

/**
 * @file
 * Custom theme hooks.
 */

/**
 * Implements hook_library_info_build().
 * Automatically creates components libraries (Not visible in theme's libraries.yml file)
 * You can directly use the component name as a library, f.x
 *  {{ attach_library('BOOTSTRAP_STORYBOOK_SUBTHEME_MACHINE_NAME/block') }}.
 */
function BOOTSTRAP_STORYBOOK_SUBTHEME_MACHINE_NAME_library_info_build() {
  $extensions = ['css', 'js'];
  $directory = 'themes/custom/BOOTSTRAP_STORYBOOK_SUBTHEME_MACHINE_NAME/assets/components';
  $extensions = array_map('preg_quote', $extensions);
  $extensions = implode('|', $extensions);
  if (!is_dir($directory)) {
    return [];
  }
  $file_scan = \Drupal::service('file_system')->scanDirectory($directory, "/{$extensions}$/");
  $libraries = [];
  foreach ($file_scan as $file) {
    $parts = explode('.', $file->filename);
    $extension = end($parts);
    switch ($extension) {
      case 'css':
        $libraries[$file->name][$extension] = [
          'component' => [
            '/' . $file->uri => [],
          ],
        ];
        break;

      case 'js':
        $libraries[$file->name][$extension] = [
          '/' . $file->uri => [],
        ];
        break;
    }
  }
  return $libraries;
}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc