ScssList.php 1019 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. <?php
  2. /**
  3. * @package Grav\Plugin\Admin
  4. *
  5. * @copyright Copyright (c) 2015 - 2023 Trilby Media, LLC. All rights reserved.
  6. * @license MIT License; see LICENSE file for details.
  7. */
  8. namespace Grav\Plugin\Admin;
  9. class ScssList
  10. {
  11. /** @var string[] */
  12. protected $list = [];
  13. /**
  14. * ScssList constructor.
  15. * @param string|null $item
  16. */
  17. public function __construct($item = null)
  18. {
  19. if ($item) {
  20. $this->add($item);
  21. }
  22. }
  23. /**
  24. * @return array
  25. */
  26. public function all(): array
  27. {
  28. return $this->list;
  29. }
  30. /**
  31. * @param string $item
  32. * @return void
  33. */
  34. public function add($item): void
  35. {
  36. if ($item) {
  37. $this->list[] = $item;
  38. }
  39. }
  40. /**
  41. * @param string $item
  42. * @return void
  43. */
  44. public function remove($item): void
  45. {
  46. $pos = array_search($item, $this->list, true);
  47. if ($pos) {
  48. unset($this->list[$pos]);
  49. }
  50. }
  51. }