2.4.5 • Published 2 years ago

bravosix v2.4.5

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

BravoSix

BravoSix adalah pustaka JavaScript untuk mengganti tema warna elemen HTML dengan animasi efek "going dark" seperti night vision.

Instalasi

Anda dapat menginstal BravoSix melalui NPM:

npm install bravosix

Cara Penggunaan

Berikut adalah contoh penggunaan BravoSix dalam aplikasi React:

  1. Import BravoSix
import BravoSix from "bravosix";
  1. Buat instance BravoSix
const bravosix = new BravoSix();
  1. Gunakan metode applyColors(colorTheme)

Metode ini mengganti tema warna elemen tanpa animasi.

bravosix.applyColors(colorTheme);

colorTheme dapat berupa:

  • "original"
  • "dark"
  • "light"
  • "night-vision" terinspirasi dari night vision di game Call of Duty: Modern Warfare II (2022)

Contoh menggunakan applyColors dalam aplikasi React:

const handleButtonClick = () => {
  let newTheme;
  switch (colorTheme) {
    case "original":
      newTheme = "dark";
      break;
    case "dark":
      newTheme = "light";
      break;
    case "light":
      newTheme = "original";
      break;
    default:
      newTheme = "original";
  }
  setColorTheme(newTheme);
  setIsNightVision(false);
  bravosix.applyColors(newTheme);
};
  1. Gunakan metode goingDark()

Metode ini memulai animasi efek "going dark" dan mengganti tema warna menjadi night vision.

bravosix.goingDark();

Contoh lengkap dengan applyColors dan goingDark:

import React, { useState, useEffect } from "react";
import "./App.css";
import BravoSix from "bravosix";

function App() {
  const [colorTheme, setColorTheme] = useState("original");
  const [isNightVision, setIsNightVision] = useState(false);
  const [bravosix, setBravosix] = useState(null);

  useEffect(() => {
    setBravosix(new BravoSix());
  }, []);

  const handleButtonClick = () => {
    let newTheme;
    switch (colorTheme) {
      case "original":
        newTheme = "dark";
        break;
      case "dark":
        newTheme = "light";
        break;
      case "light":
        newTheme = "original";
        break;
      default:
        newTheme = "original";
    }
    setColorTheme(newTheme);
    setIsNightVision(false);
    bravosix.applyColors(newTheme);
  };

  const handleGoingDarkClick = () => {
    if (isNightVision) {
      setColorTheme("original");
      setIsNightVision(false);
      bravosix.applyColors("original");
    } else {
      setIsNightVision(true);
      bravosix.goingDark();
    }
  };

  return (
    <div className="App">
      <header className="App-header">
        <h1>Klik tombol di bawah untuk mengganti tema warna:</h1>
        <button onClick={handleButtonClick}>Ganti Tema Warna</button>
        <button onClick={handleGoingDarkClick}>
          {isNightVision ? "Kembali ke Original" : "Going Dark"}
        </button>
      </header>
    </div>
  );
}

export default App;

certification: MIT

2.4.3

2 years ago

2.4.2

2 years ago

2.4.5

2 years ago

2.4.4

2 years ago

2.3.2

2 years ago

2.3.1

2 years ago

2.3.0

2 years ago

2.2.9

2 years ago

2.2.8

2 years ago

2.2.7

2 years ago

2.2.6

2 years ago

2.2.5

2 years ago

2.2.4

2 years ago

2.2.3

2 years ago

2.2.2

2 years ago

2.1.2

2 years ago

2.1.1

2 years ago

2.1.0

2 years ago

2.0.2

2 years ago

2.0.1

2 years ago

2.0.0

2 years ago

1.0.7

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago