import 'dart:async';
import 'dart:convert';

import 'package:flutter/services.dart';

class GetImagesList {
  GetImagesList();

  List<String> _availableImages = [];

  init() async {
    await imagesFromLocalFile();
  }

  Future<void> imagesFromLocalFile() async {
    String jsonString;
    try {
      jsonString = await rootBundle.loadString('assets/files/images.json');
      final jsonResponse = await json.decode(jsonString);

      List imagesList = jsonResponse['images'] as List;

      for (var image in imagesList) {
        _availableImages.add(image.toString());
      }
    } catch (e) {
      _availableImages = [];
    }

    // Remove empty images
    _availableImages.removeWhere((value) => (value == ''));
  }

  List<String> get availableImages => _availableImages;
}