Перейти к содержанию

Класс: AssetsCheckerService

Краткое содержание:

Сканирует публичные ассеты, сравнивает с удалённым манифестом и загружает недостающие файлы.


Свойства

Нет публичных свойств.


Методы


Подробности

  • Путь: devcraft/src/classes/Support/AssetsCheckerService.php

Детали

Методы

__construct()

Принимает $manifestPath: Путь к assets.json или null для Paths::config()..

С версии: 173.3.0

Параметры: - $manifestPath — Путь к assets.json или null для Paths::config().

scan()

Сканирует локальные файлы по ключам удалённого манифеста и записывает локальный MD5-манифест.

С версии: 173.3.0

Возвращает: array<string, array<string, mixed>> — Манифест file => metadata.

compare()

Сравнивает локальный манифест с удалённым по hash.

С версии: 173.3.0

Параметры: - $remoteUrl — URL удалённого assets.json.

Возвращает: array{missing: string[], outdated: string[], ok: string[]} — Списки путей.

compareReport()

Формирует расширенный отчёт сравнения с метаданными файлов.

С версии: 173.3.0

Параметры: - $remoteUrl — URL удалённого assets.json.

Возвращает: array{

downloadAll()

Загружает все файлы из удалённого манифеста.

С версии: 173.3.0

Параметры: - $remoteUrl — URL удалённого assets.json.

Возвращает: int — Число успешно загруженных файлов.

downloadMissing()

Загружает только missing и outdated файлы из diff.

С версии: 173.3.0

Возвращает: int — Число успешно загруженных файлов.

run()

Выполняет полный цикл: scan → compare → downloadMissing.

С версии: 173.3.0

Возвращает: array<string, — mixed> Ключи scan, compare, downloaded.

fileMetadata()

Формирует метаданные одного файла для манифеста.

С версии: 173.3.0

Параметры: - $absolutePath — Абсолютный путь к файлу на диске.

Возвращает: array{path: string, file: string, link: string, hash: string, alt: string, alt_name: string, required: bool} — |null Метаданные или null.

deployAbsolutePath()

Возвращает абсолютный путь развёртывания из поля file манифеста (от ROOT_DIR).

С версии: 200.4.0

normalizeManifestFiles()

Извлекает секцию files из манифеста или фильтрует плоский массив.

С версии: 173.3.0

Возвращает: array<string, array<string, mixed>> — Карта path => metadata.

writeManifest()

Записывает локальный JSON-манифест на диск.

С версии: 173.3.0

readManifest()

Читает локальный JSON-манифест assets.json.

С версии: 173.3.0

Возвращает: array<string, — mixed> Декодированный манифест или пустой массив.

fetchRemoteManifest()

Загружает и декодирует удалённый JSON-манифест.

С версии: 173.3.0

Параметры: - $remoteUrl — URL assets.json.

Возвращает: array<string, — mixed>|null Манифест или null при ошибке.

downloadAssetFile()

Скачивает один файл ассета по link/alt из метаданных.

С версии: 173.3.0

Параметры: - $manifestKey — Ключ /assets/... .

Возвращает: bool — true при успешной записи файла.